AWS SDK

AWS SDK

rev. 3964b40d6806bc3f52bd311e2c791030c3325f2c

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 +9397,11624 @@
    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         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
         460  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
 1124    461   
@@ -1,12 +1,12 @@
 1125    462   
{
 1126    463   
    "credentials": {
 1127    464   
        "access_key_id": "AKIDEXAMPLE",
 1128    465   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1129    466   
    },
 1130    467   
    "expiration_in_seconds": 3600,
 1131    468   
    "normalize": true,
 1132    469   
    "region": "us-east-1",
 1133    470   
    "service": "service",
 1134    471   
    "sign_body": false,
 1135    472   
    "timestamp": "2015-08-30T12:36:00Z"
 1136         -
}
         473  +
}
              \
 No newline at end of file
 1137    474   
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
 1138    475   
similarity index 100%
 1139    476   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq
 1140    477   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
 1141    478   
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
 1142    479   
new file mode 100644
 1143    480   
index 0000000..7fc5d7a
 1144         -
-- /dev/null
         481  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
 1145    482   
@@ -0,0 +1 @@
         483  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
 1146    484   
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
 1147    485   
new file mode 100644
 1148    486   
index 0000000..36a1205
 1149         -
-- /dev/null
         487  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
 1150    488   
@@ -0,0 +1,8 @@
         489  +
GET / HTTP/1.1
         490  +
Host:example.amazonaws.com
         491  +
My-Header1:value2
         492  +
My-Header1:value2
         493  +
My-Header1:value1
         494  +
X-Amz-Date:20150830T123600Z
         495  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
         496  +
 1151    497   
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
 1152    498   
similarity index 100%
 1153    499   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
 1154    500   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
 1155    501   
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
 1156    502   
new file mode 100644
 1157    503   
index 0000000..f9f4190
 1158         -
-- /dev/null
         504  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
 1159    505   
@@ -0,0 +1,8 @@
         506  +
GET
         507  +
/
         508  +
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
         509  +
host:example.amazonaws.com
         510  +
my-header1:value2,value2,value1
         511  +
         512  +
host;my-header1
         513  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1160    514   
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
 1161    515   
new file mode 100644
 1162    516   
index 0000000..5d0d87f
 1163         -
-- /dev/null
         517  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
 1164    518   
@@ -0,0 +1 @@
         519  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
 1165    520   
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
 1166    521   
new file mode 100644
 1167    522   
index 0000000..c1dfcf4
 1168         -
-- /dev/null
         523  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
 1169    524   
@@ -0,0 +1,6 @@
         525  +
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
         526  +
Host:example.amazonaws.com
         527  +
My-Header1:value2
         528  +
My-Header1:value2
         529  +
My-Header1:value1
         530  +
 1170    531   
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
 1171    532   
similarity index 53%
 1172    533   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
 1173    534   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1174    535   
index 0a3350a..077c1bb 100644
 1175         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
         536  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1176    537   
@@ -1,4 +1,4 @@
 1177    538   
AWS4-HMAC-SHA256
 1178    539   
20150830T123600Z
 1179    540   
20150830/us-east-1/service/aws4_request
 1180         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
         541  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
 1181    542   
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
 1182    543   
similarity index 100%
 1183    544   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
 1184    545   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
 1185    546   
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
 1186    547   
similarity index 99%
 1187    548   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
 1188    549   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1189    550   
index 45771c7..0468d80 100644
 1190         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
         551  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1191    552   
@@ -1,12 +1,12 @@
 1192    553   
{
 1193    554   
    "credentials": {
 1194    555   
        "access_key_id": "AKIDEXAMPLE",
 1195    556   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1196    557   
    },
 1197    558   
    "expiration_in_seconds": 3600,
 1198    559   
    "normalize": true,
 1199    560   
    "region": "us-east-1",
 1200    561   
    "service": "service",
 1201    562   
    "sign_body": false,
 1202    563   
    "timestamp": "2015-08-30T12:36:00Z"
 1203         -
}
         564  +
}
              \
 No newline at end of file
 1204    565   
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
 1205    566   
similarity index 82%
 1206    567   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
 1207    568   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1208    569   
index 721a39f..8cb5476 100644
 1209         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
         570  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1210    571   
@@ -1,9 +1,9 @@
 1211    572   
GET
 1212    573   
/
 1213    574   
 1214    575   
host:example.amazonaws.com
 1215         -
my-header1:value1,value2,value3
         576  +
my-header1:value1 value2 value3
 1216    577   
x-amz-date:20150830T123600Z
 1217    578   
 1218    579   
host;my-header1;x-amz-date
 1219    580   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1220    581   
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
 1221    582   
new file mode 100644
 1222    583   
index 0000000..e6ff7a9
 1223         -
-- /dev/null
         584  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
 1224    585   
@@ -0,0 +1 @@
         586  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
 1225    587   
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
 1226    588   
new file mode 100644
 1227    589   
index 0000000..b5ef6a0
 1228         -
-- /dev/null
         590  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
 1229    591   
@@ -0,0 +1,8 @@
         592  +
GET / HTTP/1.1
         593  +
Host:example.amazonaws.com
         594  +
My-Header1:value1
         595  +
  value2
         596  +
     value3
         597  +
X-Amz-Date:20150830T123600Z
         598  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         599  +
 1230    600   
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
 1231    601   
similarity index 53%
 1232    602   
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
 1233    603   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1234    604   
index fd43a41..97c7430 100644
 1235         -
-- 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
         605  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1236    606   
@@ -1,4 +1,4 @@
 1237    607   
AWS4-HMAC-SHA256
 1238    608   
20150830T123600Z
 1239    609   
20150830/us-east-1/service/aws4_request
 1240         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         610  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
 1241    611   
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
 1242    612   
new file mode 100644
 1243    613   
index 0000000..aac46de
 1244         -
-- /dev/null
         614  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
 1245    615   
@@ -0,0 +1,8 @@
         616  +
GET
         617  +
/
         618  +
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
         619  +
host:example.amazonaws.com
         620  +
my-header1:value1 value2 value3
         621  +
         622  +
host;my-header1
         623  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1246    624   
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
 1247    625   
new file mode 100644
 1248    626   
index 0000000..205732d
 1249         -
-- /dev/null
         627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
 1250    628   
@@ -0,0 +1 @@
         629  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
 1251    630   
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
 1252    631   
new file mode 100644
 1253    632   
index 0000000..a891b87
 1254         -
-- /dev/null
         633  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
 1255    634   
@@ -0,0 +1,6 @@
         635  +
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
         636  +
Host:example.amazonaws.com
         637  +
My-Header1:value1
         638  +
  value2
         639  +
     value3
         640  +
 1256    641   
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
 1257    642   
similarity index 53%
 1258    643   
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
 1259    644   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1260    645   
index 90e66b8..ec3fe45 100644
 1261         -
-- 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
         646  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1262    647   
@@ -1,4 +1,4 @@
 1263    648   
AWS4-HMAC-SHA256
 1264    649   
20150830T123600Z
 1265    650   
20150830/us-east-1/service/aws4_request
 1266         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         651  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
 1267    652   
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
 1268    653   
similarity index 75%
 1269    654   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
 1270    655   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1271    656   
index 7caa6ac..b5026cd 100644
 1272         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         657  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1273    658   
@@ -1,6 +1,5 @@
 1274    659   
GET / HTTP/1.1
 1275    660   
Host:example.amazonaws.com
 1276    661   
My-Header1:value1
 1277    662   
  value2
 1278    663   
     value3
 1279         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1280    664   
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
 1281    665   
similarity index 99%
 1282    666   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
 1283    667   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1284    668   
index 45771c7..0468d80 100644
 1285         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
         669  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1286    670   
@@ -1,12 +1,12 @@
 1287    671   
{
 1288    672   
    "credentials": {
 1289    673   
        "access_key_id": "AKIDEXAMPLE",
 1290    674   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1291    675   
    },
 1292    676   
    "expiration_in_seconds": 3600,
 1293    677   
    "normalize": true,
 1294    678   
    "region": "us-east-1",
 1295    679   
    "service": "service",
 1296    680   
    "sign_body": false,
 1297    681   
    "timestamp": "2015-08-30T12:36:00Z"
 1298         -
}
         682  +
}
              \
 No newline at end of file
 1299    683   
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
 1300    684   
similarity index 100%
 1301    685   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
 1302    686   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1303    687   
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
 1304    688   
new file mode 100644
 1305    689   
index 0000000..8ef0494
 1306         -
-- /dev/null
         690  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1307    691   
@@ -0,0 +1 @@
         692  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
 1308    693   
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
 1309    694   
new file mode 100644
 1310    695   
index 0000000..b786dc9
 1311         -
-- /dev/null
         696  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1312    697   
@@ -0,0 +1,9 @@
         698  +
GET / HTTP/1.1
         699  +
Host:example.amazonaws.com
         700  +
My-Header1:value4
         701  +
My-Header1:value1
         702  +
My-Header1:value3
         703  +
My-Header1:value2
         704  +
X-Amz-Date:20150830T123600Z
         705  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         706  +
 1313    707   
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
 1314    708   
similarity index 100%
 1315    709   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
 1316    710   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1317    711   
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
 1318    712   
new file mode 100644
 1319    713   
index 0000000..a211cc5
 1320         -
-- /dev/null
         714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1321    715   
@@ -0,0 +1,8 @@
         716  +
GET
         717  +
/
         718  +
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
         719  +
host:example.amazonaws.com
         720  +
my-header1:value4,value1,value3,value2
         721  +
         722  +
host;my-header1
         723  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1322    724   
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
 1323    725   
new file mode 100644
 1324    726   
index 0000000..417b0fa
 1325         -
-- /dev/null
         727  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1326    728   
@@ -0,0 +1 @@
         729  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
 1327    730   
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
 1328    731   
new file mode 100644
 1329    732   
index 0000000..b615e5d
 1330         -
-- /dev/null
         733  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1331    734   
@@ -0,0 +1,7 @@
         735  +
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
         736  +
Host:example.amazonaws.com
         737  +
My-Header1:value4
         738  +
My-Header1:value1
         739  +
My-Header1:value3
         740  +
My-Header1:value2
         741  +
 1332    742   
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
 1333    743   
similarity index 53%
 1334    744   
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
 1335    745   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1336    746   
index f7e615e..dcaaa1b 100644
 1337         -
-- 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
         747  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1338    748   
@@ -1,4 +1,4 @@
 1339    749   
AWS4-HMAC-SHA256
 1340    750   
20150830T123600Z
 1341    751   
20150830/us-east-1/service/aws4_request
 1342         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         752  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
 1343    753   
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
 1344    754   
similarity index 100%
 1345    755   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
 1346    756   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1347    757   
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
 1348    758   
similarity index 99%
 1349    759   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
 1350    760   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1351    761   
index 45771c7..0468d80 100644
 1352         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
         762  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1353    763   
@@ -1,12 +1,12 @@
 1354    764   
{
 1355    765   
    "credentials": {
 1356    766   
        "access_key_id": "AKIDEXAMPLE",
 1357    767   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1358    768   
    },
 1359    769   
    "expiration_in_seconds": 3600,
 1360    770   
    "normalize": true,
 1361    771   
    "region": "us-east-1",
 1362    772   
    "service": "service",
 1363    773   
    "sign_body": false,
 1364    774   
    "timestamp": "2015-08-30T12:36:00Z"
 1365         -
}
         775  +
}
              \
 No newline at end of file
 1366    776   
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
 1367    777   
similarity index 100%
 1368    778   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
 1369    779   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1370    780   
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
 1371    781   
new file mode 100644
 1372    782   
index 0000000..36081a9
 1373         -
-- /dev/null
         783  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1374    784   
@@ -0,0 +1 @@
         785  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
 1375    786   
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
 1376    787   
new file mode 100644
 1377    788   
index 0000000..6331d16
 1378         -
-- /dev/null
         789  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1379    790   
@@ -0,0 +1,7 @@
         791  +
GET / HTTP/1.1
         792  +
Host:example.amazonaws.com
         793  +
My-Header1: value1
         794  +
My-Header2: "a   b   c"
         795  +
X-Amz-Date:20150830T123600Z
         796  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         797  +
 1380    798   
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
 1381    799   
similarity index 100%
 1382    800   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
 1383    801   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1384    802   
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
 1385    803   
new file mode 100644
 1386    804   
index 0000000..125c1f9
 1387         -
-- /dev/null
         805  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1388    806   
@@ -0,0 +1,9 @@
         807  +
GET
         808  +
/
         809  +
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
         810  +
host:example.amazonaws.com
         811  +
my-header1:value1
         812  +
my-header2:"a b c"
         813  +
         814  +
host;my-header1;my-header2
         815  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1389    816   
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
 1390    817   
new file mode 100644
 1391    818   
index 0000000..17007a8
 1392         -
-- /dev/null
         819  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1393    820   
@@ -0,0 +1 @@
         821  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
 1394    822   
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
 1395    823   
new file mode 100644
 1396    824   
index 0000000..e519fd9
 1397         -
-- /dev/null
         825  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1398    826   
@@ -0,0 +1,5 @@
         827  +
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
         828  +
Host:example.amazonaws.com
         829  +
My-Header1: value1
         830  +
My-Header2: "a   b   c"
         831  +
 1399    832   
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
 1400    833   
new file mode 100644
 1401    834   
index 0000000..6b4b781
 1402         -
-- /dev/null
         835  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1403    836   
@@ -0,0 +1,4 @@
         837  +
AWS4-HMAC-SHA256
         838  +
20150830T123600Z
         839  +
20150830/us-east-1/service/aws4_request
         840  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
 1404    841   
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
 1405    842   
similarity index 100%
 1406    843   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
 1407    844   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1408    845   
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
 1409    846   
new file mode 100644
 1410    847   
index 0000000..0468d80
 1411         -
-- /dev/null
         848  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1412    849   
@@ -0,0 +1,12 @@
         850  +
{
         851  +
    "credentials": {
         852  +
        "access_key_id": "AKIDEXAMPLE",
         853  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         854  +
    },
         855  +
    "expiration_in_seconds": 3600,
         856  +
    "normalize": true,
         857  +
    "region": "us-east-1",
         858  +
    "service": "service",
         859  +
    "sign_body": false,
         860  +
    "timestamp": "2015-08-30T12:36:00Z"
         861  +
}
              \
 No newline at end of file
 1413    862   
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
 1414    863   
similarity index 100%
 1415    864   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
 1416    865   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1417    866   
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
 1418    867   
new file mode 100644
 1419    868   
index 0000000..87f295f
 1420         -
-- /dev/null
         869  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1421    870   
@@ -0,0 +1 @@
         871  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1422    872   
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
 1423    873   
new file mode 100644
 1424    874   
index 0000000..0de8327
 1425         -
-- /dev/null
         875  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1426    876   
@@ -0,0 +1,5 @@
         877  +
GET /example/.. HTTP/1.1
         878  +
Host:example.amazonaws.com
         879  +
X-Amz-Date:20150830T123600Z
         880  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         881  +
 1427    882   
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
 1428    883   
similarity index 100%
 1429    884   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
 1430    885   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1431    886   
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
 1432    887   
new file mode 100644
 1433    888   
index 0000000..fb2420d
 1434         -
-- /dev/null
         889  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1435    890   
@@ -0,0 +1,7 @@
         891  +
GET
         892  +
/
         893  +
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
         894  +
host:example.amazonaws.com
         895  +
         896  +
host
         897  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1436    898   
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
 1437    899   
new file mode 100644
 1438    900   
index 0000000..da5c905
 1439         -
-- /dev/null
         901  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1440    902   
@@ -0,0 +1 @@
         903  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1441    904   
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
 1442    905   
new file mode 100644
 1443    906   
index 0000000..4329c98
 1444         -
-- /dev/null
         907  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1445    908   
@@ -0,0 +1,3 @@
         909  +
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
         910  +
Host:example.amazonaws.com
         911  +
 1446    912   
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
 1447    913   
new file mode 100644
 1448    914   
index 0000000..d837e67
 1449         -
-- /dev/null
         915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1450    916   
@@ -0,0 +1,4 @@
         917  +
AWS4-HMAC-SHA256
         918  +
20150830T123600Z
         919  +
20150830/us-east-1/service/aws4_request
         920  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1451    921   
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
 1452    922   
similarity index 100%
 1453    923   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
 1454    924   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1455    925   
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
 1456    926   
new file mode 100644
 1457    927   
index 0000000..0468d80
 1458         -
-- /dev/null
         928  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1459    929   
@@ -0,0 +1,12 @@
         930  +
{
         931  +
    "credentials": {
         932  +
        "access_key_id": "AKIDEXAMPLE",
         933  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         934  +
    },
         935  +
    "expiration_in_seconds": 3600,
         936  +
    "normalize": true,
         937  +
    "region": "us-east-1",
         938  +
    "service": "service",
         939  +
    "sign_body": false,
         940  +
    "timestamp": "2015-08-30T12:36:00Z"
         941  +
}
              \
 No newline at end of file
 1460    942   
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
 1461    943   
similarity index 100%
 1462    944   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
 1463    945   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1464    946   
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
 1465    947   
new file mode 100644
 1466    948   
index 0000000..87f295f
 1467         -
-- /dev/null
         949  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1468    950   
@@ -0,0 +1 @@
         951  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1469    952   
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
 1470    953   
new file mode 100644
 1471    954   
index 0000000..f9b3815
 1472         -
-- /dev/null
         955  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1473    956   
@@ -0,0 +1,5 @@
         957  +
GET /example1/example2/../.. HTTP/1.1
         958  +
Host:example.amazonaws.com
         959  +
X-Amz-Date:20150830T123600Z
         960  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         961  +
 1474    962   
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
 1475    963   
similarity index 100%
 1476    964   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
 1477    965   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1478    966   
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
 1479    967   
new file mode 100644
 1480    968   
index 0000000..fb2420d
 1481         -
-- /dev/null
         969  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1482    970   
@@ -0,0 +1,7 @@
         971  +
GET
         972  +
/
         973  +
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
         974  +
host:example.amazonaws.com
         975  +
         976  +
host
         977  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1483    978   
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
 1484    979   
new file mode 100644
 1485    980   
index 0000000..da5c905
 1486         -
-- /dev/null
         981  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1487    982   
@@ -0,0 +1 @@
         983  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1488    984   
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
 1489    985   
new file mode 100644
 1490    986   
index 0000000..b2988b7
 1491         -
-- /dev/null
         987  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1492    988   
@@ -0,0 +1,3 @@
         989  +
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
         990  +
Host:example.amazonaws.com
         991  +
 1493    992   
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
 1494    993   
new file mode 100644
 1495    994   
index 0000000..d837e67
 1496         -
-- /dev/null
         995  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1497    996   
@@ -0,0 +1,4 @@
         997  +
AWS4-HMAC-SHA256
         998  +
20150830T123600Z
         999  +
20150830/us-east-1/service/aws4_request
        1000  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1498   1001   
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
 1499   1002   
similarity index 100%
 1500   1003   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
 1501   1004   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1502   1005   
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
 1503   1006   
similarity index 99%
 1504   1007   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
 1505   1008   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1506   1009   
index afe367b..7bee5c7 100644
 1507         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
        1010  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1508   1011   
@@ -1,12 +1,12 @@
 1509   1012   
{
 1510   1013   
    "credentials": {
 1511   1014   
        "access_key_id": "AKIDEXAMPLE",
 1512   1015   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1513   1016   
    },
 1514   1017   
    "expiration_in_seconds": 3600,
 1515   1018   
    "normalize": false,
 1516   1019   
    "region": "us-east-1",
 1517   1020   
    "service": "service",
 1518   1021   
    "sign_body": false,
 1519   1022   
    "timestamp": "2015-08-30T12:36:00Z"
 1520         -
}
        1023  +
}
              \
 No newline at end of file
 1521   1024   
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
 1522   1025   
similarity index 82%
 1523   1026   
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
 1524   1027   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1525   1028   
index 36c3cdf..6919c44 100644
 1526         -
-- 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
        1029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1527   1030   
@@ -1,8 +1,8 @@
 1528   1031   
GET
 1529         -
/
 1530         -
Param1=Value1&Param1=value2
        1032  +
/example1/example2/../..
        1033  +
 1531   1034   
host:example.amazonaws.com
 1532   1035   
x-amz-date:20150830T123600Z
 1533   1036   
 1534   1037   
host;x-amz-date
 1535   1038   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1536   1039   
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
 1537   1040   
new file mode 100644
 1538   1041   
index 0000000..4092d83
 1539         -
-- /dev/null
        1042  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1540   1043   
@@ -0,0 +1 @@
        1044  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
 1541   1045   
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
 1542   1046   
new file mode 100644
 1543   1047   
index 0000000..e731b35
 1544         -
-- /dev/null
        1048  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1545   1049   
@@ -0,0 +1,5 @@
        1050  +
GET /example1/example2/../.. HTTP/1.1
        1051  +
Host:example.amazonaws.com
        1052  +
X-Amz-Date:20150830T123600Z
        1053  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
        1054  +
 1546   1055   
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
 1547   1056   
new file mode 100644
 1548   1057   
index 0000000..4f45752
 1549         -
-- /dev/null
        1058  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1550   1059   
@@ -0,0 +1,4 @@
        1060  +
AWS4-HMAC-SHA256
        1061  +
20150830T123600Z
        1062  +
20150830/us-east-1/service/aws4_request
        1063  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
 1551   1064   
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
 1552   1065   
new file mode 100644
 1553   1066   
index 0000000..e1fb07d
 1554         -
-- /dev/null
        1067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1555   1068   
@@ -0,0 +1,7 @@
        1069  +
GET
        1070  +
/example1/example2/../..
        1071  +
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
        1072  +
host:example.amazonaws.com
        1073  +
        1074  +
host
        1075  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1556   1076   
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
 1557   1077   
new file mode 100644
 1558   1078   
index 0000000..8ac31d7
 1559         -
-- /dev/null
        1079  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1560   1080   
@@ -0,0 +1 @@
        1081  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
 1561   1082   
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
 1562   1083   
new file mode 100644
 1563   1084   
index 0000000..ac074f9
 1564         -
-- /dev/null
        1085  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1565   1086   
@@ -0,0 +1,3 @@
        1087  +
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
        1088  +
Host:example.amazonaws.com
        1089  +
 1566   1090   
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
 1567   1091   
new file mode 100644
 1568   1092   
index 0000000..8dcb6ff
 1569         -
-- /dev/null
        1093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1570   1094   
@@ -0,0 +1,4 @@
        1095  +
AWS4-HMAC-SHA256
        1096  +
20150830T123600Z
        1097  +
20150830/us-east-1/service/aws4_request
        1098  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
 1571   1099   
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
 1572   1100   
similarity index 100%
 1573   1101   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
 1574   1102   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1575   1103   
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
 1576   1104   
similarity index 99%
 1577   1105   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
 1578   1106   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1579   1107   
index afe367b..7bee5c7 100644
 1580         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
        1108  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1581   1109   
@@ -1,12 +1,12 @@
 1582   1110   
{
 1583   1111   
    "credentials": {
 1584   1112   
        "access_key_id": "AKIDEXAMPLE",
 1585   1113   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1586   1114   
    },
 1587   1115   
    "expiration_in_seconds": 3600,
 1588   1116   
    "normalize": false,
 1589   1117   
    "region": "us-east-1",
 1590   1118   
    "service": "service",
 1591   1119   
    "sign_body": false,
 1592   1120   
    "timestamp": "2015-08-30T12:36:00Z"
 1593         -
}
        1121  +
}
              \
 No newline at end of file
 1594   1122   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1595   1123   
similarity index 82%
 1596   1124   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.creq
 1597   1125   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1598   1126   
index 26898eb..f640bc2 100644
 1599         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.creq
        1127  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1600   1128   
@@ -1,8 +1,8 @@
 1601   1129   
GET
 1602         -
/
 1603         -
Param1=value1&Param1=value2
        1130  +
/example/..
        1131  +
 1604   1132   
host:example.amazonaws.com
 1605   1133   
x-amz-date:20150830T123600Z
 1606   1134   
 1607   1135   
host;x-amz-date
 1608   1136   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1609   1137   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1610   1138   
new file mode 100644
 1611   1139   
index 0000000..d957303
 1612         -
-- /dev/null
        1140  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1613   1141   
@@ -0,0 +1 @@
        1142  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
 1614   1143   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1615   1144   
new file mode 100644
 1616   1145   
index 0000000..4f42ffc
 1617         -
-- /dev/null
        1146  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1618   1147   
@@ -0,0 +1,5 @@
        1148  +
GET /example/.. HTTP/1.1
        1149  +
Host:example.amazonaws.com
        1150  +
X-Amz-Date:20150830T123600Z
        1151  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
        1152  +
 1619   1153   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1620   1154   
new file mode 100644
 1621   1155   
index 0000000..ca54bda
 1622         -
-- /dev/null
        1156  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1623   1157   
@@ -0,0 +1,4 @@
        1158  +
AWS4-HMAC-SHA256
        1159  +
20150830T123600Z
        1160  +
20150830/us-east-1/service/aws4_request
        1161  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
 1624   1162   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1625   1163   
new file mode 100644
 1626   1164   
index 0000000..dc80036
 1627         -
-- /dev/null
        1165  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1628   1166   
@@ -0,0 +1,7 @@
        1167  +
GET
        1168  +
/example/..
        1169  +
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
        1170  +
host:example.amazonaws.com
        1171  +
        1172  +
host
        1173  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1629   1174   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1630   1175   
new file mode 100644
 1631   1176   
index 0000000..dfa0437
 1632         -
-- /dev/null
        1177  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1633   1178   
@@ -0,0 +1 @@
        1179  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
 1634   1180   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1635   1181   
new file mode 100644
 1636   1182   
index 0000000..98367b1
 1637         -
-- /dev/null
        1183  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1638   1184   
@@ -0,0 +1,3 @@
        1185  +
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
        1186  +
Host:example.amazonaws.com
        1187  +
 1639   1188   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1640   1189   
new file mode 100644
 1641   1190   
index 0000000..f65dd66
 1642         -
-- /dev/null
        1191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1643   1192   
@@ -0,0 +1,4 @@
        1193  +
AWS4-HMAC-SHA256
        1194  +
20150830T123600Z
        1195  +
20150830/us-east-1/service/aws4_request
        1196  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
 1644   1197   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1645   1198   
similarity index 100%
 1646   1199   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
 1647   1200   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1648   1201   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1649   1202   
new file mode 100644
 1650   1203   
index 0000000..0468d80
 1651         -
-- /dev/null
        1204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1652   1205   
@@ -0,0 +1,12 @@
        1206  +
{
        1207  +
    "credentials": {
        1208  +
        "access_key_id": "AKIDEXAMPLE",
        1209  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1210  +
    },
        1211  +
    "expiration_in_seconds": 3600,
        1212  +
    "normalize": true,
        1213  +
    "region": "us-east-1",
        1214  +
    "service": "service",
        1215  +
    "sign_body": false,
        1216  +
    "timestamp": "2015-08-30T12:36:00Z"
        1217  +
}
              \
 No newline at end of file
 1653   1218   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1654   1219   
similarity index 100%
 1655   1220   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
 1656   1221   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1657   1222   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1658   1223   
new file mode 100644
 1659   1224   
index 0000000..87f295f
 1660         -
-- /dev/null
        1225  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1661   1226   
@@ -0,0 +1 @@
        1227  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1662   1228   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1663   1229   
new file mode 100644
 1664   1230   
index 0000000..99c8eeb
 1665         -
-- /dev/null
        1231  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1666   1232   
@@ -0,0 +1,5 @@
        1233  +
GET /./ HTTP/1.1
        1234  +
Host:example.amazonaws.com
        1235  +
X-Amz-Date:20150830T123600Z
        1236  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1237  +
 1667   1238   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-string-to-sign.txt
 1668   1239   
similarity index 100%
 1669   1240   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
 1670   1241   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-string-to-sign.txt
 1671   1242   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1672   1243   
new file mode 100644
 1673   1244   
index 0000000..fb2420d
 1674         -
-- /dev/null
        1245  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1675   1246   
@@ -0,0 +1,7 @@
        1247  +
GET
        1248  +
/
        1249  +
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
        1250  +
host:example.amazonaws.com
        1251  +
        1252  +
host
        1253  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1676   1254   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1677   1255   
new file mode 100644
 1678   1256   
index 0000000..da5c905
 1679         -
-- /dev/null
        1257  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1680   1258   
@@ -0,0 +1 @@
        1259  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1681   1260   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1682   1261   
new file mode 100644
 1683   1262   
index 0000000..2e47f69
 1684         -
-- /dev/null
        1263  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1685   1264   
@@ -0,0 +1,3 @@
        1265  +
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
        1266  +
Host:example.amazonaws.com
        1267  +
 1686   1268   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1687   1269   
new file mode 100644
 1688   1270   
index 0000000..d837e67
 1689         -
-- /dev/null
        1271  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1690   1272   
@@ -0,0 +1,4 @@
        1273  +
AWS4-HMAC-SHA256
        1274  +
20150830T123600Z
        1275  +
20150830/us-east-1/service/aws4_request
        1276  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1691   1277   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1692   1278   
similarity index 100%
 1693   1279   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
 1694   1280   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1695   1281   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1696   1282   
similarity index 99%
 1697   1283   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
 1698   1284   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1699   1285   
index afe367b..7bee5c7 100644
 1700         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
        1286  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1701   1287   
@@ -1,12 +1,12 @@
 1702   1288   
{
 1703   1289   
    "credentials": {
 1704   1290   
        "access_key_id": "AKIDEXAMPLE",
 1705   1291   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1706   1292   
    },
 1707   1293   
    "expiration_in_seconds": 3600,
 1708   1294   
    "normalize": false,
 1709   1295   
    "region": "us-east-1",
 1710   1296   
    "service": "service",
 1711   1297   
    "sign_body": false,
 1712   1298   
    "timestamp": "2015-08-30T12:36:00Z"
 1713         -
}
        1299  +
}
              \
 No newline at end of file
 1714   1300   
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
 1715   1301   
new file mode 100644
 1716   1302   
index 0000000..5159048
 1717         -
-- /dev/null
        1303  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1718   1304   
@@ -0,0 +1,8 @@
        1305  +
GET
        1306  +
/./
        1307  +
        1308  +
host:example.amazonaws.com
        1309  +
x-amz-date:20150830T123600Z
        1310  +
        1311  +
host;x-amz-date
        1312  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1719   1313   
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
 1720   1314   
new file mode 100644
 1721   1315   
index 0000000..b49ff0e
 1722         -
-- /dev/null
        1316  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1723   1317   
@@ -0,0 +1 @@
        1318  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
 1724   1319   
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
 1725   1320   
new file mode 100644
 1726   1321   
index 0000000..aeb1ffa
 1727         -
-- /dev/null
        1322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1728   1323   
@@ -0,0 +1,5 @@
        1324  +
GET /./ HTTP/1.1
        1325  +
Host:example.amazonaws.com
        1326  +
X-Amz-Date:20150830T123600Z
        1327  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
        1328  +
 1729   1329   
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
 1730   1330   
new file mode 100644
 1731   1331   
index 0000000..b7d8caf
 1732         -
-- /dev/null
        1332  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1733   1333   
@@ -0,0 +1,4 @@
        1334  +
AWS4-HMAC-SHA256
        1335  +
20150830T123600Z
        1336  +
20150830/us-east-1/service/aws4_request
        1337  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
 1734   1338   
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
 1735   1339   
new file mode 100644
 1736   1340   
index 0000000..d4e029e
 1737         -
-- /dev/null
        1341  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1738   1342   
@@ -0,0 +1,7 @@
        1343  +
GET
        1344  +
/./
        1345  +
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
        1346  +
host:example.amazonaws.com
        1347  +
        1348  +
host
        1349  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1739   1350   
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
 1740   1351   
new file mode 100644
 1741   1352   
index 0000000..fe8f4cc
 1742         -
-- /dev/null
        1353  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1743   1354   
@@ -0,0 +1 @@
        1355  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
 1744   1356   
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
 1745   1357   
new file mode 100644
 1746   1358   
index 0000000..dcc4fc4
 1747         -
-- /dev/null
        1359  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1748   1360   
@@ -0,0 +1,3 @@
        1361  +
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
        1362  +
Host:example.amazonaws.com
        1363  +
 1749   1364   
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
 1750   1365   
new file mode 100644
 1751   1366   
index 0000000..5fb3ada
 1752         -
-- /dev/null
        1367  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1753   1368   
@@ -0,0 +1,4 @@
        1369  +
AWS4-HMAC-SHA256
        1370  +
20150830T123600Z
        1371  +
20150830/us-east-1/service/aws4_request
        1372  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
 1754   1373   
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
 1755   1374   
similarity index 100%
 1756   1375   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
 1757   1376   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1758   1377   
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
 1759   1378   
new file mode 100644
 1760   1379   
index 0000000..0468d80
 1761         -
-- /dev/null
        1380  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1762   1381   
@@ -0,0 +1,12 @@
        1382  +
{
        1383  +
    "credentials": {
        1384  +
        "access_key_id": "AKIDEXAMPLE",
        1385  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1386  +
    },
        1387  +
    "expiration_in_seconds": 3600,
        1388  +
    "normalize": true,
        1389  +
    "region": "us-east-1",
        1390  +
    "service": "service",
        1391  +
    "sign_body": false,
        1392  +
    "timestamp": "2015-08-30T12:36:00Z"
        1393  +
}
              \
 No newline at end of file
 1763   1394   
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
 1764   1395   
similarity index 100%
 1765   1396   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
 1766   1397   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1767   1398   
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
 1768   1399   
new file mode 100644
 1769   1400   
index 0000000..87f295f
 1770         -
-- /dev/null
        1401  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1771   1402   
@@ -0,0 +1 @@
        1403  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1772   1404   
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
 1773   1405   
new file mode 100644
 1774   1406   
index 0000000..b91087b
 1775         -
-- /dev/null
        1407  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1776   1408   
@@ -0,0 +1,5 @@
        1409  +
GET // HTTP/1.1
        1410  +
Host:example.amazonaws.com
        1411  +
X-Amz-Date:20150830T123600Z
        1412  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1413  +
 1777   1414   
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
 1778   1415   
similarity index 100%
 1779   1416   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
 1780   1417   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1781   1418   
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
 1782   1419   
new file mode 100644
 1783   1420   
index 0000000..fb2420d
 1784         -
-- /dev/null
        1421  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1785   1422   
@@ -0,0 +1,7 @@
        1423  +
GET
        1424  +
/
        1425  +
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
        1426  +
host:example.amazonaws.com
        1427  +
        1428  +
host
        1429  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1786   1430   
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
 1787   1431   
new file mode 100644
 1788   1432   
index 0000000..da5c905
 1789         -
-- /dev/null
        1433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1790   1434   
@@ -0,0 +1 @@
        1435  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1791   1436   
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
 1792   1437   
new file mode 100644
 1793   1438   
index 0000000..0290ba4
 1794         -
-- /dev/null
        1439  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1795   1440   
@@ -0,0 +1,3 @@
        1441  +
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
        1442  +
Host:example.amazonaws.com
        1443  +
 1796   1444   
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
 1797   1445   
new file mode 100644
 1798   1446   
index 0000000..d837e67
 1799         -
-- /dev/null
        1447  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1800   1448   
@@ -0,0 +1,4 @@
        1449  +
AWS4-HMAC-SHA256
        1450  +
20150830T123600Z
        1451  +
20150830/us-east-1/service/aws4_request
        1452  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1801   1453   
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
 1802   1454   
similarity index 100%
 1803   1455   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
 1804   1456   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1805   1457   
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
 1806   1458   
new file mode 100644
 1807   1459   
index 0000000..0468d80
 1808         -
-- /dev/null
        1460  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1809   1461   
@@ -0,0 +1,12 @@
        1462  +
{
        1463  +
    "credentials": {
        1464  +
        "access_key_id": "AKIDEXAMPLE",
        1465  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1466  +
    },
        1467  +
    "expiration_in_seconds": 3600,
        1468  +
    "normalize": true,
        1469  +
    "region": "us-east-1",
        1470  +
    "service": "service",
        1471  +
    "sign_body": false,
        1472  +
    "timestamp": "2015-08-30T12:36:00Z"
        1473  +
}
              \
 No newline at end of file
 1810   1474   
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
 1811   1475   
similarity index 100%
 1812   1476   
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
 1813   1477   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1814   1478   
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
 1815   1479   
new file mode 100644
 1816   1480   
index 0000000..8f892bf
 1817         -
-- /dev/null
        1481  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1818   1482   
@@ -0,0 +1 @@
        1483  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
 1819   1484   
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
 1820   1485   
new file mode 100644
 1821   1486   
index 0000000..2a1895c
 1822         -
-- /dev/null
        1487  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1823   1488   
@@ -0,0 +1,5 @@
        1489  +
GET /./example HTTP/1.1
        1490  +
Host:example.amazonaws.com
        1491  +
X-Amz-Date:20150830T123600Z
        1492  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
        1493  +
 1824   1494   
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
 1825   1495   
similarity index 100%
 1826   1496   
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
 1827   1497   
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
 1828   1498   
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
 1829   1499   
new file mode 100644
 1830   1500   
index 0000000..99dfc2a
 1831         -
-- /dev/null
        1501  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1832   1502   
@@ -0,0 +1,7 @@
        1503  +
GET
        1504  +
/example
        1505  +
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
        1506  +
host:example.amazonaws.com
        1507  +
        1508  +
host
        1509  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1833   1510   
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
 1834   1511   
new file mode 100644
 1835   1512   
index 0000000..fcd7a17
 1836         -
-- /dev/null
        1513  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1837   1514   
@@ -0,0 +1 @@
        1515  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
 1838   1516   
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
 1839   1517   
new file mode 100644
 1840   1518   
index 0000000..f671de2
 1841         -
-- /dev/null
        1519  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1842   1520   
@@ -0,0 +1,3 @@
        1521  +
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
        1522  +
Host:example.amazonaws.com
        1523  +
 1843   1524   
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
 1844   1525   
new file mode 100644
 1845   1526   
index 0000000..f8456dc
 1846         -
-- /dev/null
        1527  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1847   1528   
@@ -0,0 +1,4 @@
        1529  +
AWS4-HMAC-SHA256
        1530  +
20150830T123600Z
        1531  +
20150830/us-east-1/service/aws4_request
        1532  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
 1848   1533   
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
 1849   1534   
similarity index 100%
 1850   1535   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
 1851   1536   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1852   1537   
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
 1853   1538   
similarity index 99%
 1854   1539   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
 1855   1540   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1856   1541   
index afe367b..7bee5c7 100644
 1857         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
        1542  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1858   1543   
@@ -1,12 +1,12 @@
 1859   1544   
{
 1860   1545   
    "credentials": {
 1861   1546   
        "access_key_id": "AKIDEXAMPLE",
 1862   1547   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1863   1548   
    },
 1864   1549   
    "expiration_in_seconds": 3600,
 1865   1550   
    "normalize": false,
 1866   1551   
    "region": "us-east-1",
 1867   1552   
    "service": "service",
 1868   1553   
    "sign_body": false,
 1869   1554   
    "timestamp": "2015-08-30T12:36:00Z"
 1870         -
}
        1555  +
}
              \
 No newline at end of file
 1871   1556   
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
 1872   1557   
new file mode 100644
 1873   1558   
index 0000000..36698c7
 1874         -
-- /dev/null
        1559  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 1875   1560   
@@ -0,0 +1,8 @@
        1561  +
GET
        1562  +
/./example
        1563  +
        1564  +
host:example.amazonaws.com
        1565  +
x-amz-date:20150830T123600Z
        1566  +
        1567  +
host;x-amz-date
        1568  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1876   1569   
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
 1877   1570   
new file mode 100644
 1878   1571   
index 0000000..4a4b8f2
 1879         -
-- /dev/null
        1572  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 1880   1573   
@@ -0,0 +1 @@
        1574  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
 1881   1575   
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
 1882   1576   
new file mode 100644
 1883   1577   
index 0000000..d462bcd
 1884         -
-- /dev/null
        1578  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 1885   1579   
@@ -0,0 +1,5 @@
        1580  +
GET /./example HTTP/1.1
        1581  +
Host:example.amazonaws.com
        1582  +
X-Amz-Date:20150830T123600Z
        1583  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1584  +
 1886   1585   
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
 1887   1586   
new file mode 100644
 1888   1587   
index 0000000..8be78c9
 1889         -
-- /dev/null
        1588  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 1890   1589   
@@ -0,0 +1,4 @@
        1590  +
AWS4-HMAC-SHA256
        1591  +
20150830T123600Z
        1592  +
20150830/us-east-1/service/aws4_request
        1593  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
 1891   1594   
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
 1892   1595   
new file mode 100644
 1893   1596   
index 0000000..fe1103c
 1894         -
-- /dev/null
        1597  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 1895   1598   
@@ -0,0 +1,7 @@
        1599  +
GET
        1600  +
/./example
        1601  +
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
        1602  +
host:example.amazonaws.com
        1603  +
        1604  +
host
        1605  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1896   1606   
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
 1897   1607   
new file mode 100644
 1898   1608   
index 0000000..ce80762
 1899         -
-- /dev/null
        1609  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 1900   1610   
@@ -0,0 +1 @@
        1611  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
 1901   1612   
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
 1902   1613   
new file mode 100644
 1903   1614   
index 0000000..30841a6
 1904         -
-- /dev/null
        1615  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 1905   1616   
@@ -0,0 +1,3 @@
        1617  +
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
        1618  +
Host:example.amazonaws.com
        1619  +
 1906   1620   
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
 1907   1621   
new file mode 100644
 1908   1622   
index 0000000..5c66509
 1909         -
-- /dev/null
        1623  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 1910   1624   
@@ -0,0 +1,4 @@
        1625  +
AWS4-HMAC-SHA256
        1626  +
20150830T123600Z
        1627  +
20150830/us-east-1/service/aws4_request
        1628  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
 1911   1629   
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
 1912   1630   
similarity index 100%
 1913   1631   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
 1914   1632   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 1915   1633   
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
 1916   1634   
new file mode 100644
 1917   1635   
index 0000000..7bee5c7
 1918         -
-- /dev/null
        1636  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 1919   1637   
@@ -0,0 +1,12 @@
        1638  +
{
        1639  +
    "credentials": {
        1640  +
        "access_key_id": "AKIDEXAMPLE",
        1641  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1642  +
    },
        1643  +
    "expiration_in_seconds": 3600,
        1644  +
    "normalize": false,
        1645  +
    "region": "us-east-1",
        1646  +
    "service": "service",
        1647  +
    "sign_body": false,
        1648  +
    "timestamp": "2015-08-30T12:36:00Z"
        1649  +
}
              \
 No newline at end of file
 1920   1650   
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
 1921   1651   
new file mode 100644
 1922   1652   
index 0000000..5860c8a
 1923         -
-- /dev/null
        1653  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 1924   1654   
@@ -0,0 +1,8 @@
        1655  +
GET
        1656  +
//
        1657  +
        1658  +
host:example.amazonaws.com
        1659  +
x-amz-date:20150830T123600Z
        1660  +
        1661  +
host;x-amz-date
        1662  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1925   1663   
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
 1926   1664   
new file mode 100644
 1927   1665   
index 0000000..8310471
 1928         -
-- /dev/null
        1666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 1929   1667   
@@ -0,0 +1 @@
        1668  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
 1930   1669   
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
 1931   1670   
new file mode 100644
 1932   1671   
index 0000000..2a7afef
 1933         -
-- /dev/null
        1672  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 1934   1673   
@@ -0,0 +1,5 @@
        1674  +
GET // HTTP/1.1
        1675  +
Host:example.amazonaws.com
        1676  +
X-Amz-Date:20150830T123600Z
        1677  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1678  +
 1935   1679   
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
 1936   1680   
new file mode 100644
 1937   1681   
index 0000000..06059dd
 1938         -
-- /dev/null
        1682  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 1939   1683   
@@ -0,0 +1,4 @@
        1684  +
AWS4-HMAC-SHA256
        1685  +
20150830T123600Z
        1686  +
20150830/us-east-1/service/aws4_request
        1687  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
 1940   1688   
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
 1941   1689   
new file mode 100644
 1942   1690   
index 0000000..6d63aef
 1943         -
-- /dev/null
        1691  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 1944   1692   
@@ -0,0 +1,7 @@
        1693  +
GET
        1694  +
//
        1695  +
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
        1696  +
host:example.amazonaws.com
        1697  +
        1698  +
host
        1699  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1945   1700   
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
 1946   1701   
new file mode 100644
 1947   1702   
index 0000000..e5b7b6c
 1948         -
-- /dev/null
        1703  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 1949   1704   
@@ -0,0 +1 @@
        1705  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
 1950   1706   
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
 1951   1707   
new file mode 100644
 1952   1708   
index 0000000..46fe3fd
 1953         -
-- /dev/null
        1709  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 1954   1710   
@@ -0,0 +1,3 @@
        1711  +
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
        1712  +
Host:example.amazonaws.com
        1713  +
 1955   1714   
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
 1956   1715   
new file mode 100644
 1957   1716   
index 0000000..ea79940
 1958         -
-- /dev/null
        1717  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 1959   1718   
@@ -0,0 +1,4 @@
        1719  +
AWS4-HMAC-SHA256
        1720  +
20150830T123600Z
        1721  +
20150830/us-east-1/service/aws4_request
        1722  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
 1960   1723   
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
 1961   1724   
similarity index 100%
 1962   1725   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
 1963   1726   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 1964   1727   
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
 1965   1728   
new file mode 100644
 1966   1729   
index 0000000..0468d80
 1967         -
-- /dev/null
        1730  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 1968   1731   
@@ -0,0 +1,12 @@
        1732  +
{
        1733  +
    "credentials": {
        1734  +
        "access_key_id": "AKIDEXAMPLE",
        1735  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1736  +
    },
        1737  +
    "expiration_in_seconds": 3600,
        1738  +
    "normalize": true,
        1739  +
    "region": "us-east-1",
        1740  +
    "service": "service",
        1741  +
    "sign_body": false,
        1742  +
    "timestamp": "2015-08-30T12:36:00Z"
        1743  +
}
              \
 No newline at end of file
 1969   1744   
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
 1970   1745   
similarity index 100%
 1971   1746   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
 1972   1747   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 1973   1748   
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
 1974   1749   
new file mode 100644
 1975   1750   
index 0000000..71c7bac
 1976         -
-- /dev/null
        1751  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 1977   1752   
@@ -0,0 +1 @@
        1753  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
 1978   1754   
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
 1979   1755   
new file mode 100644
 1980   1756   
index 0000000..0add1f1
 1981         -
-- /dev/null
        1757  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 1982   1758   
@@ -0,0 +1,5 @@
        1759  +
GET //example// HTTP/1.1
        1760  +
Host:example.amazonaws.com
        1761  +
X-Amz-Date:20150830T123600Z
        1762  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1763  +
 1983   1764   
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
 1984   1765   
similarity index 100%
 1985   1766   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
 1986   1767   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 1987   1768   
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
 1988   1769   
new file mode 100644
 1989   1770   
index 0000000..ce72510
 1990         -
-- /dev/null
        1771  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 1991   1772   
@@ -0,0 +1,7 @@
        1773  +
GET
        1774  +
/example/
        1775  +
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
        1776  +
host:example.amazonaws.com
        1777  +
        1778  +
host
        1779  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1992   1780   
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
 1993   1781   
new file mode 100644
 1994   1782   
index 0000000..265f387
 1995         -
-- /dev/null
        1783  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 1996   1784   
@@ -0,0 +1 @@
        1785  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
 1997   1786   
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
 1998   1787   
new file mode 100644
 1999   1788   
index 0000000..e1fcb2e
 2000         -
-- /dev/null
        1789  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 2001   1790   
@@ -0,0 +1,3 @@
        1791  +
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
        1792  +
Host:example.amazonaws.com
        1793  +
 2002   1794   
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
 2003   1795   
new file mode 100644
 2004   1796   
index 0000000..a14de61
 2005         -
-- /dev/null
        1797  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 2006   1798   
@@ -0,0 +1,4 @@
        1799  +
AWS4-HMAC-SHA256
        1800  +
20150830T123600Z
        1801  +
20150830/us-east-1/service/aws4_request
        1802  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
 2007   1803   
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
 2008   1804   
similarity index 100%
 2009   1805   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
 2010   1806   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 2011   1807   
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
 2012   1808   
new file mode 100644
 2013   1809   
index 0000000..7bee5c7
 2014         -
-- /dev/null
        1810  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 2015   1811   
@@ -0,0 +1,12 @@
        1812  +
{
        1813  +
    "credentials": {
        1814  +
        "access_key_id": "AKIDEXAMPLE",
        1815  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1816  +
    },
        1817  +
    "expiration_in_seconds": 3600,
        1818  +
    "normalize": false,
        1819  +
    "region": "us-east-1",
        1820  +
    "service": "service",
        1821  +
    "sign_body": false,
        1822  +
    "timestamp": "2015-08-30T12:36:00Z"
        1823  +
}
              \
 No newline at end of file
 2016   1824   
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
 2017   1825   
new file mode 100644
 2018   1826   
index 0000000..dfffaaf
 2019         -
-- /dev/null
        1827  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 2020   1828   
@@ -0,0 +1,8 @@
        1829  +
GET
        1830  +
//example//
        1831  +
        1832  +
host:example.amazonaws.com
        1833  +
x-amz-date:20150830T123600Z
        1834  +
        1835  +
host;x-amz-date
        1836  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2021   1837   
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
 2022   1838   
new file mode 100644
 2023   1839   
index 0000000..edbcc0d
 2024         -
-- /dev/null
        1840  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 2025   1841   
@@ -0,0 +1 @@
        1842  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
 2026   1843   
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
 2027   1844   
new file mode 100644
 2028   1845   
index 0000000..4cc12dd
 2029         -
-- /dev/null
        1846  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 2030   1847   
@@ -0,0 +1,5 @@
        1848  +
GET //example// HTTP/1.1
        1849  +
Host:example.amazonaws.com
        1850  +
X-Amz-Date:20150830T123600Z
        1851  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1852  +
 2031   1853   
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
 2032   1854   
new file mode 100644
 2033   1855   
index 0000000..3eba390
 2034         -
-- /dev/null
        1856  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 2035   1857   
@@ -0,0 +1,4 @@
        1858  +
AWS4-HMAC-SHA256
        1859  +
20150830T123600Z
        1860  +
20150830/us-east-1/service/aws4_request
        1861  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
 2036   1862   
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
 2037   1863   
new file mode 100644
 2038   1864   
index 0000000..f7844e3
 2039         -
-- /dev/null
        1865  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 2040   1866   
@@ -0,0 +1,7 @@
        1867  +
GET
        1868  +
//example//
        1869  +
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
        1870  +
host:example.amazonaws.com
        1871  +
        1872  +
host
        1873  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2041   1874   
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
 2042   1875   
new file mode 100644
 2043   1876   
index 0000000..a8d6b96
 2044         -
-- /dev/null
        1877  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 2045   1878   
@@ -0,0 +1 @@
        1879  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
 2046   1880   
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
 2047   1881   
new file mode 100644
 2048   1882   
index 0000000..a8322c6
 2049         -
-- /dev/null
        1883  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 2050   1884   
@@ -0,0 +1,3 @@
        1885  +
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
        1886  +
Host:example.amazonaws.com
        1887  +
 2051   1888   
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
 2052   1889   
new file mode 100644
 2053   1890   
index 0000000..068724d
 2054         -
-- /dev/null
        1891  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 2055   1892   
@@ -0,0 +1,4 @@
        1893  +
AWS4-HMAC-SHA256
        1894  +
20150830T123600Z
        1895  +
20150830/us-east-1/service/aws4_request
        1896  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
 2056   1897   
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
 2057   1898   
similarity index 100%
 2058   1899   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
 2059   1900   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 2060   1901   
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
 2061   1902   
new file mode 100644
 2062   1903   
index 0000000..0468d80
 2063         -
-- /dev/null
        1904  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 2064   1905   
@@ -0,0 +1,12 @@
        1906  +
{
        1907  +
    "credentials": {
        1908  +
        "access_key_id": "AKIDEXAMPLE",
        1909  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1910  +
    },
        1911  +
    "expiration_in_seconds": 3600,
        1912  +
    "normalize": true,
        1913  +
    "region": "us-east-1",
        1914  +
    "service": "service",
        1915  +
    "sign_body": false,
        1916  +
    "timestamp": "2015-08-30T12:36:00Z"
        1917  +
}
              \
 No newline at end of file
 2065   1918   
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
 2066   1919   
similarity index 100%
 2067   1920   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
 2068   1921   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 2069   1922   
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
 2070   1923   
new file mode 100644
 2071   1924   
index 0000000..f63892b
 2072         -
-- /dev/null
        1925  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 2073   1926   
@@ -0,0 +1 @@
        1927  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 2074   1928   
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
 2075   1929   
new file mode 100644
 2076   1930   
index 0000000..19cd5cb
 2077         -
-- /dev/null
        1931  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 2078   1932   
@@ -0,0 +1,5 @@
        1933  +
GET /example space/ HTTP/1.1
        1934  +
Host:example.amazonaws.com
        1935  +
X-Amz-Date:20150830T123600Z
        1936  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1937  +
 2079   1938   
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
 2080   1939   
similarity index 100%
 2081   1940   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
 2082   1941   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 2083   1942   
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
 2084   1943   
new file mode 100644
 2085   1944   
index 0000000..fa3d3e2
 2086         -
-- /dev/null
        1945  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 2087   1946   
@@ -0,0 +1,7 @@
        1947  +
GET
        1948  +
/example%20space/
        1949  +
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
        1950  +
host:example.amazonaws.com
        1951  +
        1952  +
host
        1953  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2088   1954   
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
 2089   1955   
new file mode 100644
 2090   1956   
index 0000000..5b2e204
 2091         -
-- /dev/null
        1957  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 2092   1958   
@@ -0,0 +1 @@
        1959  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 2093   1960   
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
 2094   1961   
new file mode 100644
 2095   1962   
index 0000000..93ca1d0
 2096         -
-- /dev/null
        1963  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 2097   1964   
@@ -0,0 +1,3 @@
        1965  +
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
        1966  +
Host:example.amazonaws.com
        1967  +
 2098   1968   
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
 2099   1969   
new file mode 100644
 2100   1970   
index 0000000..b4cb789
 2101         -
-- /dev/null
        1971  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 2102   1972   
@@ -0,0 +1,4 @@
        1973  +
AWS4-HMAC-SHA256
        1974  +
20150830T123600Z
        1975  +
20150830/us-east-1/service/aws4_request
        1976  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 2103   1977   
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
 2104   1978   
new file mode 100644
 2105   1979   
index 0000000..860a277
 2106         -
-- /dev/null
        1980  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 2107   1981   
@@ -0,0 +1,2 @@
        1982  +
GET /example%20space/ HTTP/1.1
        1983  +
Host:example.amazonaws.com
 2108   1984   
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
 2109   1985   
new file mode 100644
 2110   1986   
index 0000000..7bee5c7
 2111         -
-- /dev/null
        1987  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 2112   1988   
@@ -0,0 +1,12 @@
        1989  +
{
        1990  +
    "credentials": {
        1991  +
        "access_key_id": "AKIDEXAMPLE",
        1992  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1993  +
    },
        1994  +
    "expiration_in_seconds": 3600,
        1995  +
    "normalize": false,
        1996  +
    "region": "us-east-1",
        1997  +
    "service": "service",
        1998  +
    "sign_body": false,
        1999  +
    "timestamp": "2015-08-30T12:36:00Z"
        2000  +
}
              \
 No newline at end of file
 2113   2001   
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
 2114   2002   
similarity index 66%
 2115   2003   
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
 2116   2004   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2117   2005   
index 71dc981..124a709 100644
 2118         -
-- 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
        2006  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2119   2007   
@@ -1,9 +1,8 @@
 2120         -
POST
 2121         -
/
        2008  +
GET
        2009  +
/example%20space/
 2122   2010   
 2123         -
content-type:application/x-www-form-urlencoded; charset=utf-8
 2124   2011   
host:example.amazonaws.com
 2125   2012   
x-amz-date:20150830T123600Z
 2126   2013   
 2127   2014   
host;x-amz-date
 2128   2015   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2129   2016   
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
 2130   2017   
new file mode 100644
 2131   2018   
index 0000000..f63892b
 2132         -
-- /dev/null
        2019  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 2133   2020   
@@ -0,0 +1 @@
        2021  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 2134   2022   
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
 2135   2023   
new file mode 100644
 2136   2024   
index 0000000..19cd5cb
 2137         -
-- /dev/null
        2025  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 2138   2026   
@@ -0,0 +1,5 @@
        2027  +
GET /example space/ HTTP/1.1
        2028  +
Host:example.amazonaws.com
        2029  +
X-Amz-Date:20150830T123600Z
        2030  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        2031  +
 2139   2032   
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
 2140   2033   
new file mode 100644
 2141   2034   
index 0000000..a633f0c
 2142         -
-- /dev/null
        2035  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 2143   2036   
@@ -0,0 +1,4 @@
        2037  +
AWS4-HMAC-SHA256
        2038  +
20150830T123600Z
        2039  +
20150830/us-east-1/service/aws4_request
        2040  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
 2144   2041   
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
 2145   2042   
new file mode 100644
 2146   2043   
index 0000000..fa3d3e2
 2147         -
-- /dev/null
        2044  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 2148   2045   
@@ -0,0 +1,7 @@
        2046  +
GET
        2047  +
/example%20space/
        2048  +
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
        2049  +
host:example.amazonaws.com
        2050  +
        2051  +
host
        2052  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2149   2053   
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
 2150   2054   
new file mode 100644
 2151   2055   
index 0000000..5b2e204
 2152         -
-- /dev/null
        2056  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 2153   2057   
@@ -0,0 +1 @@
        2058  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 2154   2059   
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
 2155   2060   
new file mode 100644
 2156   2061   
index 0000000..93ca1d0
 2157         -
-- /dev/null
        2062  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 2158   2063   
@@ -0,0 +1,3 @@
        2064  +
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
        2065  +
Host:example.amazonaws.com
        2066  +
 2159   2067   
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
 2160   2068   
new file mode 100644
 2161   2069   
index 0000000..b4cb789
 2162         -
-- /dev/null
        2070  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 2163   2071   
@@ -0,0 +1,4 @@
        2072  +
AWS4-HMAC-SHA256
        2073  +
20150830T123600Z
        2074  +
20150830/us-east-1/service/aws4_request
        2075  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 2164   2076   
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
 2165   2077   
similarity index 67%
 2166   2078   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
 2167   2079   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2168   2080   
index b7d5e8b..ab509ab 100644
 2169         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        2081  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2170   2082   
@@ -1,3 +1,2 @@
 2171   2083   
GET /example space/ HTTP/1.1
 2172   2084   
Host:example.amazonaws.com
 2173         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2174   2085   
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
 2175   2086   
new file mode 100644
 2176   2087   
index 0000000..0468d80
 2177         -
-- /dev/null
        2088  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 2178   2089   
@@ -0,0 +1,12 @@
        2090  +
{
        2091  +
    "credentials": {
        2092  +
        "access_key_id": "AKIDEXAMPLE",
        2093  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2094  +
    },
        2095  +
    "expiration_in_seconds": 3600,
        2096  +
    "normalize": true,
        2097  +
    "region": "us-east-1",
        2098  +
    "service": "service",
        2099  +
    "sign_body": false,
        2100  +
    "timestamp": "2015-08-30T12:36:00Z"
        2101  +
}
              \
 No newline at end of file
 2179   2102   
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
 2180   2103   
similarity index 100%
 2181   2104   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
 2182   2105   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 2183   2106   
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
 2184   2107   
new file mode 100644
 2185   2108   
index 0000000..e503354
 2186         -
-- /dev/null
        2109  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 2187   2110   
@@ -0,0 +1 @@
        2111  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
 2188   2112   
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
 2189   2113   
new file mode 100644
 2190   2114   
index 0000000..4367892
 2191         -
-- /dev/null
        2115  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 2192   2116   
@@ -0,0 +1,5 @@
        2117  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        2118  +
Host:example.amazonaws.com
        2119  +
X-Amz-Date:20150830T123600Z
        2120  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        2121  +
 2193   2122   
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
 2194   2123   
similarity index 100%
 2195   2124   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
 2196   2125   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 2197   2126   
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
 2198   2127   
new file mode 100644
 2199   2128   
index 0000000..d7f0696
 2200         -
-- /dev/null
        2129  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 2201   2130   
@@ -0,0 +1,7 @@
        2131  +
GET
        2132  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        2133  +
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
        2134  +
host:example.amazonaws.com
        2135  +
        2136  +
host
        2137  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2202   2138   
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
 2203   2139   
new file mode 100644
 2204   2140   
index 0000000..509e972
 2205         -
-- /dev/null
        2141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 2206   2142   
@@ -0,0 +1 @@
        2143  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
 2207   2144   
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
 2208   2145   
new file mode 100644
 2209   2146   
index 0000000..79aad36
 2210         -
-- /dev/null
        2147  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 2211   2148   
@@ -0,0 +1,3 @@
        2149  +
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
        2150  +
Host:example.amazonaws.com
        2151  +
 2212   2152   
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
 2213   2153   
new file mode 100644
 2214   2154   
index 0000000..e8068b3
 2215         -
-- /dev/null
        2155  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 2216   2156   
@@ -0,0 +1,4 @@
        2157  +
AWS4-HMAC-SHA256
        2158  +
20150830T123600Z
        2159  +
20150830/us-east-1/service/aws4_request
        2160  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
 2217   2161   
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
 2218   2162   
similarity index 100%
 2219   2163   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
 2220   2164   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 2221   2165   
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
 2222   2166   
new file mode 100644
 2223   2167   
index 0000000..0468d80
 2224         -
-- /dev/null
        2168  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 2225   2169   
@@ -0,0 +1,12 @@
        2170  +
{
        2171  +
    "credentials": {
        2172  +
        "access_key_id": "AKIDEXAMPLE",
        2173  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2174  +
    },
        2175  +
    "expiration_in_seconds": 3600,
        2176  +
    "normalize": true,
        2177  +
    "region": "us-east-1",
        2178  +
    "service": "service",
        2179  +
    "sign_body": false,
        2180  +
    "timestamp": "2015-08-30T12:36:00Z"
        2181  +
}
              \
 No newline at end of file
 2226   2182   
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
 2227   2183   
similarity index 100%
 2228   2184   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
 2229   2185   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 2230   2186   
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
 2231   2187   
new file mode 100644
 2232   2188   
index 0000000..9a13676
 2233         -
-- /dev/null
        2189  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 2234   2190   
@@ -0,0 +1 @@
        2191  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
 2235   2192   
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
 2236   2193   
new file mode 100644
 2237   2194   
index 0000000..5aaf47c
 2238         -
-- /dev/null
        2195  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 2239   2196   
@@ -0,0 +1,5 @@
        2197  +
GET /ሴ HTTP/1.1
        2198  +
Host:example.amazonaws.com
        2199  +
X-Amz-Date:20150830T123600Z
        2200  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        2201  +
 2240   2202   
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
 2241   2203   
similarity index 100%
 2242   2204   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
 2243   2205   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 2244   2206   
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
 2245   2207   
new file mode 100644
 2246   2208   
index 0000000..bdb77c9
 2247         -
-- /dev/null
        2209  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 2248   2210   
@@ -0,0 +1,7 @@
        2211  +
GET
        2212  +
/%E1%88%B4
        2213  +
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
        2214  +
host:example.amazonaws.com
        2215  +
        2216  +
host
        2217  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2249   2218   
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
 2250   2219   
new file mode 100644
 2251   2220   
index 0000000..21342b3
 2252         -
-- /dev/null
        2221  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 2253   2222   
@@ -0,0 +1 @@
        2223  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 2254   2224   
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
 2255   2225   
new file mode 100644
 2256   2226   
index 0000000..368c2ff
 2257         -
-- /dev/null
        2227  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 2258   2228   
@@ -0,0 +1,3 @@
        2229  +
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
        2230  +
Host:example.amazonaws.com
        2231  +
 2259   2232   
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
 2260   2233   
new file mode 100644
 2261   2234   
index 0000000..56b8fbf
 2262         -
-- /dev/null
        2235  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 2263   2236   
@@ -0,0 +1,4 @@
        2237  +
AWS4-HMAC-SHA256
        2238  +
20150830T123600Z
        2239  +
20150830/us-east-1/service/aws4_request
        2240  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 2264   2241   
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
 2265   2242   
similarity index 62%
 2266   2243   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 2267   2244   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2268   2245   
index da4808d..9e273f6 100644
 2269         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        2246  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2270   2247   
@@ -1,3 +1,2 @@
 2271   2248   
GET /ሴ HTTP/1.1
 2272   2249   
Host:example.amazonaws.com
 2273         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2274   2250   
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
 2275   2251   
new file mode 100644
 2276   2252   
index 0000000..0468d80
 2277         -
-- /dev/null
        2253  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 2278   2254   
@@ -0,0 +1,12 @@
        2255  +
{
        2256  +
    "credentials": {
        2257  +
        "access_key_id": "AKIDEXAMPLE",
        2258  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2259  +
    },
        2260  +
    "expiration_in_seconds": 3600,
        2261  +
    "normalize": true,
        2262  +
    "region": "us-east-1",
        2263  +
    "service": "service",
        2264  +
    "sign_body": false,
        2265  +
    "timestamp": "2015-08-30T12:36:00Z"
        2266  +
}
              \
 No newline at end of file
 2279   2267   
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
 2280   2268   
similarity index 100%
 2281   2269   
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
 2282   2270   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 2283   2271   
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
 2284   2272   
new file mode 100644
 2285   2273   
index 0000000..d7f1c1c
 2286         -
-- /dev/null
        2274  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 2287   2275   
@@ -0,0 +1 @@
        2276  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 2288   2277   
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
 2289   2278   
new file mode 100644
 2290   2279   
index 0000000..1c60790
 2291         -
-- /dev/null
        2280  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 2292   2281   
@@ -0,0 +1,5 @@
        2282  +
GET /?Param1=value1 HTTP/1.1
        2283  +
Host:example.amazonaws.com
        2284  +
X-Amz-Date:20150830T123600Z
        2285  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        2286  +
 2293   2287   
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
 2294   2288   
similarity index 100%
 2295   2289   
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
 2296   2290   
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
 2297   2291   
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
 2298   2292   
new file mode 100644
 2299   2293   
index 0000000..6a823ed
 2300         -
-- /dev/null
        2294  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 2301   2295   
@@ -0,0 +1,7 @@
        2296  +
GET
        2297  +
/
        2298  +
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
        2299  +
host:example.amazonaws.com
        2300  +
        2301  +
host
        2302  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2302   2303   
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
 2303   2304   
new file mode 100644
 2304   2305   
index 0000000..8c77136
 2305         -
-- /dev/null
        2306  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 2306   2307   
@@ -0,0 +1 @@
        2308  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 2307   2309   
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
 2308   2310   
new file mode 100644
 2309   2311   
index 0000000..2d337d8
 2310         -
-- /dev/null
        2312  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 2311   2313   
@@ -0,0 +1,3 @@
        2314  +
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
        2315  +
Host:example.amazonaws.com
        2316  +
 2312   2317   
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
 2313   2318   
new file mode 100644
 2314   2319   
index 0000000..191a484
 2315         -
-- /dev/null
        2320  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 2316   2321   
@@ -0,0 +1,4 @@
        2322  +
AWS4-HMAC-SHA256
        2323  +
20150830T123600Z
        2324  +
20150830/us-east-1/service/aws4_request
        2325  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 2317   2326   
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
 2318   2327   
similarity index 100%
 2319   2328   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 2320   2329   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 2321   2330   
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
 2322   2331   
new file mode 100644
 2323   2332   
index 0000000..0468d80
 2324         -
-- /dev/null
        2333  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 2325   2334   
@@ -0,0 +1,12 @@
        2335  +
{
        2336  +
    "credentials": {
        2337  +
        "access_key_id": "AKIDEXAMPLE",
        2338  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2339  +
    },
        2340  +
    "expiration_in_seconds": 3600,
        2341  +
    "normalize": true,
        2342  +
    "region": "us-east-1",
        2343  +
    "service": "service",
        2344  +
    "sign_body": false,
        2345  +
    "timestamp": "2015-08-30T12:36:00Z"
        2346  +
}
              \
 No newline at end of file
 2326   2347   
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
 2327   2348   
new file mode 100644
 2328   2349   
index 0000000..0c8ba21
 2329         -
-- /dev/null
        2350  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 2330   2351   
@@ -0,0 +1,8 @@
        2352  +
GET
        2353  +
/
        2354  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        2355  +
host:example.amazonaws.com
        2356  +
x-amz-date:20150830T123600Z
        2357  +
        2358  +
host;x-amz-date
        2359  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2331   2360   
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
 2332   2361   
new file mode 100644
 2333   2362   
index 0000000..9ab65ed
 2334         -
-- /dev/null
        2363  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 2335   2364   
@@ -0,0 +1 @@
        2365  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 2336   2366   
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
 2337   2367   
new file mode 100644
 2338   2368   
index 0000000..0bcdf98
 2339         -
-- /dev/null
        2369  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 2340   2370   
@@ -0,0 +1,5 @@
        2371  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2372  +
Host:example.amazonaws.com
        2373  +
X-Amz-Date:20150830T123600Z
        2374  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        2375  +
 2341   2376   
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
 2342   2377   
new file mode 100644
 2343   2378   
index 0000000..bf674ad
 2344         -
-- /dev/null
        2379  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 2345   2380   
@@ -0,0 +1,4 @@
        2381  +
AWS4-HMAC-SHA256
        2382  +
20150830T123600Z
        2383  +
20150830/us-east-1/service/aws4_request
        2384  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 2346   2385   
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
 2347   2386   
new file mode 100644
 2348   2387   
index 0000000..3f590a4
 2349         -
-- /dev/null
        2388  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 2350   2389   
@@ -0,0 +1,7 @@
        2390  +
GET
        2391  +
/
        2392  +
%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
        2393  +
host:example.amazonaws.com
        2394  +
        2395  +
host
        2396  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2351   2397   
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
 2352   2398   
new file mode 100644
 2353   2399   
index 0000000..e225eab
 2354         -
-- /dev/null
        2400  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 2355   2401   
@@ -0,0 +1 @@
        2402  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 2356   2403   
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
 2357   2404   
new file mode 100644
 2358   2405   
index 0000000..6206719
 2359         -
-- /dev/null
        2406  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 2360   2407   
@@ -0,0 +1,3 @@
        2408  +
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
        2409  +
Host:example.amazonaws.com
        2410  +
 2361   2411   
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
 2362   2412   
new file mode 100644
 2363   2413   
index 0000000..81a4210
 2364         -
-- /dev/null
        2414  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2365   2415   
@@ -0,0 +1,4 @@
        2416  +
AWS4-HMAC-SHA256
        2417  +
20150830T123600Z
        2418  +
20150830/us-east-1/service/aws4_request
        2419  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 2366   2420   
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
 2367   2421   
new file mode 100644
 2368   2422   
index 0000000..368c6e3
 2369         -
-- /dev/null
        2423  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2370   2424   
@@ -0,0 +1,2 @@
        2425  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2426  +
Host:example.amazonaws.com
 2371   2427   
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
 2372   2428   
new file mode 100644
 2373   2429   
index 0000000..0468d80
 2374         -
-- /dev/null
        2430  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2375   2431   
@@ -0,0 +1,12 @@
        2432  +
{
        2433  +
    "credentials": {
        2434  +
        "access_key_id": "AKIDEXAMPLE",
        2435  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2436  +
    },
        2437  +
    "expiration_in_seconds": 3600,
        2438  +
    "normalize": true,
        2439  +
    "region": "us-east-1",
        2440  +
    "service": "service",
        2441  +
    "sign_body": false,
        2442  +
    "timestamp": "2015-08-30T12:36:00Z"
        2443  +
}
              \
 No newline at end of file
 2376   2444   
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
 2377   2445   
similarity index 100%
 2378   2446   
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
 2379   2447   
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
 2380   2448   
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
 2381   2449   
new file mode 100644
 2382   2450   
index 0000000..6a8cb9d
 2383         -
-- /dev/null
        2451  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2384   2452   
@@ -0,0 +1 @@
        2453  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 2385   2454   
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
 2386   2455   
new file mode 100644
 2387   2456   
index 0000000..f78a9d2
 2388         -
-- /dev/null
        2457  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2389   2458   
@@ -0,0 +1,5 @@
        2459  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        2460  +
Host:example.amazonaws.com
        2461  +
X-Amz-Date:20150830T123600Z
        2462  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        2463  +
 2390   2464   
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
 2391   2465   
similarity index 100%
 2392   2466   
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
 2393   2467   
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
 2394   2468   
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
 2395   2469   
new file mode 100644
 2396   2470   
index 0000000..a6e1bc7
 2397         -
-- /dev/null
        2471  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2398   2472   
@@ -0,0 +1,7 @@
        2473  +
GET
        2474  +
/
        2475  +
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
        2476  +
host:example.amazonaws.com
        2477  +
        2478  +
host
        2479  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2399   2480   
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
 2400   2481   
new file mode 100644
 2401   2482   
index 0000000..d6e6a88
 2402         -
-- /dev/null
        2483  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2403   2484   
@@ -0,0 +1 @@
        2485  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 2404   2486   
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
 2405   2487   
new file mode 100644
 2406   2488   
index 0000000..538e2f0
 2407         -
-- /dev/null
        2489  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2408   2490   
@@ -0,0 +1,3 @@
        2491  +
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
        2492  +
Host:example.amazonaws.com
        2493  +
 2409   2494   
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
 2410   2495   
new file mode 100644
 2411   2496   
index 0000000..e696085
 2412         -
-- /dev/null
        2497  +
++ 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
 2413   2498   
@@ -0,0 +1,4 @@
        2499  +
AWS4-HMAC-SHA256
        2500  +
20150830T123600Z
        2501  +
20150830/us-east-1/service/aws4_request
        2502  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 2414   2503   
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
 2415   2504   
similarity index 100%
 2416   2505   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 2417   2506   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2418   2507   
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
 2419   2508   
new file mode 100644
 2420   2509   
index 0000000..0468d80
 2421         -
-- /dev/null
        2510  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2422   2511   
@@ -0,0 +1,12 @@
        2512  +
{
        2513  +
    "credentials": {
        2514  +
        "access_key_id": "AKIDEXAMPLE",
        2515  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2516  +
    },
        2517  +
    "expiration_in_seconds": 3600,
        2518  +
    "normalize": true,
        2519  +
    "region": "us-east-1",
        2520  +
    "service": "service",
        2521  +
    "sign_body": false,
        2522  +
    "timestamp": "2015-08-30T12:36:00Z"
        2523  +
}
              \
 No newline at end of file
 2423   2524   
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
 2424   2525   
similarity index 100%
 2425   2526   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 2426   2527   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2427   2528   
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
 2428   2529   
new file mode 100644
 2429   2530   
index 0000000..876a64b
 2430         -
-- /dev/null
        2531  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2431   2532   
@@ -0,0 +1 @@
        2533  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 2432   2534   
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
 2433   2535   
similarity index 50%
 2434   2536   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 2435   2537   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2436   2538   
index ba1ef40..9d0d993 100644
 2437         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        2539  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2438   2540   
@@ -1,4 +1,5 @@
 2439   2541   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 2440   2542   
Host:example.amazonaws.com
 2441   2543   
X-Amz-Date:20150830T123600Z
 2442         -
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
        2544  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        2545  +
 2443   2546   
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
 2444   2547   
similarity index 100%
 2445   2548   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 2446   2549   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2447   2550   
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
 2448   2551   
new file mode 100644
 2449   2552   
index 0000000..a1bac59
 2450         -
-- /dev/null
        2553  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2451   2554   
@@ -0,0 +1,7 @@
        2555  +
GET
        2556  +
/
        2557  +
-._~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
        2558  +
host:example.amazonaws.com
        2559  +
        2560  +
host
        2561  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2452   2562   
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
 2453   2563   
new file mode 100644
 2454   2564   
index 0000000..41881e9
 2455         -
-- /dev/null
        2565  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2456   2566   
@@ -0,0 +1 @@
        2567  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 2457   2568   
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
 2458   2569   
new file mode 100644
 2459   2570   
index 0000000..3179076
 2460         -
-- /dev/null
        2571  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2461   2572   
@@ -0,0 +1,3 @@
        2573  +
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
        2574  +
Host:example.amazonaws.com
        2575  +
 2462   2576   
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
 2463   2577   
new file mode 100644
 2464   2578   
index 0000000..6d675fc
 2465         -
-- /dev/null
        2579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2466   2580   
@@ -0,0 +1,4 @@
        2581  +
AWS4-HMAC-SHA256
        2582  +
20150830T123600Z
        2583  +
20150830/us-east-1/service/aws4_request
        2584  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 2467   2585   
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
 2468   2586   
similarity index 100%
 2469   2587   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 2470   2588   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2471   2589   
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
 2472   2590   
new file mode 100644
 2473   2591   
index 0000000..0468d80
 2474         -
-- /dev/null
        2592  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2475   2593   
@@ -0,0 +1,12 @@
        2594  +
{
        2595  +
    "credentials": {
        2596  +
        "access_key_id": "AKIDEXAMPLE",
        2597  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2598  +
    },
        2599  +
    "expiration_in_seconds": 3600,
        2600  +
    "normalize": true,
        2601  +
    "region": "us-east-1",
        2602  +
    "service": "service",
        2603  +
    "sign_body": false,
        2604  +
    "timestamp": "2015-08-30T12:36:00Z"
        2605  +
}
              \
 No newline at end of file
 2476   2606   
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
 2477   2607   
similarity index 100%
 2478   2608   
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
 2479   2609   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2480   2610   
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
 2481   2611   
new file mode 100644
 2482   2612   
index 0000000..87f295f
 2483         -
-- /dev/null
        2613  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2484   2614   
@@ -0,0 +1 @@
        2615  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2485   2616   
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
 2486   2617   
new file mode 100644
 2487   2618   
index 0000000..36b86e7
 2488         -
-- /dev/null
        2619  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2489   2620   
@@ -0,0 +1,5 @@
        2621  +
GET / HTTP/1.1
        2622  +
Host:example.amazonaws.com
        2623  +
X-Amz-Date:20150830T123600Z
        2624  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2625  +
 2490   2626   
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
 2491   2627   
similarity index 100%
 2492   2628   
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
 2493   2629   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2494   2630   
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
 2495   2631   
new file mode 100644
 2496   2632   
index 0000000..fb2420d
 2497         -
-- /dev/null
        2633  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2498   2634   
@@ -0,0 +1,7 @@
        2635  +
GET
        2636  +
/
        2637  +
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
        2638  +
host:example.amazonaws.com
        2639  +
        2640  +
host
        2641  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2499   2642   
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
 2500   2643   
new file mode 100644
 2501   2644   
index 0000000..da5c905
 2502         -
-- /dev/null
        2645  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2503   2646   
@@ -0,0 +1 @@
        2647  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2504   2648   
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
 2505   2649   
new file mode 100644
 2506   2650   
index 0000000..eeb7a8f
 2507         -
-- /dev/null
        2651  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2508   2652   
@@ -0,0 +1,3 @@
        2653  +
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
        2654  +
Host:example.amazonaws.com
        2655  +
 2509   2656   
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
 2510   2657   
new file mode 100644
 2511   2658   
index 0000000..d837e67
 2512         -
-- /dev/null
        2659  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2513   2660   
@@ -0,0 +1,4 @@
        2661  +
AWS4-HMAC-SHA256
        2662  +
20150830T123600Z
        2663  +
20150830/us-east-1/service/aws4_request
        2664  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2514   2665   
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
 2515   2666   
similarity index 100%
 2516   2667   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 2517   2668   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2518   2669   
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
 2519   2670   
new file mode 100644
 2520   2671   
index 0000000..0468d80
 2521         -
-- /dev/null
        2672  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2522   2673   
@@ -0,0 +1,12 @@
        2674  +
{
        2675  +
    "credentials": {
        2676  +
        "access_key_id": "AKIDEXAMPLE",
        2677  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2678  +
    },
        2679  +
    "expiration_in_seconds": 3600,
        2680  +
    "normalize": true,
        2681  +
    "region": "us-east-1",
        2682  +
    "service": "service",
        2683  +
    "sign_body": false,
        2684  +
    "timestamp": "2015-08-30T12:36:00Z"
        2685  +
}
              \
 No newline at end of file
 2523   2686   
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
 2524   2687   
similarity index 100%
 2525   2688   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 2526   2689   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2527   2690   
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
 2528   2691   
new file mode 100644
 2529   2692   
index 0000000..19a2cc9
 2530         -
-- /dev/null
        2693  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2531   2694   
@@ -0,0 +1 @@
        2695  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 2532   2696   
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
 2533   2697   
new file mode 100644
 2534   2698   
index 0000000..acb13ee
 2535         -
-- /dev/null
        2699  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2536   2700   
@@ -0,0 +1,5 @@
        2701  +
GET /?ሴ=bar HTTP/1.1
        2702  +
Host:example.amazonaws.com
        2703  +
X-Amz-Date:20150830T123600Z
        2704  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2705  +
 2537   2706   
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
 2538   2707   
similarity index 100%
 2539   2708   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 2540   2709   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2541   2710   
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
 2542   2711   
new file mode 100644
 2543   2712   
index 0000000..92cee62
 2544         -
-- /dev/null
        2713  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2545   2714   
@@ -0,0 +1,7 @@
        2715  +
GET
        2716  +
/
        2717  +
%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
        2718  +
host:example.amazonaws.com
        2719  +
        2720  +
host
        2721  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2546   2722   
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
 2547   2723   
new file mode 100644
 2548   2724   
index 0000000..c9e49de
 2549         -
-- /dev/null
        2725  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2550   2726   
@@ -0,0 +1 @@
        2727  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 2551   2728   
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
 2552   2729   
new file mode 100644
 2553   2730   
index 0000000..8f4d8d0
 2554         -
-- /dev/null
        2731  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2555   2732   
@@ -0,0 +1,3 @@
        2733  +
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
        2734  +
Host:example.amazonaws.com
        2735  +
 2556   2736   
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
 2557   2737   
new file mode 100644
 2558   2738   
index 0000000..a6181dc
 2559         -
-- /dev/null
        2739  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2560   2740   
@@ -0,0 +1,4 @@
        2741  +
AWS4-HMAC-SHA256
        2742  +
20150830T123600Z
        2743  +
20150830/us-east-1/service/aws4_request
        2744  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 2561   2745   
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
 2562   2746   
similarity index 64%
 2563   2747   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 2564   2748   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2565   2749   
index cc2757e..aff333a 100644
 2566         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2750  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2567   2751   
@@ -1,3 +1,2 @@
 2568   2752   
GET /?ሴ=bar HTTP/1.1
 2569   2753   
Host:example.amazonaws.com
 2570         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2571   2754   
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
 2572   2755   
similarity index 99%
 2573   2756   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 2574   2757   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2575   2758   
index a457c8a..a334e18 100644
 2576         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
        2759  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2577   2760   
@@ -1,13 +1,13 @@
 2578   2761   
{
 2579   2762   
    "credentials": {
 2580   2763   
        "access_key_id": "AKIDEXAMPLE",
 2581   2764   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
 2582   2765   
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
 2583   2766   
    },
 2584   2767   
    "expiration_in_seconds": 3600,
 2585   2768   
    "normalize": true,
 2586   2769   
    "region": "us-east-1",
 2587   2770   
    "service": "service",
 2588   2771   
    "sign_body": false,
 2589   2772   
    "timestamp": "2015-08-30T12:36:00Z"
 2590         -
}
        2773  +
}
              \
 No newline at end of file
 2591   2774   
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
 2592   2775   
new file mode 100644
 2593   2776   
index 0000000..ccacdeb
 2594         -
-- /dev/null
        2777  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2595   2778   
@@ -0,0 +1,9 @@
        2779  +
GET
        2780  +
/
        2781  +
        2782  +
host:example.amazonaws.com
        2783  +
x-amz-date:20150830T123600Z
        2784  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2785  +
        2786  +
host;x-amz-date;x-amz-security-token
        2787  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2596   2788   
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
 2597   2789   
new file mode 100644
 2598   2790   
index 0000000..083e30d
 2599         -
-- /dev/null
        2791  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2600   2792   
@@ -0,0 +1 @@
        2793  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 2601   2794   
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
 2602   2795   
new file mode 100644
 2603   2796   
index 0000000..5287932
 2604         -
-- /dev/null
        2797  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2605   2798   
@@ -0,0 +1,6 @@
        2799  +
GET / HTTP/1.1
        2800  +
Host:example.amazonaws.com
        2801  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2802  +
X-Amz-Date:20150830T123600Z
        2803  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2804  +
 2606   2805   
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
 2607   2806   
new file mode 100644
 2608   2807   
index 0000000..742b880
 2609         -
-- /dev/null
        2808  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2610   2809   
@@ -0,0 +1,4 @@
        2810  +
AWS4-HMAC-SHA256
        2811  +
20150830T123600Z
        2812  +
20150830/us-east-1/service/aws4_request
        2813  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 2611   2814   
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
 2612   2815   
new file mode 100644
 2613   2816   
index 0000000..5e75179
 2614         -
-- /dev/null
        2817  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2615   2818   
@@ -0,0 +1,7 @@
        2819  +
GET
        2820  +
/
        2821  +
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
        2822  +
host:example.amazonaws.com
        2823  +
        2824  +
host
        2825  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2616   2826   
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
 2617   2827   
new file mode 100644
 2618   2828   
index 0000000..50b947f
 2619         -
-- /dev/null
        2829  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2620   2830   
@@ -0,0 +1 @@
        2831  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 2621   2832   
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
 2622   2833   
new file mode 100644
 2623   2834   
index 0000000..aee910b
 2624         -
-- /dev/null
        2835  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2625   2836   
@@ -0,0 +1,3 @@
        2837  +
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
        2838  +
Host:example.amazonaws.com
        2839  +
 2626   2840   
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
 2627   2841   
new file mode 100644
 2628   2842   
index 0000000..04a6c17
 2629         -
-- /dev/null
        2843  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2630   2844   
@@ -0,0 +1,4 @@
        2845  +
AWS4-HMAC-SHA256
        2846  +
20150830T123600Z
        2847  +
20150830/us-east-1/service/aws4_request
        2848  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 2631   2849   
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
 2632   2850   
similarity index 100%
 2633   2851   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 2634   2852   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2635   2853   
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
 2636   2854   
new file mode 100644
 2637   2855   
index 0000000..0468d80
 2638         -
-- /dev/null
        2856  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2639   2857   
@@ -0,0 +1,12 @@
        2858  +
{
        2859  +
    "credentials": {
        2860  +
        "access_key_id": "AKIDEXAMPLE",
        2861  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2862  +
    },
        2863  +
    "expiration_in_seconds": 3600,
        2864  +
    "normalize": true,
        2865  +
    "region": "us-east-1",
        2866  +
    "service": "service",
        2867  +
    "sign_body": false,
        2868  +
    "timestamp": "2015-08-30T12:36:00Z"
        2869  +
}
              \
 No newline at end of file
 2640   2870   
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
 2641   2871   
similarity index 100%
 2642   2872   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 2643   2873   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2644   2874   
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
 2645   2875   
new file mode 100644
 2646   2876   
index 0000000..87f295f
 2647         -
-- /dev/null
        2877  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2648   2878   
@@ -0,0 +1 @@
        2879  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2649   2880   
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
 2650   2881   
new file mode 100644
 2651   2882   
index 0000000..36b86e7
 2652         -
-- /dev/null
        2883  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2653   2884   
@@ -0,0 +1,5 @@
        2885  +
GET / HTTP/1.1
        2886  +
Host:example.amazonaws.com
        2887  +
X-Amz-Date:20150830T123600Z
        2888  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2889  +
 2654   2890   
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
 2655   2891   
similarity index 100%
 2656   2892   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 2657   2893   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2658   2894   
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
 2659   2895   
new file mode 100644
 2660   2896   
index 0000000..fb2420d
 2661         -
-- /dev/null
        2897  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2662   2898   
@@ -0,0 +1,7 @@
        2899  +
GET
        2900  +
/
        2901  +
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
        2902  +
host:example.amazonaws.com
        2903  +
        2904  +
host
        2905  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2663   2906   
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
 2664   2907   
new file mode 100644
 2665   2908   
index 0000000..da5c905
 2666         -
-- /dev/null
        2909  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2667   2910   
@@ -0,0 +1 @@
        2911  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2668   2912   
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
 2669   2913   
new file mode 100644
 2670   2914   
index 0000000..eeb7a8f
 2671         -
-- /dev/null
        2915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2672   2916   
@@ -0,0 +1,3 @@
        2917  +
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
        2918  +
Host:example.amazonaws.com
        2919  +
 2673   2920   
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
 2674   2921   
new file mode 100644
 2675   2922   
index 0000000..d837e67
 2676         -
-- /dev/null
        2923  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2677   2924   
@@ -0,0 +1,4 @@
        2925  +
AWS4-HMAC-SHA256
        2926  +
20150830T123600Z
        2927  +
20150830/us-east-1/service/aws4_request
        2928  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2678   2929   
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
 2679   2930   
similarity index 100%
 2680   2931   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 2681   2932   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2682   2933   
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
 2683   2934   
new file mode 100644
 2684   2935   
index 0000000..0468d80
 2685         -
-- /dev/null
        2936  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2686   2937   
@@ -0,0 +1,12 @@
        2938  +
{
        2939  +
    "credentials": {
        2940  +
        "access_key_id": "AKIDEXAMPLE",
        2941  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2942  +
    },
        2943  +
    "expiration_in_seconds": 3600,
        2944  +
    "normalize": true,
        2945  +
    "region": "us-east-1",
        2946  +
    "service": "service",
        2947  +
    "sign_body": false,
        2948  +
    "timestamp": "2015-08-30T12:36:00Z"
        2949  +
}
              \
 No newline at end of file
 2687   2950   
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
 2688   2951   
similarity index 100%
 2689   2952   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 2690   2953   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2691   2954   
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
 2692   2955   
new file mode 100644
 2693   2956   
index 0000000..629487f
 2694         -
-- /dev/null
        2957  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2695   2958   
@@ -0,0 +1 @@
        2959  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2696   2960   
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
 2697   2961   
new file mode 100644
 2698   2962   
index 0000000..0d99b1c
 2699         -
-- /dev/null
        2963  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2700   2964   
@@ -0,0 +1,5 @@
        2965  +
POST / HTTP/1.1
        2966  +
Host:example.amazonaws.com
        2967  +
X-Amz-Date:20150830T123600Z
        2968  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2969  +
 2701   2970   
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
 2702   2971   
similarity index 100%
 2703   2972   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 2704   2973   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2705   2974   
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
 2706   2975   
new file mode 100644
 2707   2976   
index 0000000..d3341e7
 2708         -
-- /dev/null
        2977  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2709   2978   
@@ -0,0 +1,7 @@
        2979  +
POST
        2980  +
/
        2981  +
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
        2982  +
host:example.amazonaws.com
        2983  +
        2984  +
host
        2985  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2710   2986   
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
 2711   2987   
new file mode 100644
 2712   2988   
index 0000000..79f7e0d
 2713         -
-- /dev/null
        2989  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2714   2990   
@@ -0,0 +1 @@
        2991  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2715   2992   
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
 2716   2993   
new file mode 100644
 2717   2994   
index 0000000..94f1b21
 2718         -
-- /dev/null
        2995  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2719   2996   
@@ -0,0 +1,3 @@
        2997  +
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
        2998  +
Host:example.amazonaws.com
        2999  +
 2720   3000   
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
 2721   3001   
new file mode 100644
 2722   3002   
index 0000000..e8f335b
 2723         -
-- /dev/null
        3003  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2724   3004   
@@ -0,0 +1,4 @@
        3005  +
AWS4-HMAC-SHA256
        3006  +
20150830T123600Z
        3007  +
20150830/us-east-1/service/aws4_request
        3008  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2725   3009   
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
 2726   3010   
similarity index 100%
 2727   3011   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 2728   3012   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2729   3013   
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
 2730   3014   
new file mode 100644
 2731   3015   
index 0000000..0468d80
 2732         -
-- /dev/null
        3016  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2733   3017   
@@ -0,0 +1,12 @@
        3018  +
{
        3019  +
    "credentials": {
        3020  +
        "access_key_id": "AKIDEXAMPLE",
        3021  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3022  +
    },
        3023  +
    "expiration_in_seconds": 3600,
        3024  +
    "normalize": true,
        3025  +
    "region": "us-east-1",
        3026  +
    "service": "service",
        3027  +
    "sign_body": false,
        3028  +
    "timestamp": "2015-08-30T12:36:00Z"
        3029  +
}
              \
 No newline at end of file
 2734   3030   
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
 2735   3031   
similarity index 100%
 2736   3032   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 2737   3033   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2738   3034   
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
 2739   3035   
new file mode 100644
 2740   3036   
index 0000000..e4e6428
 2741         -
-- /dev/null
        3037  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2742   3038   
@@ -0,0 +1 @@
        3039  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 2743   3040   
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
 2744   3041   
new file mode 100644
 2745   3042   
index 0000000..e3778f5
 2746         -
-- /dev/null
        3043  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2747   3044   
@@ -0,0 +1,6 @@
        3045  +
POST / HTTP/1.1
        3046  +
Host:example.amazonaws.com
        3047  +
My-Header1:value1
        3048  +
X-Amz-Date:20150830T123600Z
        3049  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        3050  +
 2748   3051   
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
 2749   3052   
similarity index 100%
 2750   3053   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 2751   3054   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2752   3055   
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
 2753   3056   
new file mode 100644
 2754   3057   
index 0000000..bd7c937
 2755         -
-- /dev/null
        3058  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2756   3059   
@@ -0,0 +1,8 @@
        3060  +
POST
        3061  +
/
        3062  +
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
        3063  +
host:example.amazonaws.com
        3064  +
my-header1:value1
        3065  +
        3066  +
host;my-header1
        3067  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2757   3068   
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
 2758   3069   
new file mode 100644
 2759   3070   
index 0000000..0416f13
 2760         -
-- /dev/null
        3071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2761   3072   
@@ -0,0 +1 @@
        3073  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 2762   3074   
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
 2763   3075   
new file mode 100644
 2764   3076   
index 0000000..5e6522f
 2765         -
-- /dev/null
        3077  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2766   3078   
@@ -0,0 +1,4 @@
        3079  +
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
        3080  +
Host:example.amazonaws.com
        3081  +
My-Header1:value1
        3082  +
 2767   3083   
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
 2768   3084   
new file mode 100644
 2769   3085   
index 0000000..d06d1df
 2770         -
-- /dev/null
        3086  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2771   3087   
@@ -0,0 +1,4 @@
        3088  +
AWS4-HMAC-SHA256
        3089  +
20150830T123600Z
        3090  +
20150830/us-east-1/service/aws4_request
        3091  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 2772   3092   
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
 2773   3093   
similarity index 100%
 2774   3094   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 2775   3095   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2776   3096   
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
 2777   3097   
new file mode 100644
 2778   3098   
index 0000000..0468d80
 2779         -
-- /dev/null
        3099  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2780   3100   
@@ -0,0 +1,12 @@
        3101  +
{
        3102  +
    "credentials": {
        3103  +
        "access_key_id": "AKIDEXAMPLE",
        3104  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3105  +
    },
        3106  +
    "expiration_in_seconds": 3600,
        3107  +
    "normalize": true,
        3108  +
    "region": "us-east-1",
        3109  +
    "service": "service",
        3110  +
    "sign_body": false,
        3111  +
    "timestamp": "2015-08-30T12:36:00Z"
        3112  +
}
              \
 No newline at end of file
 2781   3113   
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
 2782   3114   
similarity index 100%
 2783   3115   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 2784   3116   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2785   3117   
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
 2786   3118   
new file mode 100644
 2787   3119   
index 0000000..bb3809c
 2788         -
-- /dev/null
        3120  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2789   3121   
@@ -0,0 +1 @@
        3122  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 2790   3123   
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
 2791   3124   
new file mode 100644
 2792   3125   
index 0000000..10f6761
 2793         -
-- /dev/null
        3126  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2794   3127   
@@ -0,0 +1,6 @@
        3128  +
POST / HTTP/1.1
        3129  +
Host:example.amazonaws.com
        3130  +
My-Header1:VALUE1
        3131  +
X-Amz-Date:20150830T123600Z
        3132  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        3133  +
 2795   3134   
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
 2796   3135   
similarity index 100%
 2797   3136   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 2798   3137   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2799   3138   
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
 2800   3139   
new file mode 100644
 2801   3140   
index 0000000..f84856f
 2802         -
-- /dev/null
        3141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2803   3142   
@@ -0,0 +1,8 @@
        3143  +
POST
        3144  +
/
        3145  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host%3Bmy-header1
        3146  +
host:example.amazonaws.com
        3147  +
my-header1:VALUE1
        3148  +
        3149  +
host;my-header1
        3150  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2804   3151   
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
 2805   3152   
new file mode 100644
 2806   3153   
index 0000000..a9d3cac
 2807         -
-- /dev/null
        3154  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2808   3155   
@@ -0,0 +1 @@
        3156  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 2809   3157   
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
 2810   3158   
new file mode 100644
 2811   3159   
index 0000000..cf96c7c
 2812         -
-- /dev/null
        3160  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2813   3161   
@@ -0,0 +1,4 @@
        3162  +
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
        3163  +
Host:example.amazonaws.com
        3164  +
My-Header1:VALUE1
        3165  +
 2814   3166   
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
 2815   3167   
new file mode 100644
 2816   3168   
index 0000000..47ef566
 2817         -
-- /dev/null
        3169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2818   3170   
@@ -0,0 +1,4 @@
        3171  +
AWS4-HMAC-SHA256
        3172  +
20150830T123600Z
        3173  +
20150830/us-east-1/service/aws4_request
        3174  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 2819   3175   
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
 2820   3176   
similarity index 100%
 2821   3177   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 2822   3178   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2823   3179   
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
 2824   3180   
similarity index 100%
 2825   3181   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 2826   3182   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2827   3183   
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
 2828   3184   
similarity index 100%
 2829   3185   
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
 2830   3186   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2831   3187   
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
 2832   3188   
new file mode 100644
 2833   3189   
index 0000000..629487f
 2834         -
-- /dev/null
        3190  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2835   3191   
@@ -0,0 +1 @@
        3192  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2836   3193   
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
 2837   3194   
similarity index 67%
 2838   3195   
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
 2839   3196   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2840   3197   
index 291ed07..f96ff9e 100644
 2841         -
-- 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
        3198  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2842   3199   
@@ -1,5 +1,6 @@
 2843   3200   
POST / HTTP/1.1
 2844   3201   
Host:example.amazonaws.com
 2845         -
X-Amz-Date:20150830T123600Z
 2846   3202   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2847         -
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
        3203  +
X-Amz-Date:20150830T123600Z
        3204  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3205  +
 2848   3206   
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
 2849   3207   
similarity index 100%
 2850   3208   
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
 2851   3209   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2852   3210   
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
 2853   3211   
new file mode 100644
 2854   3212   
index 0000000..d3341e7
 2855         -
-- /dev/null
        3213  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 2856   3214   
@@ -0,0 +1,7 @@
        3215  +
POST
        3216  +
/
        3217  +
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
        3218  +
host:example.amazonaws.com
        3219  +
        3220  +
host
        3221  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2857   3222   
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
 2858   3223   
new file mode 100644
 2859   3224   
index 0000000..79f7e0d
 2860         -
-- /dev/null
        3225  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 2861   3226   
@@ -0,0 +1 @@
        3227  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2862   3228   
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
 2863   3229   
new file mode 100644
 2864   3230   
index 0000000..4983268
 2865         -
-- /dev/null
        3231  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 2866   3232   
@@ -0,0 +1,3 @@
        3233  +
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
        3234  +
Host:example.amazonaws.com
        3235  +
 2867   3236   
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
 2868   3237   
new file mode 100644
 2869   3238   
index 0000000..e8f335b
 2870         -
-- /dev/null
        3239  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 2871   3240   
@@ -0,0 +1,4 @@
        3241  +
AWS4-HMAC-SHA256
        3242  +
20150830T123600Z
        3243  +
20150830/us-east-1/service/aws4_request
        3244  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2872   3245   
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
 2873   3246   
similarity index 100%
 2874   3247   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 2875   3248   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 2876   3249   
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
 2877   3250   
similarity index 100%
 2878   3251   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 2879   3252   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 2880   3253   
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
 2881   3254   
similarity index 100%
 2882   3255   
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
 2883   3256   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2884   3257   
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
 2885   3258   
new file mode 100644
 2886   3259   
index 0000000..85a7c29
 2887         -
-- /dev/null
        3260  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 2888   3261   
@@ -0,0 +1 @@
        3262  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 2889   3263   
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
 2890   3264   
similarity index 65%
 2891   3265   
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
 2892   3266   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2893   3267   
index 37b2f04..4d0b143 100644
 2894         -
-- 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
        3268  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2895   3269   
@@ -1,5 +1,6 @@
 2896   3270   
POST / HTTP/1.1
 2897   3271   
Host:example.amazonaws.com
 2898         -
X-Amz-Date:20150830T123600Z
 2899   3272   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2900         -
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
        3273  +
X-Amz-Date:20150830T123600Z
        3274  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        3275  +
 2901   3276   
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
 2902   3277   
similarity index 100%
 2903   3278   
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
 2904   3279   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 2905   3280   
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
 2906   3281   
new file mode 100644
 2907   3282   
index 0000000..57a7bc3
 2908         -
-- /dev/null
        3283  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 2909   3284   
@@ -0,0 +1,7 @@
        3285  +
POST
        3286  +
/
        3287  +
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
        3288  +
host:example.amazonaws.com
        3289  +
        3290  +
host
        3291  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2910   3292   
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
 2911   3293   
new file mode 100644
 2912   3294   
index 0000000..eb905d2
 2913         -
-- /dev/null
        3295  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 2914   3296   
@@ -0,0 +1 @@
        3297  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 2915   3298   
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
 2916   3299   
new file mode 100644
 2917   3300   
index 0000000..1d80ec0
 2918         -
-- /dev/null
        3301  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 2919   3302   
@@ -0,0 +1,3 @@
        3303  +
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
        3304  +
Host:example.amazonaws.com
        3305  +
 2920   3306   
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
 2921   3307   
new file mode 100644
 2922   3308   
index 0000000..bd0239a
 2923         -
-- /dev/null
        3309  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 2924   3310   
@@ -0,0 +1,4 @@
        3311  +
AWS4-HMAC-SHA256
        3312  +
20150830T123600Z
        3313  +
20150830/us-east-1/service/aws4_request
        3314  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 2925   3315   
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
 2926   3316   
similarity index 100%
 2927   3317   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 2928   3318   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 2929   3319   
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
 2930   3320   
new file mode 100644
 2931   3321   
index 0000000..0468d80
 2932         -
-- /dev/null
        3322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 2933   3323   
@@ -0,0 +1,12 @@
        3324  +
{
        3325  +
    "credentials": {
        3326  +
        "access_key_id": "AKIDEXAMPLE",
        3327  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3328  +
    },
        3329  +
    "expiration_in_seconds": 3600,
        3330  +
    "normalize": true,
        3331  +
    "region": "us-east-1",
        3332  +
    "service": "service",
        3333  +
    "sign_body": false,
        3334  +
    "timestamp": "2015-08-30T12:36:00Z"
        3335  +
}
              \
 No newline at end of file
 2934   3336   
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
 2935   3337   
similarity index 100%
 2936   3338   
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
 2937   3339   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 2938   3340   
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
 2939   3341   
new file mode 100644
 2940   3342   
index 0000000..80ed433
 2941         -
-- /dev/null
        3343  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 2942   3344   
@@ -0,0 +1 @@
        3345  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2943   3346   
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
 2944   3347   
new file mode 100644
 2945   3348   
index 0000000..4e614f8
 2946         -
-- /dev/null
        3349  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 2947   3350   
@@ -0,0 +1,5 @@
        3351  +
POST /?Param1=value1 HTTP/1.1
        3352  +
Host:example.amazonaws.com
        3353  +
X-Amz-Date:20150830T123600Z
        3354  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3355  +
 2948   3356   
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
 2949   3357   
similarity index 100%
 2950   3358   
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
 2951   3359   
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
 2952   3360   
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
 2953   3361   
new file mode 100644
 2954   3362   
index 0000000..be66403
 2955         -
-- /dev/null
        3363  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 2956   3364   
@@ -0,0 +1,7 @@
        3365  +
POST
        3366  +
/
        3367  +
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
        3368  +
host:example.amazonaws.com
        3369  +
        3370  +
host
        3371  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2957   3372   
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
 2958   3373   
new file mode 100644
 2959   3374   
index 0000000..20fd32b
 2960         -
-- /dev/null
        3375  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 2961   3376   
@@ -0,0 +1 @@
        3377  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2962   3378   
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
 2963   3379   
new file mode 100644
 2964   3380   
index 0000000..d1148d0
 2965         -
-- /dev/null
        3381  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 2966   3382   
@@ -0,0 +1,3 @@
        3383  +
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
        3384  +
Host:example.amazonaws.com
        3385  +
 2967   3386   
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
 2968   3387   
new file mode 100644
 2969   3388   
index 0000000..1a77103
 2970         -
-- /dev/null
        3389  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 2971   3390   
@@ -0,0 +1,4 @@
        3391  +
AWS4-HMAC-SHA256
        3392  +
20150830T123600Z
        3393  +
20150830/us-east-1/service/aws4_request
        3394  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2972   3395   
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
 2973   3396   
similarity index 100%
 2974   3397   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 2975   3398   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 2976   3399   
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
 2977   3400   
new file mode 100644
 2978   3401   
index 0000000..0468d80
 2979         -
-- /dev/null
        3402  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 2980   3403   
@@ -0,0 +1,12 @@
        3404  +
{
        3405  +
    "credentials": {
        3406  +
        "access_key_id": "AKIDEXAMPLE",
        3407  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3408  +
    },
        3409  +
    "expiration_in_seconds": 3600,
        3410  +
    "normalize": true,
        3411  +
    "region": "us-east-1",
        3412  +
    "service": "service",
        3413  +
    "sign_body": false,
        3414  +
    "timestamp": "2015-08-30T12:36:00Z"
        3415  +
}
              \
 No newline at end of file
 2981   3416   
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
 2982   3417   
similarity index 100%
 2983   3418   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 2984   3419   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 2985   3420   
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
 2986   3421   
new file mode 100644
 2987   3422   
index 0000000..80ed433
 2988         -
-- /dev/null
        3423  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 2989   3424   
@@ -0,0 +1 @@
        3425  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2990   3426   
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
 2991   3427   
new file mode 100644
 2992   3428   
index 0000000..4e614f8
 2993         -
-- /dev/null
        3429  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 2994   3430   
@@ -0,0 +1,5 @@
        3431  +
POST /?Param1=value1 HTTP/1.1
        3432  +
Host:example.amazonaws.com
        3433  +
X-Amz-Date:20150830T123600Z
        3434  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3435  +
 2995   3436   
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
 2996   3437   
similarity index 100%
 2997   3438   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 2998   3439   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 2999   3440   
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
 3000   3441   
new file mode 100644
 3001   3442   
index 0000000..be66403
 3002         -
-- /dev/null
        3443  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 3003   3444   
@@ -0,0 +1,7 @@
        3445  +
POST
        3446  +
/
        3447  +
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
        3448  +
host:example.amazonaws.com
        3449  +
        3450  +
host
        3451  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3004   3452   
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
 3005   3453   
new file mode 100644
 3006   3454   
index 0000000..20fd32b
 3007         -
-- /dev/null
        3455  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 3008   3456   
@@ -0,0 +1 @@
        3457  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 3009   3458   
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
 3010   3459   
new file mode 100644
 3011   3460   
index 0000000..d1148d0
 3012         -
-- /dev/null
        3461  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 3013   3462   
@@ -0,0 +1,3 @@
        3463  +
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
        3464  +
Host:example.amazonaws.com
        3465  +
 3014   3466   
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
 3015   3467   
new file mode 100644
 3016   3468   
index 0000000..1a77103
 3017         -
-- /dev/null
        3469  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 3018   3470   
@@ -0,0 +1,4 @@
        3471  +
AWS4-HMAC-SHA256
        3472  +
20150830T123600Z
        3473  +
20150830/us-east-1/service/aws4_request
        3474  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 3019   3475   
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
 3020   3476   
similarity index 100%
 3021   3477   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 3022   3478   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 3023   3479   
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
 3024   3480   
new file mode 100644
 3025   3481   
index 0000000..0468d80
 3026         -
-- /dev/null
        3482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 3027   3483   
@@ -0,0 +1,12 @@
        3484  +
{
        3485  +
    "credentials": {
        3486  +
        "access_key_id": "AKIDEXAMPLE",
        3487  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3488  +
    },
        3489  +
    "expiration_in_seconds": 3600,
        3490  +
    "normalize": true,
        3491  +
    "region": "us-east-1",
        3492  +
    "service": "service",
        3493  +
    "sign_body": false,
        3494  +
    "timestamp": "2015-08-30T12:36:00Z"
        3495  +
}
              \
 No newline at end of file
 3028   3496   
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
 3029   3497   
similarity index 100%
 3030   3498   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 3031   3499   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 3032   3500   
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
 3033   3501   
new file mode 100644
 3034   3502   
index 0000000..629487f
 3035         -
-- /dev/null
        3503  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 3036   3504   
@@ -0,0 +1 @@
        3505  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 3037   3506   
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
 3038   3507   
new file mode 100644
 3039   3508   
index 0000000..0d99b1c
 3040         -
-- /dev/null
        3509  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 3041   3510   
@@ -0,0 +1,5 @@
        3511  +
POST / HTTP/1.1
        3512  +
Host:example.amazonaws.com
        3513  +
X-Amz-Date:20150830T123600Z
        3514  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3515  +
 3042   3516   
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
 3043   3517   
similarity index 100%
 3044   3518   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 3045   3519   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 3046   3520   
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
 3047   3521   
new file mode 100644
 3048   3522   
index 0000000..d3341e7
 3049         -
-- /dev/null
        3523  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 3050   3524   
@@ -0,0 +1,7 @@
        3525  +
POST
        3526  +
/
        3527  +
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
        3528  +
host:example.amazonaws.com
        3529  +
        3530  +
host
        3531  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3051   3532   
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
 3052   3533   
new file mode 100644
 3053   3534   
index 0000000..79f7e0d
 3054         -
-- /dev/null
        3535  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 3055   3536   
@@ -0,0 +1 @@
        3537  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 3056   3538   
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
 3057   3539   
new file mode 100644
 3058   3540   
index 0000000..94f1b21
 3059         -
-- /dev/null
        3541  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 3060   3542   
@@ -0,0 +1,3 @@
        3543  +
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
        3544  +
Host:example.amazonaws.com
        3545  +
 3061   3546   
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
 3062   3547   
new file mode 100644
 3063   3548   
index 0000000..e8f335b
 3064         -
-- /dev/null
        3549  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 3065   3550   
@@ -0,0 +1,4 @@
        3551  +
AWS4-HMAC-SHA256
        3552  +
20150830T123600Z
        3553  +
20150830/us-east-1/service/aws4_request
        3554  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 3066   3555   
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
 3067   3556   
similarity index 100%
 3068   3557   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 3069   3558   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 3070   3559   
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
 3071   3560   
similarity index 99%
 3072   3561   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 3073   3562   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 3074   3563   
index fc4bce6..0db1df1 100644
 3075         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
        3564  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 3076   3565   
@@ -1,12 +1,12 @@
 3077   3566   
{
 3078   3567   
    "credentials": {
 3079   3568   
        "access_key_id": "AKIDEXAMPLE",
 3080   3569   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 3081   3570   
    },
 3082   3571   
    "expiration_in_seconds": 3600,
 3083   3572   
    "normalize": true,
 3084   3573   
    "region": "us-east-1",
 3085   3574   
    "service": "service",
 3086   3575   
    "sign_body": true,
 3087   3576   
    "timestamp": "2015-08-30T12:36:00Z"
 3088         -
}
        3577  +
}
              \
 No newline at end of file
 3089   3578   
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
 3090   3579   
new file mode 100644
 3091   3580   
index 0000000..c218fdf
 3092         -
-- /dev/null
        3581  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 3093   3582   
@@ -0,0 +1,11 @@
        3583  +
POST
        3584  +
/
        3585  +
        3586  +
content-length:13
        3587  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3588  +
host:example.amazonaws.com
        3589  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3590  +
x-amz-date:20150830T123600Z
        3591  +
        3592  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3593  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3094   3594   
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
 3095   3595   
new file mode 100644
 3096   3596   
index 0000000..836aa8b
 3097         -
-- /dev/null
        3597  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 3098   3598   
@@ -0,0 +1 @@
        3599  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 3099   3600   
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
 3100   3601   
new file mode 100644
 3101   3602   
index 0000000..9262d53
 3102         -
-- /dev/null
        3603  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 3103   3604   
@@ -0,0 +1,9 @@
        3605  +
POST / HTTP/1.1
        3606  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3607  +
Host:example.amazonaws.com
        3608  +
Content-Length:13
        3609  +
X-Amz-Date:20150830T123600Z
        3610  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3611  +
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
        3612  +
        3613  +
Param1=value1
              \
 No newline at end of file
 3104   3614   
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
 3105   3615   
new file mode 100644
 3106   3616   
index 0000000..ddbdccc
 3107         -
-- /dev/null
        3617  +
++ 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
 3108   3618   
@@ -0,0 +1,4 @@
        3619  +
AWS4-HMAC-SHA256
        3620  +
20150830T123600Z
        3621  +
20150830/us-east-1/service/aws4_request
        3622  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 3109   3623   
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
 3110   3624   
new file mode 100644
 3111   3625   
index 0000000..596a579
 3112         -
-- /dev/null
        3626  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 3113   3627   
@@ -0,0 +1,9 @@
        3628  +
POST
        3629  +
/
        3630  +
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
        3631  +
content-length:13
        3632  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3633  +
host:example.amazonaws.com
        3634  +
        3635  +
content-length;content-type;host
        3636  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3114   3637   
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
 3115   3638   
new file mode 100644
 3116   3639   
index 0000000..bc85cd8
 3117         -
-- /dev/null
        3640  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 3118   3641   
@@ -0,0 +1 @@
        3642  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 3119   3643   
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
 3120   3644   
new file mode 100644
 3121   3645   
index 0000000..16b59e5
 3122         -
-- /dev/null
        3646  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 3123   3647   
@@ -0,0 +1,6 @@
        3648  +
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
        3649  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3650  +
Host:example.amazonaws.com
        3651  +
Content-Length:13
        3652  +
        3653  +
Param1=value1
              \
 No newline at end of file
 3124   3654   
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
 3125   3655   
new file mode 100644
 3126   3656   
index 0000000..50074af
 3127         -
-- /dev/null
        3657  +
++ 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
 3128   3658   
@@ -0,0 +1,4 @@
        3659  +
AWS4-HMAC-SHA256
        3660  +
20150830T123600Z
        3661  +
20150830/us-east-1/service/aws4_request
        3662  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 3129   3663   
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
 3130   3664   
similarity index 89%
 3131   3665   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 3132   3666   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 3133   3667   
index b711c25..8289eaa 100644
 3134         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
        3668  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 3135   3669   
@@ -1,6 +1,6 @@
 3136   3670   
POST / HTTP/1.1
 3137   3671   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 3138   3672   
Host:example.amazonaws.com
 3139   3673   
Content-Length:13
 3140   3674   
 3141         -
Param1=value1
        3675  +
Param1=value1
              \
 No newline at end of file
 3142   3676   
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
 3143   3677   
similarity index 99%
 3144   3678   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 3145   3679   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 3146   3680   
index fc4bce6..0db1df1 100644
 3147         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
        3681  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 3148   3682   
@@ -1,12 +1,12 @@
 3149   3683   
{
 3150   3684   
    "credentials": {
 3151   3685   
        "access_key_id": "AKIDEXAMPLE",
 3152   3686   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 3153   3687   
    },
 3154   3688   
    "expiration_in_seconds": 3600,
 3155   3689   
    "normalize": true,
 3156   3690   
    "region": "us-east-1",
 3157   3691   
    "service": "service",
 3158   3692   
    "sign_body": true,
 3159   3693   
    "timestamp": "2015-08-30T12:36:00Z"
 3160         -
}
        3694  +
}
              \
 No newline at end of file
 3161   3695   
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
 3162   3696   
new file mode 100644
 3163   3697   
index 0000000..4d116a5
 3164         -
-- /dev/null
        3698  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 3165   3699   
@@ -0,0 +1,11 @@
        3700  +
POST
        3701  +
/
        3702  +
        3703  +
content-length:13
        3704  +
content-type:application/x-www-form-urlencoded
        3705  +
host:example.amazonaws.com
        3706  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3707  +
x-amz-date:20150830T123600Z
        3708  +
        3709  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3710  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3166   3711   
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
 3167   3712   
new file mode 100644
 3168   3713   
index 0000000..0d2ac37
 3169         -
-- /dev/null
        3714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 3170   3715   
@@ -0,0 +1 @@
        3716  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 3171   3717   
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
 3172   3718   
new file mode 100644
 3173   3719   
index 0000000..bd5e49c
 3174         -
-- /dev/null
        3720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 3175   3721   
@@ -0,0 +1,9 @@
        3722  +
POST / HTTP/1.1
        3723  +
Content-Type:application/x-www-form-urlencoded
        3724  +
Host:example.amazonaws.com
        3725  +
Content-Length:13
        3726  +
X-Amz-Date:20150830T123600Z
        3727  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3728  +
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
        3729  +
        3730  +
Param1=value1
              \
 No newline at end of file
 3176   3731   
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
 3177   3732   
new file mode 100644
 3178   3733   
index 0000000..f1c599c
 3179         -
-- /dev/null
        3734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 3180   3735   
@@ -0,0 +1,4 @@
        3736  +
AWS4-HMAC-SHA256
        3737  +
20150830T123600Z
        3738  +
20150830/us-east-1/service/aws4_request
        3739  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 3181   3740   
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
 3182   3741   
new file mode 100644
 3183   3742   
index 0000000..1fc1bb7
 3184         -
-- /dev/null
        3743  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 3185   3744   
@@ -0,0 +1,9 @@
        3745  +
POST
        3746  +
/
        3747  +
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
        3748  +
content-length:13
        3749  +
content-type:application/x-www-form-urlencoded
        3750  +
host:example.amazonaws.com
        3751  +
        3752  +
content-length;content-type;host
        3753  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3186   3754   
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
 3187   3755   
new file mode 100644
 3188   3756   
index 0000000..98c91b3
 3189         -
-- /dev/null
        3757  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 3190   3758   
@@ -0,0 +1 @@
        3759  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 3191   3760   
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
 3192   3761   
new file mode 100644
 3193   3762   
index 0000000..055cd7a
 3194         -
-- /dev/null
        3763  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 3195   3764   
@@ -0,0 +1,6 @@
        3765  +
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
        3766  +
Content-Type:application/x-www-form-urlencoded
        3767  +
Host:example.amazonaws.com
        3768  +
Content-Length:13
        3769  +
        3770  +
Param1=value1
              \
 No newline at end of file
 3196   3771   
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
 3197   3772   
new file mode 100644
 3198   3773   
index 0000000..db7fc27
 3199         -
-- /dev/null
        3774  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 3200   3775   
@@ -0,0 +1,4 @@
        3776  +
AWS4-HMAC-SHA256
        3777  +
20150830T123600Z
        3778  +
20150830/us-east-1/service/aws4_request
        3779  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 3201   3780   
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
 3202   3781   
similarity index 88%
 3203   3782   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 3204   3783   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3205   3784   
index 0091102..760b2d3 100644
 3206         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
        3785  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3207   3786   
@@ -1,6 +1,6 @@
 3208   3787   
POST / HTTP/1.1
 3209   3788   
Content-Type:application/x-www-form-urlencoded
 3210   3789   
Host:example.amazonaws.com
 3211   3790   
Content-Length:13
 3212   3791   
 3213         -
Param1=value1
        3792  +
Param1=value1
              \
 No newline at end of file
 3214   3793   
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
 3215   3794   
new file mode 100644
 3216   3795   
index 0000000..0468d80
 3217         -
-- /dev/null
        3796  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 3218   3797   
@@ -0,0 +1,12 @@
        3798  +
{
        3799  +
    "credentials": {
        3800  +
        "access_key_id": "AKIDEXAMPLE",
        3801  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3802  +
    },
        3803  +
    "expiration_in_seconds": 3600,
        3804  +
    "normalize": true,
        3805  +
    "region": "us-east-1",
        3806  +
    "service": "service",
        3807  +
    "sign_body": false,
        3808  +
    "timestamp": "2015-08-30T12:36:00Z"
        3809  +
}
              \
 No newline at end of file
 3219   3810   
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
 3220   3811   
similarity index 99%
 3221   3812   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 3222   3813   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3223   3814   
index ccb5f43..1bc448e 100644
 3224         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
        3815  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3225   3816   
@@ -1,10 +1,10 @@
 3226   3817   
GET
 3227   3818   
/
 3228   3819   
 3229   3820   
host:example.amazonaws.com
 3230   3821   
my-header1:value2,value2,value1
 3231   3822   
x-amz-date:20150830T123600Z
 3232   3823   
x-amz-region-set:us-east-1
 3233   3824   
 3234   3825   
host;my-header1;x-amz-date;x-amz-region-set
 3235         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3826  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3236   3827   
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
 3237   3828   
new file mode 100644
 3238   3829   
index 0000000..489c182
 3239         -
-- /dev/null
        3830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 3240   3831   
@@ -0,0 +1 @@
        3832  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 3241   3833   
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
 3242   3834   
new file mode 100644
 3243   3835   
index 0000000..e1b8dbf
 3244         -
-- /dev/null
        3836  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 3245   3837   
@@ -0,0 +1,9 @@
        3838  +
GET / HTTP/1.1
        3839  +
Host:example.amazonaws.com
        3840  +
My-Header1:value2
        3841  +
My-Header1:value2
        3842  +
My-Header1:value1
        3843  +
X-Amz-Date:20150830T123600Z
        3844  +
X-Amz-Region-Set:us-east-1
        3845  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3846  +
 3246   3847   
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
 3247   3848   
similarity index 99%
 3248   3849   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 3249   3850   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3250   3851   
index 8783461..bfc4619 100644
 3251         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
        3852  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3252   3853   
@@ -1,4 +1,4 @@
 3253   3854   
AWS4-ECDSA-P256-SHA256
 3254   3855   
20150830T123600Z
 3255   3856   
20150830/service/aws4_request
 3256         -
30f1f7b639b7fd5982a0f700e6d23bf7bb24f2f1d9e1314005bf22130da61cdf
        3857  +
30f1f7b639b7fd5982a0f700e6d23bf7bb24f2f1d9e1314005bf22130da61cdf
              \
 No newline at end of file
 3257   3858   
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
 3258   3859   
new file mode 100644
 3259   3860   
index 0000000..379dcb2
 3260         -
-- /dev/null
        3861  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 3261   3862   
@@ -0,0 +1,4 @@
        3863  +
{
        3864  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3865  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3866  +
}
 3262   3867   
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
 3263   3868   
similarity index 99%
 3264   3869   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 3265   3870   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3266   3871   
index 9561297..c05c3f5 100644
 3267         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
        3872  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3268   3873   
@@ -1,8 +1,8 @@
 3269   3874   
GET
 3270   3875   
/
 3271   3876   
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
 3272   3877   
host:example.amazonaws.com
 3273   3878   
my-header1:value2,value2,value1
 3274   3879   
 3275   3880   
host;my-header1
 3276         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3881  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3277   3882   
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
 3278   3883   
new file mode 100644
 3279   3884   
index 0000000..de9a4c3
 3280         -
-- /dev/null
        3885  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 3281   3886   
@@ -0,0 +1 @@
        3887  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 3282   3888   
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
 3283   3889   
new file mode 100644
 3284   3890   
index 0000000..6c6b8c4
 3285         -
-- /dev/null
        3891  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 3286   3892   
@@ -0,0 +1,6 @@
        3893  +
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
        3894  +
Host:example.amazonaws.com
        3895  +
My-Header1:value2
        3896  +
My-Header1:value2
        3897  +
My-Header1:value1
        3898  +
 3287   3899   
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
 3288   3900   
similarity index 99%
 3289   3901   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 3290   3902   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3291   3903   
index 3140f6f..4eef106 100644
 3292         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
        3904  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3293   3905   
@@ -1,4 +1,4 @@
 3294   3906   
AWS4-ECDSA-P256-SHA256
 3295   3907   
20150830T123600Z
 3296   3908   
20150830/service/aws4_request
 3297         -
a6e21a0099c98cbb4ec73928a08e8b116dfd634c471a8c03c4007b5258b664ea
        3909  +
a6e21a0099c98cbb4ec73928a08e8b116dfd634c471a8c03c4007b5258b664ea
              \
 No newline at end of file
 3298   3910   
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
 3299   3911   
similarity index 78%
 3300   3912   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 3301   3913   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3302   3914   
index 08a0364..40455ce 100644
 3303         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        3915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3304   3916   
@@ -1,6 +1,5 @@
 3305   3917   
GET / HTTP/1.1
 3306   3918   
Host:example.amazonaws.com
 3307   3919   
My-Header1:value2
 3308   3920   
My-Header1:value2
 3309   3921   
My-Header1:value1
 3310         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3311   3922   
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
 3312   3923   
new file mode 100644
 3313   3924   
index 0000000..0468d80
 3314         -
-- /dev/null
        3925  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 3315   3926   
@@ -0,0 +1,12 @@
        3927  +
{
        3928  +
    "credentials": {
        3929  +
        "access_key_id": "AKIDEXAMPLE",
        3930  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3931  +
    },
        3932  +
    "expiration_in_seconds": 3600,
        3933  +
    "normalize": true,
        3934  +
    "region": "us-east-1",
        3935  +
    "service": "service",
        3936  +
    "sign_body": false,
        3937  +
    "timestamp": "2015-08-30T12:36:00Z"
        3938  +
}
              \
 No newline at end of file
 3316   3939   
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
 3317   3940   
new file mode 100644
 3318   3941   
index 0000000..69526cd
 3319         -
-- /dev/null
        3942  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 3320   3943   
@@ -0,0 +1,10 @@
        3944  +
GET
        3945  +
/
        3946  +
        3947  +
host:example.amazonaws.com
        3948  +
my-header1:value1 value2 value3
        3949  +
x-amz-date:20150830T123600Z
        3950  +
x-amz-region-set:us-east-1
        3951  +
        3952  +
host;my-header1;x-amz-date;x-amz-region-set
        3953  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3321   3954   
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
 3322   3955   
new file mode 100644
 3323   3956   
index 0000000..d51b4f3
 3324         -
-- /dev/null
        3957  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 3325   3958   
@@ -0,0 +1 @@
        3959  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 3326   3960   
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
 3327   3961   
new file mode 100644
 3328   3962   
index 0000000..8131420
 3329         -
-- /dev/null
        3963  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 3330   3964   
@@ -0,0 +1,9 @@
        3965  +
GET / HTTP/1.1
        3966  +
Host:example.amazonaws.com
        3967  +
My-Header1:value1
        3968  +
  value2
        3969  +
     value3
        3970  +
X-Amz-Date:20150830T123600Z
        3971  +
X-Amz-Region-Set:us-east-1
        3972  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        3973  +
 3331   3974   
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
 3332   3975   
new file mode 100644
 3333   3976   
index 0000000..e4d99fa
 3334         -
-- /dev/null
        3977  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 3335   3978   
@@ -0,0 +1,4 @@
        3979  +
AWS4-ECDSA-P256-SHA256
        3980  +
20150830T123600Z
        3981  +
20150830/service/aws4_request
        3982  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 3336   3983   
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
 3337   3984   
new file mode 100644
 3338   3985   
index 0000000..379dcb2
 3339         -
-- /dev/null
        3986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 3340   3987   
@@ -0,0 +1,4 @@
        3988  +
{
        3989  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3990  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3991  +
}
 3341   3992   
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
 3342   3993   
new file mode 100644
 3343   3994   
index 0000000..3c4d52f
 3344         -
-- /dev/null
        3995  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 3345   3996   
@@ -0,0 +1,8 @@
        3997  +
GET
        3998  +
/
        3999  +
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
        4000  +
host:example.amazonaws.com
        4001  +
my-header1:value1 value2 value3
        4002  +
        4003  +
host;my-header1
        4004  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3346   4005   
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
 3347   4006   
new file mode 100644
 3348   4007   
index 0000000..4e63f9a
 3349         -
-- /dev/null
        4008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 3350   4009   
@@ -0,0 +1 @@
        4010  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 3351   4011   
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
 3352   4012   
new file mode 100644
 3353   4013   
index 0000000..adf1f09
 3354         -
-- /dev/null
        4014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 3355   4015   
@@ -0,0 +1,6 @@
        4016  +
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
        4017  +
Host:example.amazonaws.com
        4018  +
My-Header1:value1
        4019  +
  value2
        4020  +
     value3
        4021  +
 3356   4022   
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
 3357   4023   
new file mode 100644
 3358   4024   
index 0000000..e085407
 3359         -
-- /dev/null
        4025  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 3360   4026   
@@ -0,0 +1,4 @@
        4027  +
AWS4-ECDSA-P256-SHA256
        4028  +
20150830T123600Z
        4029  +
20150830/service/aws4_request
        4030  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 3361   4031   
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
 3362   4032   
new file mode 100644
 3363   4033   
index 0000000..b5026cd
 3364         -
-- /dev/null
        4034  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 3365   4035   
@@ -0,0 +1,5 @@
        4036  +
GET / HTTP/1.1
        4037  +
Host:example.amazonaws.com
        4038  +
My-Header1:value1
        4039  +
  value2
        4040  +
     value3
 3366   4041   
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
 3367   4042   
new file mode 100644
 3368   4043   
index 0000000..0468d80
 3369         -
-- /dev/null
        4044  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 3370   4045   
@@ -0,0 +1,12 @@
        4046  +
{
        4047  +
    "credentials": {
        4048  +
        "access_key_id": "AKIDEXAMPLE",
        4049  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4050  +
    },
        4051  +
    "expiration_in_seconds": 3600,
        4052  +
    "normalize": true,
        4053  +
    "region": "us-east-1",
        4054  +
    "service": "service",
        4055  +
    "sign_body": false,
        4056  +
    "timestamp": "2015-08-30T12:36:00Z"
        4057  +
}
              \
 No newline at end of file
 3371   4058   
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
 3372   4059   
similarity index 99%
 3373   4060   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 3374   4061   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3375   4062   
index 9375193..533afdb 100644
 3376         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
        4063  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3377   4064   
@@ -1,10 +1,10 @@
 3378   4065   
GET
 3379   4066   
/
 3380   4067   
 3381   4068   
host:example.amazonaws.com
 3382   4069   
my-header1:value4,value1,value3,value2
 3383   4070   
x-amz-date:20150830T123600Z
 3384   4071   
x-amz-region-set:us-east-1
 3385   4072   
 3386   4073   
host;my-header1;x-amz-date;x-amz-region-set
 3387         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4074  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3388   4075   
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
 3389   4076   
new file mode 100644
 3390   4077   
index 0000000..057b426
 3391         -
-- /dev/null
        4078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 3392   4079   
@@ -0,0 +1 @@
        4080  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 3393   4081   
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
 3394   4082   
new file mode 100644
 3395   4083   
index 0000000..4e4ccf0
 3396         -
-- /dev/null
        4084  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 3397   4085   
@@ -0,0 +1,10 @@
        4086  +
GET / HTTP/1.1
        4087  +
Host:example.amazonaws.com
        4088  +
My-Header1:value4
        4089  +
My-Header1:value1
        4090  +
My-Header1:value3
        4091  +
My-Header1:value2
        4092  +
X-Amz-Date:20150830T123600Z
        4093  +
X-Amz-Region-Set:us-east-1
        4094  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        4095  +
 3398   4096   
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
 3399   4097   
similarity index 99%
 3400   4098   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 3401   4099   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3402   4100   
index 6400baf..e68c952 100644
 3403         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
        4101  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3404   4102   
@@ -1,4 +1,4 @@
 3405   4103   
AWS4-ECDSA-P256-SHA256
 3406   4104   
20150830T123600Z
 3407   4105   
20150830/service/aws4_request
 3408         -
e1c3b5d34632ffff080330b3bc31906c8988bf1683f4af689ef3f1811952df36
        4106  +
e1c3b5d34632ffff080330b3bc31906c8988bf1683f4af689ef3f1811952df36
              \
 No newline at end of file
 3409   4107   
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
 3410   4108   
new file mode 100644
 3411   4109   
index 0000000..379dcb2
 3412         -
-- /dev/null
        4110  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 3413   4111   
@@ -0,0 +1,4 @@
        4112  +
{
        4113  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4114  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4115  +
}
 3414   4116   
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
 3415   4117   
similarity index 99%
 3416   4118   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 3417   4119   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3418   4120   
index ecf494a..68450fe 100644
 3419         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
        4121  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3420   4122   
@@ -1,8 +1,8 @@
 3421   4123   
GET
 3422   4124   
/
 3423   4125   
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
 3424   4126   
host:example.amazonaws.com
 3425   4127   
my-header1:value4,value1,value3,value2
 3426   4128   
 3427   4129   
host;my-header1
 3428         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4130  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3429   4131   
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
 3430   4132   
new file mode 100644
 3431   4133   
index 0000000..9df2eb3
 3432         -
-- /dev/null
        4134  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 3433   4135   
@@ -0,0 +1 @@
        4136  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 3434   4137   
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
 3435   4138   
new file mode 100644
 3436   4139   
index 0000000..62f8cb7
 3437         -
-- /dev/null
        4140  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 3438   4141   
@@ -0,0 +1,7 @@
        4142  +
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
        4143  +
Host:example.amazonaws.com
        4144  +
My-Header1:value4
        4145  +
My-Header1:value1
        4146  +
My-Header1:value3
        4147  +
My-Header1:value2
        4148  +
 3439   4149   
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
 3440   4150   
similarity index 99%
 3441   4151   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 3442   4152   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3443   4153   
index b584179..2bcf7b1 100644
 3444         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
        4154  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3445   4155   
@@ -1,4 +1,4 @@
 3446   4156   
AWS4-ECDSA-P256-SHA256
 3447   4157   
20150830T123600Z
 3448   4158   
20150830/service/aws4_request
 3449         -
e2bf35ea25a1943bf52cfc8348c787db8fd8ca642dc9f2b9443939c2fb0d3c54
        4159  +
e2bf35ea25a1943bf52cfc8348c787db8fd8ca642dc9f2b9443939c2fb0d3c54
              \
 No newline at end of file
 3450   4160   
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
 3451   4161   
similarity index 80%
 3452   4162   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 3453   4163   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3454   4164   
index f7bd9e6..2c6f49d 100644
 3455         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        4165  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3456   4166   
@@ -1,7 +1,6 @@
 3457   4167   
GET / HTTP/1.1
 3458   4168   
Host:example.amazonaws.com
 3459   4169   
My-Header1:value4
 3460   4170   
My-Header1:value1
 3461   4171   
My-Header1:value3
 3462   4172   
My-Header1:value2
 3463         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3464   4173   
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
 3465   4174   
new file mode 100644
 3466   4175   
index 0000000..0468d80
 3467         -
-- /dev/null
        4176  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 3468   4177   
@@ -0,0 +1,12 @@
        4178  +
{
        4179  +
    "credentials": {
        4180  +
        "access_key_id": "AKIDEXAMPLE",
        4181  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4182  +
    },
        4183  +
    "expiration_in_seconds": 3600,
        4184  +
    "normalize": true,
        4185  +
    "region": "us-east-1",
        4186  +
    "service": "service",
        4187  +
    "sign_body": false,
        4188  +
    "timestamp": "2015-08-30T12:36:00Z"
        4189  +
}
              \
 No newline at end of file
 3469   4190   
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
 3470   4191   
similarity index 99%
 3471   4192   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 3472   4193   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3473   4194   
index e91e952..94b6be5 100644
 3474         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
        4195  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3475   4196   
@@ -1,11 +1,11 @@
 3476   4197   
GET
 3477   4198   
/
 3478   4199   
 3479   4200   
host:example.amazonaws.com
 3480   4201   
my-header1:value1
 3481   4202   
my-header2:"a b c"
 3482   4203   
x-amz-date:20150830T123600Z
 3483   4204   
x-amz-region-set:us-east-1
 3484   4205   
 3485   4206   
host;my-header1;my-header2;x-amz-date;x-amz-region-set
 3486         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4207  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3487   4208   
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
 3488   4209   
new file mode 100644
 3489   4210   
index 0000000..bf8c3cb
 3490         -
-- /dev/null
        4211  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 3491   4212   
@@ -0,0 +1 @@
        4213  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 3492   4214   
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
 3493   4215   
new file mode 100644
 3494   4216   
index 0000000..f7f054d
 3495         -
-- /dev/null
        4217  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 3496   4218   
@@ -0,0 +1,8 @@
        4219  +
GET / HTTP/1.1
        4220  +
Host:example.amazonaws.com
        4221  +
My-Header1: value1
        4222  +
My-Header2: "a   b   c"
        4223  +
X-Amz-Date:20150830T123600Z
        4224  +
X-Amz-Region-Set:us-east-1
        4225  +
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
        4226  +
 3497   4227   
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
 3498   4228   
similarity index 99%
 3499   4229   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 3500   4230   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3501   4231   
index 0e407d8..a2c9c05 100644
 3502         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
        4232  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3503   4233   
@@ -1,4 +1,4 @@
 3504   4234   
AWS4-ECDSA-P256-SHA256
 3505   4235   
20150830T123600Z
 3506   4236   
20150830/service/aws4_request
 3507         -
18b43001be9b531ebdd8202144dbd7630ea8a35bc328a7d0e561dda03a876095
        4237  +
18b43001be9b531ebdd8202144dbd7630ea8a35bc328a7d0e561dda03a876095
              \
 No newline at end of file
 3508   4238   
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
 3509   4239   
new file mode 100644
 3510   4240   
index 0000000..379dcb2
 3511         -
-- /dev/null
        4241  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3512   4242   
@@ -0,0 +1,4 @@
        4243  +
{
        4244  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4245  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4246  +
}
 3513   4247   
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
 3514   4248   
similarity index 99%
 3515   4249   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 3516   4250   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3517   4251   
index 8a3b042..3a51150 100644
 3518         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
        4252  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3519   4253   
@@ -1,9 +1,9 @@
 3520   4254   
GET
 3521   4255   
/
 3522   4256   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host%3Bmy-header1%3Bmy-header2
 3523   4257   
host:example.amazonaws.com
 3524   4258   
my-header1:value1
 3525   4259   
my-header2:"a b c"
 3526   4260   
 3527   4261   
host;my-header1;my-header2
 3528         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4262  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3529   4263   
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
 3530   4264   
new file mode 100644
 3531   4265   
index 0000000..0033053
 3532         -
-- /dev/null
        4266  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3533   4267   
@@ -0,0 +1 @@
        4268  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 3534   4269   
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
 3535   4270   
new file mode 100644
 3536   4271   
index 0000000..1537888
 3537         -
-- /dev/null
        4272  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3538   4273   
@@ -0,0 +1,5 @@
        4274  +
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
        4275  +
Host:example.amazonaws.com
        4276  +
My-Header1: value1
        4277  +
My-Header2: "a   b   c"
        4278  +
 3539   4279   
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
 3540   4280   
similarity index 99%
 3541   4281   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 3542   4282   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3543   4283   
index 5eead25..633dc1f 100644
 3544         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
        4284  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3545   4285   
@@ -1,4 +1,4 @@
 3546   4286   
AWS4-ECDSA-P256-SHA256
 3547   4287   
20150830T123600Z
 3548   4288   
20150830/service/aws4_request
 3549         -
4f92ebcf5f0844588e443a2243fafdb64319c6d1ad913c07686129b9991326a3
        4289  +
4f92ebcf5f0844588e443a2243fafdb64319c6d1ad913c07686129b9991326a3
              \
 No newline at end of file
 3550   4290   
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
 3551   4291   
similarity index 75%
 3552   4292   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 3553   4293   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3554   4294   
index 901f36c..ad1ea98 100644
 3555         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        4295  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3556   4296   
@@ -1,5 +1,4 @@
 3557   4297   
GET / HTTP/1.1
 3558   4298   
Host:example.amazonaws.com
 3559   4299   
My-Header1: value1
 3560   4300   
My-Header2: "a   b   c"
 3561         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3562   4301   
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
 3563   4302   
new file mode 100644
 3564   4303   
index 0000000..0468d80
 3565         -
-- /dev/null
        4304  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3566   4305   
@@ -0,0 +1,12 @@
        4306  +
{
        4307  +
    "credentials": {
        4308  +
        "access_key_id": "AKIDEXAMPLE",
        4309  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4310  +
    },
        4311  +
    "expiration_in_seconds": 3600,
        4312  +
    "normalize": true,
        4313  +
    "region": "us-east-1",
        4314  +
    "service": "service",
        4315  +
    "sign_body": false,
        4316  +
    "timestamp": "2015-08-30T12:36:00Z"
        4317  +
}
              \
 No newline at end of file
 3567   4318   
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
 3568   4319   
similarity index 99%
 3569   4320   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 3570   4321   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3571   4322   
index 47e7128..76db73d 100644
 3572         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
        4323  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3573   4324   
@@ -1,9 +1,9 @@
 3574   4325   
GET
 3575   4326   
/
 3576   4327   
 3577   4328   
host:example.amazonaws.com
 3578   4329   
x-amz-date:20150830T123600Z
 3579   4330   
x-amz-region-set:us-east-1
 3580   4331   
 3581   4332   
host;x-amz-date;x-amz-region-set
 3582         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4333  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3583   4334   
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
 3584   4335   
new file mode 100644
 3585   4336   
index 0000000..cbd6ae2
 3586         -
-- /dev/null
        4337  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3587   4338   
@@ -0,0 +1 @@
        4339  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 3588   4340   
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
 3589   4341   
new file mode 100644
 3590   4342   
index 0000000..a343fcf
 3591         -
-- /dev/null
        4343  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3592   4344   
@@ -0,0 +1,6 @@
        4345  +
GET /example/.. HTTP/1.1
        4346  +
Host:example.amazonaws.com
        4347  +
X-Amz-Date:20150830T123600Z
        4348  +
X-Amz-Region-Set:us-east-1
        4349  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        4350  +
 3593   4351   
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
 3594   4352   
similarity index 99%
 3595   4353   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 3596   4354   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3597   4355   
index 95d7219..600f1d8 100644
 3598         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
        4356  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3599   4357   
@@ -1,4 +1,4 @@
 3600   4358   
AWS4-ECDSA-P256-SHA256
 3601   4359   
20150830T123600Z
 3602   4360   
20150830/service/aws4_request
 3603         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4361  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3604   4362   
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
 3605   4363   
new file mode 100644
 3606   4364   
index 0000000..379dcb2
 3607         -
-- /dev/null
        4365  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3608   4366   
@@ -0,0 +1,4 @@
        4367  +
{
        4368  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4369  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4370  +
}
 3609   4371   
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
 3610   4372   
similarity index 99%
 3611   4373   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 3612   4374   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3613   4375   
index a34ea26..779c51c 100644
 3614         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
        4376  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3615   4377   
@@ -1,7 +1,7 @@
 3616   4378   
GET
 3617   4379   
/
 3618   4380   
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
 3619   4381   
host:example.amazonaws.com
 3620   4382   
 3621   4383   
host
 3622         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4384  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3623   4385   
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
 3624   4386   
new file mode 100644
 3625   4387   
index 0000000..3cc88e6
 3626         -
-- /dev/null
        4388  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3627   4389   
@@ -0,0 +1 @@
        4390  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 3628   4391   
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
 3629   4392   
new file mode 100644
 3630   4393   
index 0000000..f68dde8
 3631         -
-- /dev/null
        4394  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3632   4395   
@@ -0,0 +1,3 @@
        4396  +
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
        4397  +
Host:example.amazonaws.com
        4398  +
 3633   4399   
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
 3634   4400   
similarity index 99%
 3635   4401   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 3636   4402   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3637   4403   
index 48f855c..6e29a7e 100644
 3638         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
        4404  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3639   4405   
@@ -1,4 +1,4 @@
 3640   4406   
AWS4-ECDSA-P256-SHA256
 3641   4407   
20150830T123600Z
 3642   4408   
20150830/service/aws4_request
 3643         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4409  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3644   4410   
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
 3645   4411   
similarity index 65%
 3646   4412   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 3647   4413   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3648   4414   
index 9d6d7ca..6aa9f99 100644
 3649         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        4415  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3650   4416   
@@ -1,3 +1,2 @@
 3651   4417   
GET /example/.. HTTP/1.1
 3652   4418   
Host:example.amazonaws.com
 3653         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3654   4419   
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
 3655   4420   
new file mode 100644
 3656   4421   
index 0000000..0468d80
 3657         -
-- /dev/null
        4422  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3658   4423   
@@ -0,0 +1,12 @@
        4424  +
{
        4425  +
    "credentials": {
        4426  +
        "access_key_id": "AKIDEXAMPLE",
        4427  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4428  +
    },
        4429  +
    "expiration_in_seconds": 3600,
        4430  +
    "normalize": true,
        4431  +
    "region": "us-east-1",
        4432  +
    "service": "service",
        4433  +
    "sign_body": false,
        4434  +
    "timestamp": "2015-08-30T12:36:00Z"
        4435  +
}
              \
 No newline at end of file
 3659   4436   
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
 3660   4437   
similarity index 99%
 3661   4438   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 3662   4439   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3663   4440   
index 47e7128..76db73d 100644
 3664         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
        4441  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3665   4442   
@@ -1,9 +1,9 @@
 3666   4443   
GET
 3667   4444   
/
 3668   4445   
 3669   4446   
host:example.amazonaws.com
 3670   4447   
x-amz-date:20150830T123600Z
 3671   4448   
x-amz-region-set:us-east-1
 3672   4449   
 3673   4450   
host;x-amz-date;x-amz-region-set
 3674         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4451  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3675   4452   
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
 3676   4453   
new file mode 100644
 3677   4454   
index 0000000..f7a7ebe
 3678         -
-- /dev/null
        4455  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3679   4456   
@@ -0,0 +1 @@
        4457  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 3680   4458   
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
 3681   4459   
new file mode 100644
 3682   4460   
index 0000000..9d2c50d
 3683         -
-- /dev/null
        4461  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3684   4462   
@@ -0,0 +1,6 @@
        4463  +
GET /example1/example2/../.. HTTP/1.1
        4464  +
Host:example.amazonaws.com
        4465  +
X-Amz-Date:20150830T123600Z
        4466  +
X-Amz-Region-Set:us-east-1
        4467  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        4468  +
 3685   4469   
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
 3686   4470   
similarity index 99%
 3687   4471   
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
 3688   4472   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3689   4473   
index 95d7219..600f1d8 100644
 3690         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-string-to-sign.txt
        4474  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3691   4475   
@@ -1,4 +1,4 @@
 3692   4476   
AWS4-ECDSA-P256-SHA256
 3693   4477   
20150830T123600Z
 3694   4478   
20150830/service/aws4_request
 3695         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4479  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3696   4480   
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
 3697   4481   
new file mode 100644
 3698   4482   
index 0000000..379dcb2
 3699         -
-- /dev/null
        4483  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3700   4484   
@@ -0,0 +1,4 @@
        4485  +
{
        4486  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4487  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4488  +
}
 3701   4489   
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
 3702   4490   
similarity index 99%
 3703   4491   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 3704   4492   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3705   4493   
index a34ea26..779c51c 100644
 3706         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
        4494  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3707   4495   
@@ -1,7 +1,7 @@
 3708   4496   
GET
 3709   4497   
/
 3710   4498   
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
 3711   4499   
host:example.amazonaws.com
 3712   4500   
 3713   4501   
host
 3714         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4502  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3715   4503   
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
 3716   4504   
new file mode 100644
 3717   4505   
index 0000000..45ef286
 3718         -
-- /dev/null
        4506  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3719   4507   
@@ -0,0 +1 @@
        4508  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 3720   4509   
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
 3721   4510   
new file mode 100644
 3722   4511   
index 0000000..0d16f66
 3723         -
-- /dev/null
        4512  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3724   4513   
@@ -0,0 +1,3 @@
        4514  +
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
        4515  +
Host:example.amazonaws.com
        4516  +
 3725   4517   
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
 3726   4518   
similarity index 99%
 3727   4519   
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
 3728   4520   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3729   4521   
index 48f855c..6e29a7e 100644
 3730         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-string-to-sign.txt
        4522  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3731   4523   
@@ -1,4 +1,4 @@
 3732   4524   
AWS4-ECDSA-P256-SHA256
 3733   4525   
20150830T123600Z
 3734   4526   
20150830/service/aws4_request
 3735         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4527  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3736   4528   
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
 3737   4529   
similarity index 70%
 3738   4530   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 3739   4531   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3740   4532   
index cfd4e8b..a856c10 100644
 3741         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        4533  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3742   4534   
@@ -1,3 +1,2 @@
 3743   4535   
GET /example1/example2/../.. HTTP/1.1
 3744   4536   
Host:example.amazonaws.com
 3745         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3746   4537   
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
 3747   4538   
new file mode 100644
 3748   4539   
index 0000000..7bee5c7
 3749         -
-- /dev/null
        4540  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3750   4541   
@@ -0,0 +1,12 @@
        4542  +
{
        4543  +
    "credentials": {
        4544  +
        "access_key_id": "AKIDEXAMPLE",
        4545  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4546  +
    },
        4547  +
    "expiration_in_seconds": 3600,
        4548  +
    "normalize": false,
        4549  +
    "region": "us-east-1",
        4550  +
    "service": "service",
        4551  +
    "sign_body": false,
        4552  +
    "timestamp": "2015-08-30T12:36:00Z"
        4553  +
}
              \
 No newline at end of file
 3751   4554   
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
 3752   4555   
similarity index 99%
 3753   4556   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 3754   4557   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3755   4558   
index 5e1d1cf..e4e6d57 100644
 3756         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
        4559  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3757   4560   
@@ -1,9 +1,9 @@
 3758   4561   
GET
 3759   4562   
/example1/example2/../..
 3760   4563   
 3761   4564   
host:example.amazonaws.com
 3762   4565   
x-amz-date:20150830T123600Z
 3763   4566   
x-amz-region-set:us-east-1
 3764   4567   
 3765   4568   
host;x-amz-date;x-amz-region-set
 3766         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4569  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3767   4570   
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
 3768   4571   
new file mode 100644
 3769   4572   
index 0000000..2d1b47c
 3770         -
-- /dev/null
        4573  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3771   4574   
@@ -0,0 +1 @@
        4575  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 3772   4576   
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
 3773   4577   
new file mode 100644
 3774   4578   
index 0000000..7158179
 3775         -
-- /dev/null
        4579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3776   4580   
@@ -0,0 +1,6 @@
        4581  +
GET /example1/example2/../.. HTTP/1.1
        4582  +
Host:example.amazonaws.com
        4583  +
X-Amz-Date:20150830T123600Z
        4584  +
X-Amz-Region-Set:us-east-1
        4585  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        4586  +
 3777   4587   
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
 3778   4588   
similarity index 99%
 3779   4589   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 3780   4590   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3781   4591   
index 1cca6cf..db60c8e 100644
 3782         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
        4592  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3783   4593   
@@ -1,4 +1,4 @@
 3784   4594   
AWS4-ECDSA-P256-SHA256
 3785   4595   
20150830T123600Z
 3786   4596   
20150830/service/aws4_request
 3787         -
7bad1fab948577ec4e860ff2bb06ce9b69f0dd60eb8a9ad7c016b584254f9b5b
        4597  +
7bad1fab948577ec4e860ff2bb06ce9b69f0dd60eb8a9ad7c016b584254f9b5b
              \
 No newline at end of file
 3788   4598   
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
 3789   4599   
new file mode 100644
 3790   4600   
index 0000000..379dcb2
 3791         -
-- /dev/null
        4601  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3792   4602   
@@ -0,0 +1,4 @@
        4603  +
{
        4604  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4605  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4606  +
}
 3793   4607   
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
 3794   4608   
similarity index 99%
 3795   4609   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 3796   4610   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3797   4611   
index 95dc104..0d963ba 100644
 3798         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
        4612  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3799   4613   
@@ -1,7 +1,7 @@
 3800   4614   
GET
 3801   4615   
/example1/example2/../..
 3802   4616   
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
 3803   4617   
host:example.amazonaws.com
 3804   4618   
 3805   4619   
host
 3806         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4620  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3807   4621   
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
 3808   4622   
new file mode 100644
 3809   4623   
index 0000000..ae774e4
 3810         -
-- /dev/null
        4624  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3811   4625   
@@ -0,0 +1 @@
        4626  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 3812   4627   
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
 3813   4628   
new file mode 100644
 3814   4629   
index 0000000..be6b86e
 3815         -
-- /dev/null
        4630  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3816   4631   
@@ -0,0 +1,3 @@
        4632  +
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
        4633  +
Host:example.amazonaws.com
        4634  +
 3817   4635   
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
 3818   4636   
similarity index 99%
 3819   4637   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 3820   4638   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3821   4639   
index 50edce6..fcc70cd 100644
 3822         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
        4640  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3823   4641   
@@ -1,4 +1,4 @@
 3824   4642   
AWS4-ECDSA-P256-SHA256
 3825   4643   
20150830T123600Z
 3826   4644   
20150830/service/aws4_request
 3827         -
504892d7f7262dd98d79ab7f3bb6f918cd59d491aacb2d76450f6e065479b31a
        4645  +
504892d7f7262dd98d79ab7f3bb6f918cd59d491aacb2d76450f6e065479b31a
              \
 No newline at end of file
 3828   4646   
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
 3829   4647   
new file mode 100644
 3830   4648   
index 0000000..a856c10
 3831         -
-- /dev/null
        4649  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3832   4650   
@@ -0,0 +1,2 @@
        4651  +
GET /example1/example2/../.. HTTP/1.1
        4652  +
Host:example.amazonaws.com
 3833   4653   
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
 3834   4654   
new file mode 100644
 3835   4655   
index 0000000..7bee5c7
 3836         -
-- /dev/null
        4656  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3837   4657   
@@ -0,0 +1,12 @@
        4658  +
{
        4659  +
    "credentials": {
        4660  +
        "access_key_id": "AKIDEXAMPLE",
        4661  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4662  +
    },
        4663  +
    "expiration_in_seconds": 3600,
        4664  +
    "normalize": false,
        4665  +
    "region": "us-east-1",
        4666  +
    "service": "service",
        4667  +
    "sign_body": false,
        4668  +
    "timestamp": "2015-08-30T12:36:00Z"
        4669  +
}
              \
 No newline at end of file
 3838   4670   
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
 3839   4671   
similarity index 99%
 3840   4672   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 3841   4673   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3842   4674   
index d6a0abe..22def1a 100644
 3843         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
        4675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3844   4676   
@@ -1,9 +1,9 @@
 3845   4677   
GET
 3846   4678   
/example/..
 3847   4679   
 3848   4680   
host:example.amazonaws.com
 3849   4681   
x-amz-date:20150830T123600Z
 3850   4682   
x-amz-region-set:us-east-1
 3851   4683   
 3852   4684   
host;x-amz-date;x-amz-region-set
 3853         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4685  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3854   4686   
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
 3855   4687   
new file mode 100644
 3856   4688   
index 0000000..9251bad
 3857         -
-- /dev/null
        4689  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 3858   4690   
@@ -0,0 +1 @@
        4691  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 3859   4692   
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
 3860   4693   
new file mode 100644
 3861   4694   
index 0000000..f1bb60f
 3862         -
-- /dev/null
        4695  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 3863   4696   
@@ -0,0 +1,6 @@
        4697  +
GET /example/.. HTTP/1.1
        4698  +
Host:example.amazonaws.com
        4699  +
X-Amz-Date:20150830T123600Z
        4700  +
X-Amz-Region-Set:us-east-1
        4701  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        4702  +
 3864   4703   
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
 3865   4704   
similarity index 99%
 3866   4705   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 3867   4706   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3868   4707   
index 4a34e93..5673a20 100644
 3869         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
        4708  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3870   4709   
@@ -1,4 +1,4 @@
 3871   4710   
AWS4-ECDSA-P256-SHA256
 3872   4711   
20150830T123600Z
 3873   4712   
20150830/service/aws4_request
 3874         -
c859b5032f2ebd5df0285ff633b495b0e6e962e5adb94731c95e8e993a9a8213
        4713  +
c859b5032f2ebd5df0285ff633b495b0e6e962e5adb94731c95e8e993a9a8213
              \
 No newline at end of file
 3875   4714   
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
 3876   4715   
new file mode 100644
 3877   4716   
index 0000000..379dcb2
 3878         -
-- /dev/null
        4717  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 3879   4718   
@@ -0,0 +1,4 @@
        4719  +
{
        4720  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4721  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4722  +
}
 3880   4723   
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
 3881   4724   
similarity index 99%
 3882   4725   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 3883   4726   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3884   4727   
index b1d123e..a1c22e0 100644
 3885         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
        4728  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3886   4729   
@@ -1,7 +1,7 @@
 3887   4730   
GET
 3888   4731   
/example/..
 3889   4732   
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
 3890   4733   
host:example.amazonaws.com
 3891   4734   
 3892   4735   
host
 3893         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4736  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3894   4737   
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
 3895   4738   
new file mode 100644
 3896   4739   
index 0000000..9f0f686
 3897         -
-- /dev/null
        4740  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 3898   4741   
@@ -0,0 +1 @@
        4742  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 3899   4743   
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
 3900   4744   
new file mode 100644
 3901   4745   
index 0000000..d1d451a
 3902         -
-- /dev/null
        4746  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 3903   4747   
@@ -0,0 +1,3 @@
        4748  +
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
        4749  +
Host:example.amazonaws.com
        4750  +
 3904   4751   
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
 3905   4752   
similarity index 99%
 3906   4753   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 3907   4754   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3908   4755   
index a17f5ab..81b41e8 100644
 3909         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
        4756  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3910   4757   
@@ -1,4 +1,4 @@
 3911   4758   
AWS4-ECDSA-P256-SHA256
 3912   4759   
20150830T123600Z
 3913   4760   
20150830/service/aws4_request
 3914         -
bbbb3668f996906ebb2c96ebdc2418af99656315adaf647989ab336c88fb516e
        4761  +
bbbb3668f996906ebb2c96ebdc2418af99656315adaf647989ab336c88fb516e
              \
 No newline at end of file
 3915   4762   
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
 3916   4763   
new file mode 100644
 3917   4764   
index 0000000..6aa9f99
 3918         -
-- /dev/null
        4765  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 3919   4766   
@@ -0,0 +1,2 @@
        4767  +
GET /example/.. HTTP/1.1
        4768  +
Host:example.amazonaws.com
 3920   4769   
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
 3921   4770   
new file mode 100644
 3922   4771   
index 0000000..0468d80
 3923         -
-- /dev/null
        4772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 3924   4773   
@@ -0,0 +1,12 @@
        4774  +
{
        4775  +
    "credentials": {
        4776  +
        "access_key_id": "AKIDEXAMPLE",
        4777  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4778  +
    },
        4779  +
    "expiration_in_seconds": 3600,
        4780  +
    "normalize": true,
        4781  +
    "region": "us-east-1",
        4782  +
    "service": "service",
        4783  +
    "sign_body": false,
        4784  +
    "timestamp": "2015-08-30T12:36:00Z"
        4785  +
}
              \
 No newline at end of file
 3925   4786   
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
 3926   4787   
similarity index 99%
 3927   4788   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 3928   4789   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3929   4790   
index 47e7128..76db73d 100644
 3930         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
        4791  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3931   4792   
@@ -1,9 +1,9 @@
 3932   4793   
GET
 3933   4794   
/
 3934   4795   
 3935   4796   
host:example.amazonaws.com
 3936   4797   
x-amz-date:20150830T123600Z
 3937   4798   
x-amz-region-set:us-east-1
 3938   4799   
 3939   4800   
host;x-amz-date;x-amz-region-set
 3940         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4801  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3941   4802   
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
 3942   4803   
new file mode 100644
 3943   4804   
index 0000000..ca6e84e
 3944         -
-- /dev/null
        4805  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 3945   4806   
@@ -0,0 +1 @@
        4807  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 3946   4808   
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
 3947   4809   
new file mode 100644
 3948   4810   
index 0000000..a7c764c
 3949         -
-- /dev/null
        4811  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 3950   4812   
@@ -0,0 +1,6 @@
        4813  +
GET /./ HTTP/1.1
        4814  +
Host:example.amazonaws.com
        4815  +
X-Amz-Date:20150830T123600Z
        4816  +
X-Amz-Region-Set:us-east-1
        4817  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        4818  +
 3951   4819   
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
 3952   4820   
similarity index 99%
 3953   4821   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 3954   4822   
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
 3955   4823   
index 95d7219..600f1d8 100644
 3956         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
        4824  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-string-to-sign.txt
 3957   4825   
@@ -1,4 +1,4 @@
 3958   4826   
AWS4-ECDSA-P256-SHA256
 3959   4827   
20150830T123600Z
 3960   4828   
20150830/service/aws4_request
 3961         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4829  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3962   4830   
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
 3963   4831   
new file mode 100644
 3964   4832   
index 0000000..379dcb2
 3965         -
-- /dev/null
        4833  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 3966   4834   
@@ -0,0 +1,4 @@
        4835  +
{
        4836  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4837  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4838  +
}
 3967   4839   
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
 3968   4840   
similarity index 99%
 3969   4841   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 3970   4842   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3971   4843   
index a34ea26..779c51c 100644
 3972         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
        4844  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3973   4845   
@@ -1,7 +1,7 @@
 3974   4846   
GET
 3975   4847   
/
 3976   4848   
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
 3977   4849   
host:example.amazonaws.com
 3978   4850   
 3979   4851   
host
 3980         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4852  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3981   4853   
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
 3982   4854   
new file mode 100644
 3983   4855   
index 0000000..4b6ed09
 3984         -
-- /dev/null
        4856  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 3985   4857   
@@ -0,0 +1 @@
        4858  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 3986   4859   
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
 3987   4860   
new file mode 100644
 3988   4861   
index 0000000..d6c7176
 3989         -
-- /dev/null
        4862  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 3990   4863   
@@ -0,0 +1,3 @@
        4864  +
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
        4865  +
Host:example.amazonaws.com
        4866  +
 3991   4867   
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
 3992   4868   
similarity index 99%
 3993   4869   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 3994   4870   
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
 3995   4871   
index 48f855c..6e29a7e 100644
 3996         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
        4872  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-string-to-sign.txt
 3997   4873   
@@ -1,4 +1,4 @@
 3998   4874   
AWS4-ECDSA-P256-SHA256
 3999   4875   
20150830T123600Z
 4000   4876   
20150830/service/aws4_request
 4001         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4877  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4002   4878   
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
 4003   4879   
similarity index 61%
 4004   4880   
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
 4005   4881   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 4006   4882   
index f3537b7..2c5ff38 100644
 4007         -
-- 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
        4883  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 4008   4884   
@@ -1,3 +1,2 @@
 4009   4885   
GET /./ HTTP/1.1
 4010   4886   
Host:example.amazonaws.com
 4011         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4012   4887   
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
 4013   4888   
new file mode 100644
 4014   4889   
index 0000000..7bee5c7
 4015         -
-- /dev/null
        4890  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 4016   4891   
@@ -0,0 +1,12 @@
        4892  +
{
        4893  +
    "credentials": {
        4894  +
        "access_key_id": "AKIDEXAMPLE",
        4895  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4896  +
    },
        4897  +
    "expiration_in_seconds": 3600,
        4898  +
    "normalize": false,
        4899  +
    "region": "us-east-1",
        4900  +
    "service": "service",
        4901  +
    "sign_body": false,
        4902  +
    "timestamp": "2015-08-30T12:36:00Z"
        4903  +
}
              \
 No newline at end of file
 4017   4904   
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
 4018   4905   
similarity index 99%
 4019   4906   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 4020   4907   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 4021   4908   
index d05303d..9257ac4 100644
 4022         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
        4909  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 4023   4910   
@@ -1,9 +1,9 @@
 4024   4911   
GET
 4025   4912   
/./
 4026   4913   
 4027   4914   
host:example.amazonaws.com
 4028   4915   
x-amz-date:20150830T123600Z
 4029   4916   
x-amz-region-set:us-east-1
 4030   4917   
 4031   4918   
host;x-amz-date;x-amz-region-set
 4032         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4919  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4033   4920   
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
 4034   4921   
new file mode 100644
 4035   4922   
index 0000000..2eb1aa5
 4036         -
-- /dev/null
        4923  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 4037   4924   
@@ -0,0 +1 @@
        4925  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 4038   4926   
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
 4039   4927   
new file mode 100644
 4040   4928   
index 0000000..df3b1da
 4041         -
-- /dev/null
        4929  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 4042   4930   
@@ -0,0 +1,6 @@
        4931  +
GET /./ HTTP/1.1
        4932  +
Host:example.amazonaws.com
        4933  +
X-Amz-Date:20150830T123600Z
        4934  +
X-Amz-Region-Set:us-east-1
        4935  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        4936  +
 4043   4937   
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
 4044   4938   
similarity index 99%
 4045   4939   
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
 4046   4940   
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
 4047   4941   
index e1bfb39..754b3ed 100644
 4048         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
        4942  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 4049   4943   
@@ -1,4 +1,4 @@
 4050   4944   
AWS4-ECDSA-P256-SHA256
 4051   4945   
20150830T123600Z
 4052   4946   
20150830/service/aws4_request
 4053         -
a14dce0217a32357c623c3db790988b6b5aa1494a527158b06d3ca4444561a4b
        4947  +
a14dce0217a32357c623c3db790988b6b5aa1494a527158b06d3ca4444561a4b
              \
 No newline at end of file
 4054   4948   
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
 4055   4949   
new file mode 100644
 4056   4950   
index 0000000..379dcb2
 4057         -
-- /dev/null
        4951  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 4058   4952   
@@ -0,0 +1,4 @@
        4953  +
{
        4954  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4955  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4956  +
}
 4059   4957   
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
 4060   4958   
similarity index 99%
 4061   4959   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 4062   4960   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 4063   4961   
index f048d0f..c8edce3 100644
 4064         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
        4962  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 4065   4963   
@@ -1,7 +1,7 @@
 4066   4964   
GET
 4067   4965   
/./
 4068   4966   
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
 4069   4967   
host:example.amazonaws.com
 4070   4968   
 4071   4969   
host
 4072         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4970  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4073   4971   
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
 4074   4972   
new file mode 100644
 4075   4973   
index 0000000..d3af3b8
 4076         -
-- /dev/null
        4974  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 4077   4975   
@@ -0,0 +1 @@
        4976  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 4078   4977   
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
 4079   4978   
new file mode 100644
 4080   4979   
index 0000000..eb38155
 4081         -
-- /dev/null
        4980  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 4082   4981   
@@ -0,0 +1,3 @@
        4982  +
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
        4983  +
Host:example.amazonaws.com
        4984  +
 4083   4985   
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
 4084   4986   
similarity index 99%
 4085   4987   
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
 4086   4988   
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
 4087   4989   
index bfcf245..4f20b8f 100644
 4088         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
        4990  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 4089   4991   
@@ -1,4 +1,4 @@
 4090   4992   
AWS4-ECDSA-P256-SHA256
 4091   4993   
20150830T123600Z
 4092   4994   
20150830/service/aws4_request
 4093         -
0d146fed00cdf50d7a87864583b7a33ca75322aab46b0a2d204f5d0c13440917
        4995  +
0d146fed00cdf50d7a87864583b7a33ca75322aab46b0a2d204f5d0c13440917
              \
 No newline at end of file
 4094   4996   
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
 4095   4997   
new file mode 100644
 4096   4998   
index 0000000..2c5ff38
 4097         -
-- /dev/null
        4999  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 4098   5000   
@@ -0,0 +1,2 @@
        5001  +
GET /./ HTTP/1.1
        5002  +
Host:example.amazonaws.com
 4099   5003   
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
 4100   5004   
new file mode 100644
 4101   5005   
index 0000000..0468d80
 4102         -
-- /dev/null
        5006  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 4103   5007   
@@ -0,0 +1,12 @@
        5008  +
{
        5009  +
    "credentials": {
        5010  +
        "access_key_id": "AKIDEXAMPLE",
        5011  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5012  +
    },
        5013  +
    "expiration_in_seconds": 3600,
        5014  +
    "normalize": true,
        5015  +
    "region": "us-east-1",
        5016  +
    "service": "service",
        5017  +
    "sign_body": false,
        5018  +
    "timestamp": "2015-08-30T12:36:00Z"
        5019  +
}
              \
 No newline at end of file
 4104   5020   
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
 4105   5021   
similarity index 99%
 4106   5022   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 4107   5023   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 4108   5024   
index 47e7128..76db73d 100644
 4109         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
        5025  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 4110   5026   
@@ -1,9 +1,9 @@
 4111   5027   
GET
 4112   5028   
/
 4113   5029   
 4114   5030   
host:example.amazonaws.com
 4115   5031   
x-amz-date:20150830T123600Z
 4116   5032   
x-amz-region-set:us-east-1
 4117   5033   
 4118   5034   
host;x-amz-date;x-amz-region-set
 4119         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5035  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4120   5036   
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
 4121   5037   
new file mode 100644
 4122   5038   
index 0000000..0c049ca
 4123         -
-- /dev/null
        5039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 4124   5040   
@@ -0,0 +1 @@
        5041  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 4125   5042   
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
 4126   5043   
new file mode 100644
 4127   5044   
index 0000000..f4bb1e1
 4128         -
-- /dev/null
        5045  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 4129   5046   
@@ -0,0 +1,6 @@
        5047  +
GET // HTTP/1.1
        5048  +
Host:example.amazonaws.com
        5049  +
X-Amz-Date:20150830T123600Z
        5050  +
X-Amz-Region-Set:us-east-1
        5051  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        5052  +
 4130   5053   
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
 4131   5054   
similarity index 99%
 4132   5055   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 4133   5056   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 4134   5057   
index 95d7219..600f1d8 100644
 4135         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
        5058  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 4136   5059   
@@ -1,4 +1,4 @@
 4137   5060   
AWS4-ECDSA-P256-SHA256
 4138   5061   
20150830T123600Z
 4139   5062   
20150830/service/aws4_request
 4140         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        5063  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4141   5064   
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
 4142   5065   
new file mode 100644
 4143   5066   
index 0000000..379dcb2
 4144         -
-- /dev/null
        5067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 4145   5068   
@@ -0,0 +1,4 @@
        5069  +
{
        5070  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5071  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5072  +
}
 4146   5073   
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
 4147   5074   
similarity index 99%
 4148   5075   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 4149   5076   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 4150   5077   
index a34ea26..779c51c 100644
 4151         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
        5078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 4152   5079   
@@ -1,7 +1,7 @@
 4153   5080   
GET
 4154   5081   
/
 4155   5082   
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
 4156   5083   
host:example.amazonaws.com
 4157   5084   
 4158   5085   
host
 4159         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5086  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4160   5087   
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
 4161   5088   
new file mode 100644
 4162   5089   
index 0000000..ca52293
 4163         -
-- /dev/null
        5090  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 4164   5091   
@@ -0,0 +1 @@
        5092  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 4165   5093   
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
 4166   5094   
new file mode 100644
 4167   5095   
index 0000000..4a212a9
 4168         -
-- /dev/null
        5096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 4169   5097   
@@ -0,0 +1,3 @@
        5098  +
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
        5099  +
Host:example.amazonaws.com
        5100  +
 4170   5101   
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
 4171   5102   
similarity index 99%
 4172   5103   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 4173   5104   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 4174   5105   
index 48f855c..6e29a7e 100644
 4175         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
        5106  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 4176   5107   
@@ -1,4 +1,4 @@
 4177   5108   
AWS4-ECDSA-P256-SHA256
 4178   5109   
20150830T123600Z
 4179   5110   
20150830/service/aws4_request
 4180         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        5111  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4181   5112   
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
 4182   5113   
similarity index 61%
 4183   5114   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 4184   5115   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 4185   5116   
index ede8e3c..25bc21e 100644
 4186         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        5117  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 4187   5118   
@@ -1,3 +1,2 @@
 4188   5119   
GET // HTTP/1.1
 4189   5120   
Host:example.amazonaws.com
 4190         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4191   5121   
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
 4192   5122   
new file mode 100644
 4193   5123   
index 0000000..0468d80
 4194         -
-- /dev/null
        5124  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 4195   5125   
@@ -0,0 +1,12 @@
        5126  +
{
        5127  +
    "credentials": {
        5128  +
        "access_key_id": "AKIDEXAMPLE",
        5129  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5130  +
    },
        5131  +
    "expiration_in_seconds": 3600,
        5132  +
    "normalize": true,
        5133  +
    "region": "us-east-1",
        5134  +
    "service": "service",
        5135  +
    "sign_body": false,
        5136  +
    "timestamp": "2015-08-30T12:36:00Z"
        5137  +
}
              \
 No newline at end of file
 4196   5138   
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
 4197   5139   
similarity index 99%
 4198   5140   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4199   5141   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4200   5142   
index 2e36c20..a51f1ba 100644
 4201         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
        5143  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4202   5144   
@@ -1,9 +1,9 @@
 4203   5145   
GET
 4204   5146   
/example
 4205   5147   
 4206   5148   
host:example.amazonaws.com
 4207   5149   
x-amz-date:20150830T123600Z
 4208   5150   
x-amz-region-set:us-east-1
 4209   5151   
 4210   5152   
host;x-amz-date;x-amz-region-set
 4211         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5153  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4212   5154   
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
 4213   5155   
new file mode 100644
 4214   5156   
index 0000000..f5c871f
 4215         -
-- /dev/null
        5157  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 4216   5158   
@@ -0,0 +1 @@
        5159  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 4217   5160   
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
 4218   5161   
new file mode 100644
 4219   5162   
index 0000000..bda4718
 4220         -
-- /dev/null
        5163  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 4221   5164   
@@ -0,0 +1,6 @@
        5165  +
GET /./example HTTP/1.1
        5166  +
Host:example.amazonaws.com
        5167  +
X-Amz-Date:20150830T123600Z
        5168  +
X-Amz-Region-Set:us-east-1
        5169  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        5170  +
 4222   5171   
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
 4223   5172   
similarity index 99%
 4224   5173   
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
 4225   5174   
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
 4226   5175   
index cd30e8b..2ffe879 100644
 4227         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-string-to-sign.txt
        5176  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-string-to-sign.txt
 4228   5177   
@@ -1,4 +1,4 @@
 4229   5178   
AWS4-ECDSA-P256-SHA256
 4230   5179   
20150830T123600Z
 4231   5180   
20150830/service/aws4_request
 4232         -
823cb165e35e124f862c99c89a46414c24e3800f149377591e35a4848317e825
        5181  +
823cb165e35e124f862c99c89a46414c24e3800f149377591e35a4848317e825
              \
 No newline at end of file
 4233   5182   
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
 4234   5183   
new file mode 100644
 4235   5184   
index 0000000..379dcb2
 4236         -
-- /dev/null
        5185  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 4237   5186   
@@ -0,0 +1,4 @@
        5187  +
{
        5188  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5189  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5190  +
}
 4238   5191   
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
 4239   5192   
similarity index 99%
 4240   5193   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4241   5194   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4242   5195   
index 77cf28d..45151ea 100644
 4243         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
        5196  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4244   5197   
@@ -1,7 +1,7 @@
 4245   5198   
GET
 4246   5199   
/example
 4247   5200   
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
 4248   5201   
host:example.amazonaws.com
 4249   5202   
 4250   5203   
host
 4251         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5204  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4252   5205   
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
 4253   5206   
new file mode 100644
 4254   5207   
index 0000000..11ad7bf
 4255         -
-- /dev/null
        5208  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 4256   5209   
@@ -0,0 +1 @@
        5210  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 4257   5211   
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
 4258   5212   
new file mode 100644
 4259   5213   
index 0000000..a7537b1
 4260         -
-- /dev/null
        5214  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 4261   5215   
@@ -0,0 +1,3 @@
        5216  +
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
        5217  +
Host:example.amazonaws.com
        5218  +
 4262   5219   
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
 4263   5220   
similarity index 99%
 4264   5221   
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
 4265   5222   
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
 4266   5223   
index 49d9b24..b486672 100644
 4267         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-string-to-sign.txt
        5224  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 4268   5225   
@@ -1,4 +1,4 @@
 4269   5226   
AWS4-ECDSA-P256-SHA256
 4270   5227   
20150830T123600Z
 4271   5228   
20150830/service/aws4_request
 4272         -
0cc67a8acfed5946b645794c649dd98d3485728119cdf17d38985ba0ff55abca
        5229  +
0cc67a8acfed5946b645794c649dd98d3485728119cdf17d38985ba0ff55abca
              \
 No newline at end of file
 4273   5230   
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
 4274   5231   
similarity index 65%
 4275   5232   
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
 4276   5233   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 4277   5234   
index 3c91071..5d919c9 100644
 4278         -
-- 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
        5235  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 4279   5236   
@@ -1,3 +1,2 @@
 4280   5237   
GET /./example HTTP/1.1
 4281   5238   
Host:example.amazonaws.com
 4282         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4283   5239   
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
 4284   5240   
new file mode 100644
 4285   5241   
index 0000000..7bee5c7
 4286         -
-- /dev/null
        5242  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 4287   5243   
@@ -0,0 +1,12 @@
        5244  +
{
        5245  +
    "credentials": {
        5246  +
        "access_key_id": "AKIDEXAMPLE",
        5247  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5248  +
    },
        5249  +
    "expiration_in_seconds": 3600,
        5250  +
    "normalize": false,
        5251  +
    "region": "us-east-1",
        5252  +
    "service": "service",
        5253  +
    "sign_body": false,
        5254  +
    "timestamp": "2015-08-30T12:36:00Z"
        5255  +
}
              \
 No newline at end of file
 4288   5256   
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
 4289   5257   
similarity index 99%
 4290   5258   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4291   5259   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4292   5260   
index 4444842..2355a69 100644
 4293         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
        5261  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4294   5262   
@@ -1,9 +1,9 @@
 4295   5263   
GET
 4296   5264   
/./example
 4297   5265   
 4298   5266   
host:example.amazonaws.com
 4299   5267   
x-amz-date:20150830T123600Z
 4300   5268   
x-amz-region-set:us-east-1
 4301   5269   
 4302   5270   
host;x-amz-date;x-amz-region-set
 4303         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5271  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4304   5272   
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
 4305   5273   
new file mode 100644
 4306   5274   
index 0000000..9c8f737
 4307         -
-- /dev/null
        5275  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 4308   5276   
@@ -0,0 +1 @@
        5277  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 4309   5278   
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
 4310   5279   
new file mode 100644
 4311   5280   
index 0000000..aa5980d
 4312         -
-- /dev/null
        5281  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 4313   5282   
@@ -0,0 +1,6 @@
        5283  +
GET /./example HTTP/1.1
        5284  +
Host:example.amazonaws.com
        5285  +
X-Amz-Date:20150830T123600Z
        5286  +
X-Amz-Region-Set:us-east-1
        5287  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        5288  +
 4314   5289   
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
 4315   5290   
similarity index 99%
 4316   5291   
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
 4317   5292   
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
 4318   5293   
index cc63510..d056816 100644
 4319         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
        5294  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 4320   5295   
@@ -1,4 +1,4 @@
 4321   5296   
AWS4-ECDSA-P256-SHA256
 4322   5297   
20150830T123600Z
 4323   5298   
20150830/service/aws4_request
 4324         -
407314cdff397462b2458ba1860907adefcbb73fd630ddbd3de7300d2f773804
        5299  +
407314cdff397462b2458ba1860907adefcbb73fd630ddbd3de7300d2f773804
              \
 No newline at end of file
 4325   5300   
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
 4326   5301   
new file mode 100644
 4327   5302   
index 0000000..379dcb2
 4328         -
-- /dev/null
        5303  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 4329   5304   
@@ -0,0 +1,4 @@
        5305  +
{
        5306  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5307  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5308  +
}
 4330   5309   
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
 4331   5310   
similarity index 99%
 4332   5311   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4333   5312   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4334   5313   
index ed2cb2d..df9928e 100644
 4335         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
        5314  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4336   5315   
@@ -1,7 +1,7 @@
 4337   5316   
GET
 4338   5317   
/./example
 4339   5318   
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
 4340   5319   
host:example.amazonaws.com
 4341   5320   
 4342   5321   
host
 4343         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5322  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4344   5323   
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
 4345   5324   
new file mode 100644
 4346   5325   
index 0000000..bb4d86b
 4347         -
-- /dev/null
        5326  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 4348   5327   
@@ -0,0 +1 @@
        5328  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 4349   5329   
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
 4350   5330   
new file mode 100644
 4351   5331   
index 0000000..0061136
 4352         -
-- /dev/null
        5332  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 4353   5333   
@@ -0,0 +1,3 @@
        5334  +
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
        5335  +
Host:example.amazonaws.com
        5336  +
 4354   5337   
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
 4355   5338   
similarity index 99%
 4356   5339   
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
 4357   5340   
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
 4358   5341   
index c9f3b6d..418f2d6 100644
 4359         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
        5342  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 4360   5343   
@@ -1,4 +1,4 @@
 4361   5344   
AWS4-ECDSA-P256-SHA256
 4362   5345   
20150830T123600Z
 4363   5346   
20150830/service/aws4_request
 4364         -
efbe4f47c2acbb53fbfd0be6846cfa35a48c21f3f800e741278dae7b721302b4
        5347  +
efbe4f47c2acbb53fbfd0be6846cfa35a48c21f3f800e741278dae7b721302b4
              \
 No newline at end of file
 4365   5348   
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
 4366   5349   
new file mode 100644
 4367   5350   
index 0000000..5d919c9
 4368         -
-- /dev/null
        5351  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 4369   5352   
@@ -0,0 +1,2 @@
        5353  +
GET /./example HTTP/1.1
        5354  +
Host:example.amazonaws.com
 4370   5355   
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
 4371   5356   
new file mode 100644
 4372   5357   
index 0000000..7bee5c7
 4373         -
-- /dev/null
        5358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 4374   5359   
@@ -0,0 +1,12 @@
        5360  +
{
        5361  +
    "credentials": {
        5362  +
        "access_key_id": "AKIDEXAMPLE",
        5363  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5364  +
    },
        5365  +
    "expiration_in_seconds": 3600,
        5366  +
    "normalize": false,
        5367  +
    "region": "us-east-1",
        5368  +
    "service": "service",
        5369  +
    "sign_body": false,
        5370  +
    "timestamp": "2015-08-30T12:36:00Z"
        5371  +
}
              \
 No newline at end of file
 4375   5372   
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
 4376   5373   
similarity index 99%
 4377   5374   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 4378   5375   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4379   5376   
index 8a4d33b..5f809da 100644
 4380         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
        5377  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4381   5378   
@@ -1,9 +1,9 @@
 4382   5379   
GET
 4383   5380   
//
 4384   5381   
 4385   5382   
host:example.amazonaws.com
 4386   5383   
x-amz-date:20150830T123600Z
 4387   5384   
x-amz-region-set:us-east-1
 4388   5385   
 4389   5386   
host;x-amz-date;x-amz-region-set
 4390         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5387  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4391   5388   
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
 4392   5389   
new file mode 100644
 4393   5390   
index 0000000..60179e9
 4394         -
-- /dev/null
        5391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 4395   5392   
@@ -0,0 +1 @@
        5393  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 4396   5394   
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
 4397   5395   
new file mode 100644
 4398   5396   
index 0000000..72bf1b7
 4399         -
-- /dev/null
        5397  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 4400   5398   
@@ -0,0 +1,6 @@
        5399  +
GET // HTTP/1.1
        5400  +
Host:example.amazonaws.com
        5401  +
X-Amz-Date:20150830T123600Z
        5402  +
X-Amz-Region-Set:us-east-1
        5403  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        5404  +
 4401   5405   
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
 4402   5406   
similarity index 99%
 4403   5407   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 4404   5408   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4405   5409   
index 874c01c..2b3bf67 100644
 4406         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
        5410  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4407   5411   
@@ -1,4 +1,4 @@
 4408   5412   
AWS4-ECDSA-P256-SHA256
 4409   5413   
20150830T123600Z
 4410   5414   
20150830/service/aws4_request
 4411         -
fc8f42c7ce50ba8830a34b16d9fb478170176d78c81339e8d7e31d4baa9ec9f4
        5415  +
fc8f42c7ce50ba8830a34b16d9fb478170176d78c81339e8d7e31d4baa9ec9f4
              \
 No newline at end of file
 4412   5416   
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
 4413   5417   
new file mode 100644
 4414   5418   
index 0000000..379dcb2
 4415         -
-- /dev/null
        5419  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 4416   5420   
@@ -0,0 +1,4 @@
        5421  +
{
        5422  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5423  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5424  +
}
 4417   5425   
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
 4418   5426   
similarity index 99%
 4419   5427   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 4420   5428   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4421   5429   
index 81d7b0b..d10ad29 100644
 4422         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
        5430  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4423   5431   
@@ -1,7 +1,7 @@
 4424   5432   
GET
 4425   5433   
//
 4426   5434   
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
 4427   5435   
host:example.amazonaws.com
 4428   5436   
 4429   5437   
host
 4430         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5438  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4431   5439   
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
 4432   5440   
new file mode 100644
 4433   5441   
index 0000000..d9bd824
 4434         -
-- /dev/null
        5442  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 4435   5443   
@@ -0,0 +1 @@
        5444  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 4436   5445   
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
 4437   5446   
new file mode 100644
 4438   5447   
index 0000000..19d1d46
 4439         -
-- /dev/null
        5448  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 4440   5449   
@@ -0,0 +1,3 @@
        5450  +
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
        5451  +
Host:example.amazonaws.com
        5452  +
 4441   5453   
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
 4442   5454   
similarity index 99%
 4443   5455   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 4444   5456   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4445   5457   
index 17e5279..24c8a5e 100644
 4446         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
        5458  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4447   5459   
@@ -1,4 +1,4 @@
 4448   5460   
AWS4-ECDSA-P256-SHA256
 4449   5461   
20150830T123600Z
 4450   5462   
20150830/service/aws4_request
 4451         -
633e0570a745c18cc22e43af8be65cfed3e7173061ec403353734bdfae90e0b6
        5463  +
633e0570a745c18cc22e43af8be65cfed3e7173061ec403353734bdfae90e0b6
              \
 No newline at end of file
 4452   5464   
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
 4453   5465   
new file mode 100644
 4454   5466   
index 0000000..25bc21e
 4455         -
-- /dev/null
        5467  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 4456   5468   
@@ -0,0 +1,2 @@
        5469  +
GET // HTTP/1.1
        5470  +
Host:example.amazonaws.com
 4457   5471   
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
 4458   5472   
new file mode 100644
 4459   5473   
index 0000000..0468d80
 4460         -
-- /dev/null
        5474  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 4461   5475   
@@ -0,0 +1,12 @@
        5476  +
{
        5477  +
    "credentials": {
        5478  +
        "access_key_id": "AKIDEXAMPLE",
        5479  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5480  +
    },
        5481  +
    "expiration_in_seconds": 3600,
        5482  +
    "normalize": true,
        5483  +
    "region": "us-east-1",
        5484  +
    "service": "service",
        5485  +
    "sign_body": false,
        5486  +
    "timestamp": "2015-08-30T12:36:00Z"
        5487  +
}
              \
 No newline at end of file
 4462   5488   
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
 4463   5489   
similarity index 99%
 4464   5490   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 4465   5491   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4466   5492   
index fdf9c48..a8e9e02 100644
 4467         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
        5493  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4468   5494   
@@ -1,9 +1,9 @@
 4469   5495   
GET
 4470   5496   
/example/
 4471   5497   
 4472   5498   
host:example.amazonaws.com
 4473   5499   
x-amz-date:20150830T123600Z
 4474   5500   
x-amz-region-set:us-east-1
 4475   5501   
 4476   5502   
host;x-amz-date;x-amz-region-set
 4477         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5503  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4478   5504   
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
 4479   5505   
new file mode 100644
 4480   5506   
index 0000000..ffe1b60
 4481         -
-- /dev/null
        5507  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 4482   5508   
@@ -0,0 +1 @@
        5509  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 4483   5510   
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
 4484   5511   
new file mode 100644
 4485   5512   
index 0000000..3189f55
 4486         -
-- /dev/null
        5513  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 4487   5514   
@@ -0,0 +1,6 @@
        5515  +
GET //example// HTTP/1.1
        5516  +
Host:example.amazonaws.com
        5517  +
X-Amz-Date:20150830T123600Z
        5518  +
X-Amz-Region-Set:us-east-1
        5519  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        5520  +
 4488   5521   
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
 4489   5522   
similarity index 99%
 4490   5523   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 4491   5524   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4492   5525   
index 8f9c95e..430020e 100644
 4493         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
        5526  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4494   5527   
@@ -1,4 +1,4 @@
 4495   5528   
AWS4-ECDSA-P256-SHA256
 4496   5529   
20150830T123600Z
 4497   5530   
20150830/service/aws4_request
 4498         -
ea6c9c4bc1e85b94f2579cebbc85a84c3f8eaa055c006697555f074dd68509a6
        5531  +
ea6c9c4bc1e85b94f2579cebbc85a84c3f8eaa055c006697555f074dd68509a6
              \
 No newline at end of file
 4499   5532   
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
 4500   5533   
new file mode 100644
 4501   5534   
index 0000000..379dcb2
 4502         -
-- /dev/null
        5535  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 4503   5536   
@@ -0,0 +1,4 @@
        5537  +
{
        5538  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5539  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5540  +
}
 4504   5541   
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
 4505   5542   
similarity index 99%
 4506   5543   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 4507   5544   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4508   5545   
index 1046735..8d41e37 100644
 4509         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
        5546  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4510   5547   
@@ -1,7 +1,7 @@
 4511   5548   
GET
 4512   5549   
/example/
 4513   5550   
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
 4514   5551   
host:example.amazonaws.com
 4515   5552   
 4516   5553   
host
 4517         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5554  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4518   5555   
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
 4519   5556   
new file mode 100644
 4520   5557   
index 0000000..93a0fa4
 4521         -
-- /dev/null
        5558  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 4522   5559   
@@ -0,0 +1 @@
        5560  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 4523   5561   
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
 4524   5562   
new file mode 100644
 4525   5563   
index 0000000..65c8cb6
 4526         -
-- /dev/null
        5564  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 4527   5565   
@@ -0,0 +1,3 @@
        5566  +
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
        5567  +
Host:example.amazonaws.com
        5568  +
 4528   5569   
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
 4529   5570   
similarity index 99%
 4530   5571   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 4531   5572   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4532   5573   
index b293cc2..0f4c4c5 100644
 4533         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
        5574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4534   5575   
@@ -1,4 +1,4 @@
 4535   5576   
AWS4-ECDSA-P256-SHA256
 4536   5577   
20150830T123600Z
 4537   5578   
20150830/service/aws4_request
 4538         -
ab3f7b8af0ce16e0faf508160fb13d890874992d74f36214ae9eec7437361f2b
        5579  +
ab3f7b8af0ce16e0faf508160fb13d890874992d74f36214ae9eec7437361f2b
              \
 No newline at end of file
 4539   5580   
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
 4540   5581   
similarity index 65%
 4541   5582   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 4542   5583   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4543   5584   
index a4307ce..12e0931 100644
 4544         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        5585  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4545   5586   
@@ -1,3 +1,2 @@
 4546   5587   
GET //example// HTTP/1.1
 4547   5588   
Host:example.amazonaws.com
 4548         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4549   5589   
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
 4550   5590   
new file mode 100644
 4551   5591   
index 0000000..7bee5c7
 4552         -
-- /dev/null
        5592  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 4553   5593   
@@ -0,0 +1,12 @@
        5594  +
{
        5595  +
    "credentials": {
        5596  +
        "access_key_id": "AKIDEXAMPLE",
        5597  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5598  +
    },
        5599  +
    "expiration_in_seconds": 3600,
        5600  +
    "normalize": false,
        5601  +
    "region": "us-east-1",
        5602  +
    "service": "service",
        5603  +
    "sign_body": false,
        5604  +
    "timestamp": "2015-08-30T12:36:00Z"
        5605  +
}
              \
 No newline at end of file
 4554   5606   
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
 4555   5607   
similarity index 99%
 4556   5608   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 4557   5609   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4558   5610   
index a9c55f6..76f55ed 100644
 4559         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
        5611  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4560   5612   
@@ -1,9 +1,9 @@
 4561   5613   
GET
 4562   5614   
//example//
 4563   5615   
 4564   5616   
host:example.amazonaws.com
 4565   5617   
x-amz-date:20150830T123600Z
 4566   5618   
x-amz-region-set:us-east-1
 4567   5619   
 4568   5620   
host;x-amz-date;x-amz-region-set
 4569         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5621  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4570   5622   
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
 4571   5623   
new file mode 100644
 4572   5624   
index 0000000..de333b2
 4573         -
-- /dev/null
        5625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 4574   5626   
@@ -0,0 +1 @@
        5627  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 4575   5628   
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
 4576   5629   
new file mode 100644
 4577   5630   
index 0000000..773ce63
 4578         -
-- /dev/null
        5631  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 4579   5632   
@@ -0,0 +1,6 @@
        5633  +
GET //example// HTTP/1.1
        5634  +
Host:example.amazonaws.com
        5635  +
X-Amz-Date:20150830T123600Z
        5636  +
X-Amz-Region-Set:us-east-1
        5637  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        5638  +
 4580   5639   
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
 4581   5640   
similarity index 99%
 4582   5641   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 4583   5642   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4584   5643   
index 5c4c2cd..46c3265 100644
 4585         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
        5644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4586   5645   
@@ -1,4 +1,4 @@
 4587   5646   
AWS4-ECDSA-P256-SHA256
 4588   5647   
20150830T123600Z
 4589   5648   
20150830/service/aws4_request
 4590         -
bf8c459a6a7f3879f55bff41e4dca65f69df4628456904e47f83013c0deb7276
        5649  +
bf8c459a6a7f3879f55bff41e4dca65f69df4628456904e47f83013c0deb7276
              \
 No newline at end of file
 4591   5650   
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
 4592   5651   
new file mode 100644
 4593   5652   
index 0000000..379dcb2
 4594         -
-- /dev/null
        5653  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 4595   5654   
@@ -0,0 +1,4 @@
        5655  +
{
        5656  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5657  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5658  +
}
 4596   5659   
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
 4597   5660   
similarity index 99%
 4598   5661   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 4599   5662   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4600   5663   
index c878ab4..6047ccf 100644
 4601         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
        5664  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4602   5665   
@@ -1,7 +1,7 @@
 4603   5666   
GET
 4604   5667   
//example//
 4605   5668   
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
 4606   5669   
host:example.amazonaws.com
 4607   5670   
 4608   5671   
host
 4609         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5672  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4610   5673   
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
 4611   5674   
new file mode 100644
 4612   5675   
index 0000000..d61fcd0
 4613         -
-- /dev/null
        5676  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 4614   5677   
@@ -0,0 +1 @@
        5678  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 4615   5679   
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
 4616   5680   
new file mode 100644
 4617   5681   
index 0000000..3e37b5b
 4618         -
-- /dev/null
        5682  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 4619   5683   
@@ -0,0 +1,3 @@
        5684  +
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
        5685  +
Host:example.amazonaws.com
        5686  +
 4620   5687   
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
 4621   5688   
similarity index 99%
 4622   5689   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 4623   5690   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4624   5691   
index 5f59645..2537d28 100644
 4625         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
        5692  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4626   5693   
@@ -1,4 +1,4 @@
 4627   5694   
AWS4-ECDSA-P256-SHA256
 4628   5695   
20150830T123600Z
 4629   5696   
20150830/service/aws4_request
 4630         -
660b4a6f0bd53b287cefb21cdf69c1574303de44d2e9f7759b5379b428b70157
        5697  +
660b4a6f0bd53b287cefb21cdf69c1574303de44d2e9f7759b5379b428b70157
              \
 No newline at end of file
 4631   5698   
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
 4632   5699   
new file mode 100644
 4633   5700   
index 0000000..12e0931
 4634         -
-- /dev/null
        5701  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 4635   5702   
@@ -0,0 +1,2 @@
        5703  +
GET //example// HTTP/1.1
        5704  +
Host:example.amazonaws.com
 4636   5705   
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
 4637   5706   
new file mode 100644
 4638   5707   
index 0000000..0468d80
 4639         -
-- /dev/null
        5708  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 4640   5709   
@@ -0,0 +1,12 @@
        5710  +
{
        5711  +
    "credentials": {
        5712  +
        "access_key_id": "AKIDEXAMPLE",
        5713  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5714  +
    },
        5715  +
    "expiration_in_seconds": 3600,
        5716  +
    "normalize": true,
        5717  +
    "region": "us-east-1",
        5718  +
    "service": "service",
        5719  +
    "sign_body": false,
        5720  +
    "timestamp": "2015-08-30T12:36:00Z"
        5721  +
}
              \
 No newline at end of file
 4641   5722   
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
 4642   5723   
new file mode 100644
 4643   5724   
index 0000000..0b2b616
 4644         -
-- /dev/null
        5725  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 4645   5726   
@@ -0,0 +1,9 @@
        5727  +
GET
        5728  +
/example%20space/
        5729  +
        5730  +
host:example.amazonaws.com
        5731  +
x-amz-date:20150830T123600Z
        5732  +
x-amz-region-set:us-east-1
        5733  +
        5734  +
host;x-amz-date;x-amz-region-set
        5735  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4646   5736   
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
 4647   5737   
new file mode 100644
 4648   5738   
index 0000000..6e7841d
 4649         -
-- /dev/null
        5739  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 4650   5740   
@@ -0,0 +1 @@
        5741  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 4651   5742   
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
 4652   5743   
new file mode 100644
 4653   5744   
index 0000000..0969cd3
 4654         -
-- /dev/null
        5745  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 4655   5746   
@@ -0,0 +1,6 @@
        5747  +
GET /example space/ HTTP/1.1
        5748  +
Host:example.amazonaws.com
        5749  +
X-Amz-Date:20150830T123600Z
        5750  +
X-Amz-Region-Set:us-east-1
        5751  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        5752  +
 4656   5753   
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
 4657   5754   
new file mode 100644
 4658   5755   
index 0000000..ddae6e2
 4659         -
-- /dev/null
        5756  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 4660   5757   
@@ -0,0 +1,4 @@
        5758  +
AWS4-ECDSA-P256-SHA256
        5759  +
20150830T123600Z
        5760  +
20150830/service/aws4_request
        5761  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4661   5762   
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
 4662   5763   
new file mode 100644
 4663   5764   
index 0000000..379dcb2
 4664         -
-- /dev/null
        5765  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 4665   5766   
@@ -0,0 +1,4 @@
        5767  +
{
        5768  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5769  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5770  +
}
 4666   5771   
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
 4667   5772   
new file mode 100644
 4668   5773   
index 0000000..a66b3cb
 4669         -
-- /dev/null
        5774  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 4670   5775   
@@ -0,0 +1,7 @@
        5776  +
GET
        5777  +
/example%20space/
        5778  +
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
        5779  +
host:example.amazonaws.com
        5780  +
        5781  +
host
        5782  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4671   5783   
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
 4672   5784   
new file mode 100644
 4673   5785   
index 0000000..b3253ae
 4674         -
-- /dev/null
        5786  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 4675   5787   
@@ -0,0 +1 @@
        5788  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 4676   5789   
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
 4677   5790   
new file mode 100644
 4678   5791   
index 0000000..9e335b2
 4679         -
-- /dev/null
        5792  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 4680   5793   
@@ -0,0 +1,3 @@
        5794  +
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
        5795  +
Host:example.amazonaws.com
        5796  +
 4681   5797   
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
 4682   5798   
new file mode 100644
 4683   5799   
index 0000000..b6ff6fb
 4684         -
-- /dev/null
        5800  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 4685   5801   
@@ -0,0 +1,4 @@
        5802  +
AWS4-ECDSA-P256-SHA256
        5803  +
20150830T123600Z
        5804  +
20150830/service/aws4_request
        5805  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4686   5806   
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
 4687   5807   
new file mode 100644
 4688   5808   
index 0000000..ab509ab
 4689         -
-- /dev/null
        5809  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 4690   5810   
@@ -0,0 +1,2 @@
        5811  +
GET /example space/ HTTP/1.1
        5812  +
Host:example.amazonaws.com
 4691   5813   
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
 4692   5814   
new file mode 100644
 4693   5815   
index 0000000..7bee5c7
 4694         -
-- /dev/null
        5816  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 4695   5817   
@@ -0,0 +1,12 @@
        5818  +
{
        5819  +
    "credentials": {
        5820  +
        "access_key_id": "AKIDEXAMPLE",
        5821  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5822  +
    },
        5823  +
    "expiration_in_seconds": 3600,
        5824  +
    "normalize": false,
        5825  +
    "region": "us-east-1",
        5826  +
    "service": "service",
        5827  +
    "sign_body": false,
        5828  +
    "timestamp": "2015-08-30T12:36:00Z"
        5829  +
}
              \
 No newline at end of file
 4696   5830   
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
 4697   5831   
new file mode 100644
 4698   5832   
index 0000000..0b2b616
 4699         -
-- /dev/null
        5833  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 4700   5834   
@@ -0,0 +1,9 @@
        5835  +
GET
        5836  +
/example%20space/
        5837  +
        5838  +
host:example.amazonaws.com
        5839  +
x-amz-date:20150830T123600Z
        5840  +
x-amz-region-set:us-east-1
        5841  +
        5842  +
host;x-amz-date;x-amz-region-set
        5843  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4701   5844   
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
 4702   5845   
new file mode 100644
 4703   5846   
index 0000000..e75ae08
 4704         -
-- /dev/null
        5847  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 4705   5848   
@@ -0,0 +1 @@
        5849  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 4706   5850   
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
 4707   5851   
new file mode 100644
 4708   5852   
index 0000000..cb089db
 4709         -
-- /dev/null
        5853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 4710   5854   
@@ -0,0 +1,6 @@
        5855  +
GET /example space/ HTTP/1.1
        5856  +
Host:example.amazonaws.com
        5857  +
X-Amz-Date:20150830T123600Z
        5858  +
X-Amz-Region-Set:us-east-1
        5859  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        5860  +
 4711   5861   
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
 4712   5862   
new file mode 100644
 4713   5863   
index 0000000..ddae6e2
 4714         -
-- /dev/null
        5864  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 4715   5865   
@@ -0,0 +1,4 @@
        5866  +
AWS4-ECDSA-P256-SHA256
        5867  +
20150830T123600Z
        5868  +
20150830/service/aws4_request
        5869  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4716   5870   
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
 4717   5871   
new file mode 100644
 4718   5872   
index 0000000..379dcb2
 4719         -
-- /dev/null
        5873  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 4720   5874   
@@ -0,0 +1,4 @@
        5875  +
{
        5876  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5877  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5878  +
}
 4721   5879   
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
 4722   5880   
new file mode 100644
 4723   5881   
index 0000000..a66b3cb
 4724         -
-- /dev/null
        5882  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 4725   5883   
@@ -0,0 +1,7 @@
        5884  +
GET
        5885  +
/example%20space/
        5886  +
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
        5887  +
host:example.amazonaws.com
        5888  +
        5889  +
host
        5890  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4726   5891   
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
 4727   5892   
new file mode 100644
 4728   5893   
index 0000000..66a80c3
 4729         -
-- /dev/null
        5894  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 4730   5895   
@@ -0,0 +1 @@
        5896  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 4731   5897   
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
 4732   5898   
new file mode 100644
 4733   5899   
index 0000000..7d1b9d9
 4734         -
-- /dev/null
        5900  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 4735   5901   
@@ -0,0 +1,3 @@
        5902  +
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
        5903  +
Host:example.amazonaws.com
        5904  +
 4736   5905   
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
 4737   5906   
new file mode 100644
 4738   5907   
index 0000000..b6ff6fb
 4739         -
-- /dev/null
        5908  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 4740   5909   
@@ -0,0 +1,4 @@
        5910  +
AWS4-ECDSA-P256-SHA256
        5911  +
20150830T123600Z
        5912  +
20150830/service/aws4_request
        5913  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4741   5914   
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
 4742   5915   
new file mode 100644
 4743   5916   
index 0000000..ab509ab
 4744         -
-- /dev/null
        5917  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 4745   5918   
@@ -0,0 +1,2 @@
        5919  +
GET /example space/ HTTP/1.1
        5920  +
Host:example.amazonaws.com
 4746   5921   
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
 4747   5922   
new file mode 100644
 4748   5923   
index 0000000..0468d80
 4749         -
-- /dev/null
        5924  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 4750   5925   
@@ -0,0 +1,12 @@
        5926  +
{
        5927  +
    "credentials": {
        5928  +
        "access_key_id": "AKIDEXAMPLE",
        5929  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5930  +
    },
        5931  +
    "expiration_in_seconds": 3600,
        5932  +
    "normalize": true,
        5933  +
    "region": "us-east-1",
        5934  +
    "service": "service",
        5935  +
    "sign_body": false,
        5936  +
    "timestamp": "2015-08-30T12:36:00Z"
        5937  +
}
              \
 No newline at end of file
 4751   5938   
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
 4752   5939   
similarity index 99%
 4753   5940   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 4754   5941   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4755   5942   
index b0db648..46d76bb 100644
 4756         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
        5943  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4757   5944   
@@ -1,9 +1,9 @@
 4758   5945   
GET
 4759   5946   
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4760   5947   
 4761   5948   
host:example.amazonaws.com
 4762   5949   
x-amz-date:20150830T123600Z
 4763   5950   
x-amz-region-set:us-east-1
 4764   5951   
 4765   5952   
host;x-amz-date;x-amz-region-set
 4766         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5953  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4767   5954   
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
 4768   5955   
new file mode 100644
 4769   5956   
index 0000000..53c0cb6
 4770         -
-- /dev/null
        5957  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 4771   5958   
@@ -0,0 +1 @@
        5959  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 4772   5960   
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
 4773   5961   
new file mode 100644
 4774   5962   
index 0000000..3bdb653
 4775         -
-- /dev/null
        5963  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 4776   5964   
@@ -0,0 +1,6 @@
        5965  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5966  +
Host:example.amazonaws.com
        5967  +
X-Amz-Date:20150830T123600Z
        5968  +
X-Amz-Region-Set:us-east-1
        5969  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        5970  +
 4777   5971   
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
 4778   5972   
similarity index 99%
 4779   5973   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 4780   5974   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4781   5975   
index 20c7cd6..3b30173 100644
 4782         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
        5976  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4783   5977   
@@ -1,4 +1,4 @@
 4784   5978   
AWS4-ECDSA-P256-SHA256
 4785   5979   
20150830T123600Z
 4786   5980   
20150830/service/aws4_request
 4787         -
b48c0f7d7cdaa2cd05e4b789c913063becd96ccace5296a334c950040e58bcac
        5981  +
b48c0f7d7cdaa2cd05e4b789c913063becd96ccace5296a334c950040e58bcac
              \
 No newline at end of file
 4788   5982   
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
 4789   5983   
new file mode 100644
 4790   5984   
index 0000000..379dcb2
 4791         -
-- /dev/null
        5985  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 4792   5986   
@@ -0,0 +1,4 @@
        5987  +
{
        5988  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5989  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5990  +
}
 4793   5991   
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
 4794   5992   
similarity index 99%
 4795   5993   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 4796   5994   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4797   5995   
index f9fb726..7e93f58 100644
 4798         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
        5996  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4799   5997   
@@ -1,7 +1,7 @@
 4800   5998   
GET
 4801   5999   
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4802   6000   
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
 4803   6001   
host:example.amazonaws.com
 4804   6002   
 4805   6003   
host
 4806         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6004  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4807   6005   
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
 4808   6006   
new file mode 100644
 4809   6007   
index 0000000..48311a8
 4810         -
-- /dev/null
        6008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 4811   6009   
@@ -0,0 +1 @@
        6010  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 4812   6011   
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
 4813   6012   
new file mode 100644
 4814   6013   
index 0000000..82da9be
 4815         -
-- /dev/null
        6014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 4816   6015   
@@ -0,0 +1,3 @@
        6016  +
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
        6017  +
Host:example.amazonaws.com
        6018  +
 4817   6019   
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
 4818   6020   
similarity index 99%
 4819   6021   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 4820   6022   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4821   6023   
index ef06e89..4aab9a2 100644
 4822         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
        6024  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4823   6025   
@@ -1,4 +1,4 @@
 4824   6026   
AWS4-ECDSA-P256-SHA256
 4825   6027   
20150830T123600Z
 4826   6028   
20150830/service/aws4_request
 4827         -
a967a5035e5dc574f94fb9f0de0faf9d56e889c26d9a65d7d0a15d89690280d1
        6029  +
a967a5035e5dc574f94fb9f0de0faf9d56e889c26d9a65d7d0a15d89690280d1
              \
 No newline at end of file
 4828   6030   
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
 4829   6031   
similarity index 80%
 4830   6032   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 4831   6033   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4832   6034   
index da760cd..a149694 100644
 4833         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        6035  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4834   6036   
@@ -1,3 +1,2 @@
 4835   6037   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4836   6038   
Host:example.amazonaws.com
 4837         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4838   6039   
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
 4839   6040   
new file mode 100644
 4840   6041   
index 0000000..0468d80
 4841         -
-- /dev/null
        6042  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 4842   6043   
@@ -0,0 +1,12 @@
        6044  +
{
        6045  +
    "credentials": {
        6046  +
        "access_key_id": "AKIDEXAMPLE",
        6047  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6048  +
    },
        6049  +
    "expiration_in_seconds": 3600,
        6050  +
    "normalize": true,
        6051  +
    "region": "us-east-1",
        6052  +
    "service": "service",
        6053  +
    "sign_body": false,
        6054  +
    "timestamp": "2015-08-30T12:36:00Z"
        6055  +
}
              \
 No newline at end of file
 4843   6056   
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
 4844   6057   
new file mode 100644
 4845   6058   
index 0000000..0f1afe7
 4846         -
-- /dev/null
        6059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 4847   6060   
@@ -0,0 +1,9 @@
        6061  +
GET
        6062  +
/%E1%88%B4
        6063  +
        6064  +
host:example.amazonaws.com
        6065  +
x-amz-date:20150830T123600Z
        6066  +
x-amz-region-set:us-east-1
        6067  +
        6068  +
host;x-amz-date;x-amz-region-set
        6069  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4848   6070   
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
 4849   6071   
new file mode 100644
 4850   6072   
index 0000000..4b9af6c
 4851         -
-- /dev/null
        6073  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 4852   6074   
@@ -0,0 +1 @@
        6075  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 4853   6076   
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
 4854   6077   
new file mode 100644
 4855   6078   
index 0000000..d42d7b3
 4856         -
-- /dev/null
        6079  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 4857   6080   
@@ -0,0 +1,6 @@
        6081  +
GET /ሴ HTTP/1.1
        6082  +
Host:example.amazonaws.com
        6083  +
X-Amz-Date:20150830T123600Z
        6084  +
X-Amz-Region-Set:us-east-1
        6085  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        6086  +
 4858   6087   
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
 4859   6088   
new file mode 100644
 4860   6089   
index 0000000..0827f62
 4861         -
-- /dev/null
        6090  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 4862   6091   
@@ -0,0 +1,4 @@
        6092  +
AWS4-ECDSA-P256-SHA256
        6093  +
20150830T123600Z
        6094  +
20150830/service/aws4_request
        6095  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 4863   6096   
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
 4864   6097   
new file mode 100644
 4865   6098   
index 0000000..379dcb2
 4866         -
-- /dev/null
        6099  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 4867   6100   
@@ -0,0 +1,4 @@
        6101  +
{
        6102  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6103  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6104  +
}
 4868   6105   
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
 4869   6106   
new file mode 100644
 4870   6107   
index 0000000..a41a2f8
 4871         -
-- /dev/null
        6108  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 4872   6109   
@@ -0,0 +1,7 @@
        6110  +
GET
        6111  +
/%E1%88%B4
        6112  +
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
        6113  +
host:example.amazonaws.com
        6114  +
        6115  +
host
        6116  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4873   6117   
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
 4874   6118   
new file mode 100644
 4875   6119   
index 0000000..a5c7f4f
 4876         -
-- /dev/null
        6120  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 4877   6121   
@@ -0,0 +1 @@
        6122  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 4878   6123   
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
 4879   6124   
new file mode 100644
 4880   6125   
index 0000000..492ed33
 4881         -
-- /dev/null
        6126  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 4882   6127   
@@ -0,0 +1,3 @@
        6128  +
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
        6129  +
Host:example.amazonaws.com
        6130  +
 4883   6131   
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
 4884   6132   
new file mode 100644
 4885   6133   
index 0000000..a93108f
 4886         -
-- /dev/null
        6134  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 4887   6135   
@@ -0,0 +1,4 @@
        6136  +
AWS4-ECDSA-P256-SHA256
        6137  +
20150830T123600Z
        6138  +
20150830/service/aws4_request
        6139  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 4888   6140   
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
 4889   6141   
new file mode 100644
 4890   6142   
index 0000000..9e273f6
 4891         -
-- /dev/null
        6143  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 4892   6144   
@@ -0,0 +1,2 @@
        6145  +
GET /ሴ HTTP/1.1
        6146  +
Host:example.amazonaws.com
 4893   6147   
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
 4894   6148   
new file mode 100644
 4895   6149   
index 0000000..0468d80
 4896         -
-- /dev/null
        6150  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 4897   6151   
@@ -0,0 +1,12 @@
        6152  +
{
        6153  +
    "credentials": {
        6154  +
        "access_key_id": "AKIDEXAMPLE",
        6155  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6156  +
    },
        6157  +
    "expiration_in_seconds": 3600,
        6158  +
    "normalize": true,
        6159  +
    "region": "us-east-1",
        6160  +
    "service": "service",
        6161  +
    "sign_body": false,
        6162  +
    "timestamp": "2015-08-30T12:36:00Z"
        6163  +
}
              \
 No newline at end of file
 4898   6164   
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
 4899   6165   
similarity index 99%
 4900   6166   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 4901   6167   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4902   6168   
index bb9d4bf..edc0bb4 100644
 4903         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
        6169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4904   6170   
@@ -1,9 +1,9 @@
 4905   6171   
GET
 4906   6172   
/
 4907   6173   
Param1=value1
 4908   6174   
host:example.amazonaws.com
 4909   6175   
x-amz-date:20150830T123600Z
 4910   6176   
x-amz-region-set:us-east-1
 4911   6177   
 4912   6178   
host;x-amz-date;x-amz-region-set
 4913         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6179  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4914   6180   
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
 4915   6181   
new file mode 100644
 4916   6182   
index 0000000..ee9a272
 4917         -
-- /dev/null
        6183  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 4918   6184   
@@ -0,0 +1 @@
        6185  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 4919   6186   
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
 4920   6187   
new file mode 100644
 4921   6188   
index 0000000..2090343
 4922         -
-- /dev/null
        6189  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 4923   6190   
@@ -0,0 +1,6 @@
        6191  +
GET /?Param1=value1 HTTP/1.1
        6192  +
Host:example.amazonaws.com
        6193  +
X-Amz-Date:20150830T123600Z
        6194  +
X-Amz-Region-Set:us-east-1
        6195  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        6196  +
 4924   6197   
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
 4925   6198   
similarity index 99%
 4926   6199   
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
 4927   6200   
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
 4928   6201   
index a176f1d..06ed74f 100644
 4929         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-string-to-sign.txt
        6202  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-string-to-sign.txt
 4930   6203   
@@ -1,4 +1,4 @@
 4931   6204   
AWS4-ECDSA-P256-SHA256
 4932   6205   
20150830T123600Z
 4933   6206   
20150830/service/aws4_request
 4934         -
894f4237e92aae973c992da1d1f39d7a5913a23e9f7cbcf085e9550685eb498a
        6207  +
894f4237e92aae973c992da1d1f39d7a5913a23e9f7cbcf085e9550685eb498a
              \
 No newline at end of file
 4935   6208   
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
 4936   6209   
new file mode 100644
 4937   6210   
index 0000000..379dcb2
 4938         -
-- /dev/null
        6211  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 4939   6212   
@@ -0,0 +1,4 @@
        6213  +
{
        6214  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6215  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6216  +
}
 4940   6217   
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
 4941   6218   
similarity index 99%
 4942   6219   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 4943   6220   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4944   6221   
index 344384b..a875d70 100644
 4945         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
        6222  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4946   6223   
@@ -1,7 +1,7 @@
 4947   6224   
GET
 4948   6225   
/
 4949   6226   
Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4950   6227   
host:example.amazonaws.com
 4951   6228   
 4952   6229   
host
 4953         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6230  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4954   6231   
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
 4955   6232   
new file mode 100644
 4956   6233   
index 0000000..ef93624
 4957         -
-- /dev/null
        6234  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 4958   6235   
@@ -0,0 +1 @@
        6236  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 4959   6237   
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
 4960   6238   
new file mode 100644
 4961   6239   
index 0000000..92829f7
 4962         -
-- /dev/null
        6240  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 4963   6241   
@@ -0,0 +1,3 @@
        6242  +
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
        6243  +
Host:example.amazonaws.com
        6244  +
 4964   6245   
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
 4965   6246   
similarity index 99%
 4966   6247   
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
 4967   6248   
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
 4968   6249   
index b625052..4ff9191 100644
 4969         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-string-to-sign.txt
        6250  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-string-to-sign.txt
 4970   6251   
@@ -1,4 +1,4 @@
 4971   6252   
AWS4-ECDSA-P256-SHA256
 4972   6253   
20150830T123600Z
 4973   6254   
20150830/service/aws4_request
 4974         -
07551f1d699afeb50d6811a527ab7b0270b60448ea27d8cbccb9750d68287b3f
        6255  +
07551f1d699afeb50d6811a527ab7b0270b60448ea27d8cbccb9750d68287b3f
              \
 No newline at end of file
 4975   6256   
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
 4976   6257   
similarity index 67%
 4977   6258   
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
 4978   6259   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4979   6260   
index 970d0a0..f4a03bb 100644
 4980         -
-- 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
        6261  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4981   6262   
@@ -1,3 +1,2 @@
 4982   6263   
GET /?Param1=value1 HTTP/1.1
 4983   6264   
Host:example.amazonaws.com
 4984         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4985   6265   
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
 4986   6266   
new file mode 100644
 4987   6267   
index 0000000..0468d80
 4988         -
-- /dev/null
        6268  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 4989   6269   
@@ -0,0 +1,12 @@
        6270  +
{
        6271  +
    "credentials": {
        6272  +
        "access_key_id": "AKIDEXAMPLE",
        6273  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6274  +
    },
        6275  +
    "expiration_in_seconds": 3600,
        6276  +
    "normalize": true,
        6277  +
    "region": "us-east-1",
        6278  +
    "service": "service",
        6279  +
    "sign_body": false,
        6280  +
    "timestamp": "2015-08-30T12:36:00Z"
        6281  +
}
              \
 No newline at end of file
 4990   6282   
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
 4991   6283   
new file mode 100644
 4992   6284   
index 0000000..da07537
 4993         -
-- /dev/null
        6285  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 4994   6286   
@@ -0,0 +1,9 @@
        6287  +
GET
        6288  +
/
        6289  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        6290  +
host:example.amazonaws.com
        6291  +
x-amz-date:20150830T123600Z
        6292  +
x-amz-region-set:us-east-1
        6293  +
        6294  +
host;x-amz-date;x-amz-region-set
        6295  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4995   6296   
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
 4996   6297   
new file mode 100644
 4997   6298   
index 0000000..edb21e5
 4998         -
-- /dev/null
        6299  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 4999   6300   
@@ -0,0 +1 @@
        6301  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 5000   6302   
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
 5001   6303   
new file mode 100644
 5002   6304   
index 0000000..e60394c
 5003         -
-- /dev/null
        6305  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 5004   6306   
@@ -0,0 +1,6 @@
        6307  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        6308  +
Host:example.amazonaws.com
        6309  +
X-Amz-Date:20150830T123600Z
        6310  +
X-Amz-Region-Set:us-east-1
        6311  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        6312  +
 5005   6313   
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
 5006   6314   
new file mode 100644
 5007   6315   
index 0000000..1dfc886
 5008         -
-- /dev/null
        6316  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 5009   6317   
@@ -0,0 +1,4 @@
        6318  +
AWS4-ECDSA-P256-SHA256
        6319  +
20150830T123600Z
        6320  +
20150830/service/aws4_request
        6321  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 5010   6322   
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
 5011   6323   
new file mode 100644
 5012   6324   
index 0000000..379dcb2
 5013         -
-- /dev/null
        6325  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 5014   6326   
@@ -0,0 +1,4 @@
        6327  +
{
        6328  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6329  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6330  +
}
 5015   6331   
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
 5016   6332   
new file mode 100644
 5017   6333   
index 0000000..e94dc0c
 5018         -
-- /dev/null
        6334  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 5019   6335   
@@ -0,0 +1,7 @@
        6336  +
GET
        6337  +
/
        6338  +
%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
        6339  +
host:example.amazonaws.com
        6340  +
        6341  +
host
        6342  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5020   6343   
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
 5021   6344   
new file mode 100644
 5022   6345   
index 0000000..7489437
 5023         -
-- /dev/null
        6346  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 5024   6347   
@@ -0,0 +1 @@
        6348  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 5025   6349   
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
 5026   6350   
new file mode 100644
 5027   6351   
index 0000000..90c0e73
 5028         -
-- /dev/null
        6352  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 5029   6353   
@@ -0,0 +1,3 @@
        6354  +
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
        6355  +
Host:example.amazonaws.com
        6356  +
 5030   6357   
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
 5031   6358   
new file mode 100644
 5032   6359   
index 0000000..ab8a711
 5033         -
-- /dev/null
        6360  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 5034   6361   
@@ -0,0 +1,4 @@
        6362  +
AWS4-ECDSA-P256-SHA256
        6363  +
20150830T123600Z
        6364  +
20150830/service/aws4_request
        6365  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 5035   6366   
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
 5036   6367   
new file mode 100644
 5037   6368   
index 0000000..368c6e3
 5038         -
-- /dev/null
        6369  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 5039   6370   
@@ -0,0 +1,2 @@
        6371  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        6372  +
Host:example.amazonaws.com
 5040   6373   
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
 5041   6374   
new file mode 100644
 5042   6375   
index 0000000..0468d80
 5043         -
-- /dev/null
        6376  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 5044   6377   
@@ -0,0 +1,12 @@
        6378  +
{
        6379  +
    "credentials": {
        6380  +
        "access_key_id": "AKIDEXAMPLE",
        6381  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6382  +
    },
        6383  +
    "expiration_in_seconds": 3600,
        6384  +
    "normalize": true,
        6385  +
    "region": "us-east-1",
        6386  +
    "service": "service",
        6387  +
    "sign_body": false,
        6388  +
    "timestamp": "2015-08-30T12:36:00Z"
        6389  +
}
              \
 No newline at end of file
 5045   6390   
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
 5046   6391   
similarity index 99%
 5047   6392   
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
 5048   6393   
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
 5049   6394   
index 74f625a..3db56f7 100644
 5050         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/header-canonical-request.txt
        6395  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-canonical-request.txt
 5051   6396   
@@ -1,9 +1,9 @@
 5052   6397   
GET
 5053   6398   
/
 5054   6399   
Param1=value1&Param2=value2
 5055   6400   
host:example.amazonaws.com
 5056   6401   
x-amz-date:20150830T123600Z
 5057   6402   
x-amz-region-set:us-east-1
 5058   6403   
 5059   6404   
host;x-amz-date;x-amz-region-set
 5060         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6405  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5061   6406   
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
 5062   6407   
new file mode 100644
 5063   6408   
index 0000000..e6042bc
 5064         -
-- /dev/null
        6409  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 5065   6410   
@@ -0,0 +1 @@
        6411  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 5066   6412   
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
 5067   6413   
new file mode 100644
 5068   6414   
index 0000000..5505969
 5069         -
-- /dev/null
        6415  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 5070   6416   
@@ -0,0 +1,6 @@
        6417  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        6418  +
Host:example.amazonaws.com
        6419  +
X-Amz-Date:20150830T123600Z
        6420  +
X-Amz-Region-Set:us-east-1
        6421  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        6422  +
 5071   6423   
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
 5072   6424   
similarity index 99%
 5073   6425   
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
 5074   6426   
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
 5075   6427   
index 44873b7..e8f5e31 100644
 5076         -
-- 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
        6428  +
++ 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
 5077   6429   
@@ -1,4 +1,4 @@
 5078   6430   
AWS4-ECDSA-P256-SHA256
 5079   6431   
20150830T123600Z
 5080   6432   
20150830/service/aws4_request
 5081         -
cc07b29e0d0f0b2d6aa296621a5608fd9c2271159b9b2f737f682704ebb96482
        6433  +
cc07b29e0d0f0b2d6aa296621a5608fd9c2271159b9b2f737f682704ebb96482
              \
 No newline at end of file
 5082   6434   
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
 5083   6435   
new file mode 100644
 5084   6436   
index 0000000..379dcb2
 5085         -
-- /dev/null
        6437  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 5086   6438   
@@ -0,0 +1,4 @@
        6439  +
{
        6440  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6441  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6442  +
}
 5087   6443   
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
 5088   6444   
similarity index 99%
 5089   6445   
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
 5090   6446   
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
 5091   6447   
index 6d30727..3fe6a9f 100644
 5092         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/query-canonical-request.txt
        6448  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-canonical-request.txt
 5093   6449   
@@ -1,7 +1,7 @@
 5094   6450   
GET
 5095   6451   
/
 5096   6452   
Param1=value1&Param2=value2&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 5097   6453   
host:example.amazonaws.com
 5098   6454   
 5099   6455   
host
 5100         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6456  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5101   6457   
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
 5102   6458   
new file mode 100644
 5103   6459   
index 0000000..3f35de8
 5104         -
-- /dev/null
        6460  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 5105   6461   
@@ -0,0 +1 @@
        6462  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 5106   6463   
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
 5107   6464   
new file mode 100644
 5108   6465   
index 0000000..30b336b
 5109         -
-- /dev/null
        6466  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 5110   6467   
@@ -0,0 +1,3 @@
        6468  +
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
        6469  +
Host:example.amazonaws.com
        6470  +
 5111   6471   
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
 5112   6472   
similarity index 99%
 5113   6473   
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
 5114   6474   
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
 5115   6475   
index 99d0510..7f0565f 100644
 5116         -
-- 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
        6476  +
++ 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
 5117   6477   
@@ -1,4 +1,4 @@
 5118   6478   
AWS4-ECDSA-P256-SHA256
 5119   6479   
20150830T123600Z
 5120   6480   
20150830/service/aws4_request
 5121         -
c688584c3dbae2868c4911c825239f2c9375e66b9962f21db60b9b2fcd75bf45
        6481  +
c688584c3dbae2868c4911c825239f2c9375e66b9962f21db60b9b2fcd75bf45
              \
 No newline at end of file
 5122   6482   
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
 5123   6483   
similarity index 100%
 5124   6484   
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
 5125   6485   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 5126   6486   
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
 5127   6487   
new file mode 100644
 5128   6488   
index 0000000..0468d80
 5129         -
-- /dev/null
        6489  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 5130   6490   
@@ -0,0 +1,12 @@
        6491  +
{
        6492  +
    "credentials": {
        6493  +
        "access_key_id": "AKIDEXAMPLE",
        6494  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6495  +
    },
        6496  +
    "expiration_in_seconds": 3600,
        6497  +
    "normalize": true,
        6498  +
    "region": "us-east-1",
        6499  +
    "service": "service",
        6500  +
    "sign_body": false,
        6501  +
    "timestamp": "2015-08-30T12:36:00Z"
        6502  +
}
              \
 No newline at end of file
 5131   6503   
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
 5132   6504   
similarity index 99%
 5133   6505   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 5134   6506   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 5135   6507   
index 816c862..cc4537a 100644
 5136         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
        6508  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 5137   6509   
@@ -1,9 +1,9 @@
 5138   6510   
GET
 5139   6511   
/
 5140   6512   
-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 5141   6513   
host:example.amazonaws.com
 5142   6514   
x-amz-date:20150830T123600Z
 5143   6515   
x-amz-region-set:us-east-1
 5144   6516   
 5145   6517   
host;x-amz-date;x-amz-region-set
 5146         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6518  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5147   6519   
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
 5148   6520   
new file mode 100644
 5149   6521   
index 0000000..70d38c1
 5150         -
-- /dev/null
        6522  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 5151   6523   
@@ -0,0 +1 @@
        6524  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 5152   6525   
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
 5153   6526   
new file mode 100644
 5154   6527   
index 0000000..0647eea
 5155         -
-- /dev/null
        6528  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 5156   6529   
@@ -0,0 +1,6 @@
        6530  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        6531  +
Host:example.amazonaws.com
        6532  +
X-Amz-Date:20150830T123600Z
        6533  +
X-Amz-Region-Set:us-east-1
        6534  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        6535  +
 5157   6536   
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
 5158   6537   
similarity index 99%
 5159   6538   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 5160   6539   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 5161   6540   
index 6129fc5..cc19d14 100644
 5162         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
        6541  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 5163   6542   
@@ -1,4 +1,4 @@
 5164   6543   
AWS4-ECDSA-P256-SHA256
 5165   6544   
20150830T123600Z
 5166   6545   
20150830/service/aws4_request
 5167         -
377b8a3e195894659b84cd1c475dc8a3663a663360a349430c0c3b82bd82b77b
        6546  +
377b8a3e195894659b84cd1c475dc8a3663a663360a349430c0c3b82bd82b77b
              \
 No newline at end of file
 5168   6547   
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
 5169   6548   
new file mode 100644
 5170   6549   
index 0000000..379dcb2
 5171         -
-- /dev/null
        6550  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 5172   6551   
@@ -0,0 +1,4 @@
        6552  +
{
        6553  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6554  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6555  +
}
 5173   6556   
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
 5174   6557   
similarity index 99%
 5175   6558   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 5176   6559   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 5177   6560   
index b77ee9f..ed6a10e 100644
 5178         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
        6561  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 5179   6562   
@@ -1,7 +1,7 @@
 5180   6563   
GET
 5181   6564   
/
 5182   6565   
-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 5183   6566   
host:example.amazonaws.com
 5184   6567   
 5185   6568   
host
 5186         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6569  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5187   6570   
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
 5188   6571   
new file mode 100644
 5189   6572   
index 0000000..2ceba7b
 5190         -
-- /dev/null
        6573  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 5191   6574   
@@ -0,0 +1 @@
        6575  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 5192   6576   
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
 5193   6577   
new file mode 100644
 5194   6578   
index 0000000..0cd6d0a
 5195         -
-- /dev/null
        6579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 5196   6580   
@@ -0,0 +1,3 @@
        6581  +
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
        6582  +
Host:example.amazonaws.com
        6583  +
 5197   6584   
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
 5198   6585   
similarity index 99%
 5199   6586   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 5200   6587   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 5201   6588   
index 1cfed7a..aad1421 100644
 5202         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
        6589  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 5203   6590   
@@ -1,4 +1,4 @@
 5204   6591   
AWS4-ECDSA-P256-SHA256
 5205   6592   
20150830T123600Z
 5206   6593   
20150830/service/aws4_request
 5207         -
5d8923c620c699f856a35a6eb8dd786fd4c8c6ab0a35c552caeb5b648989433f
        6594  +
5d8923c620c699f856a35a6eb8dd786fd4c8c6ab0a35c552caeb5b648989433f
              \
 No newline at end of file
 5208   6595   
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
 5209   6596   
similarity index 86%
 5210   6597   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 5211   6598   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 5212   6599   
index d2833b3..36b2fe3 100644
 5213         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        6600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 5214   6601   
@@ -1,3 +1,2 @@
 5215   6602   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 5216   6603   
Host:example.amazonaws.com
 5217         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5218   6604   
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
 5219   6605   
new file mode 100644
 5220   6606   
index 0000000..0468d80
 5221         -
-- /dev/null
        6607  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 5222   6608   
@@ -0,0 +1,12 @@
        6609  +
{
        6610  +
    "credentials": {
        6611  +
        "access_key_id": "AKIDEXAMPLE",
        6612  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6613  +
    },
        6614  +
    "expiration_in_seconds": 3600,
        6615  +
    "normalize": true,
        6616  +
    "region": "us-east-1",
        6617  +
    "service": "service",
        6618  +
    "sign_body": false,
        6619  +
    "timestamp": "2015-08-30T12:36:00Z"
        6620  +
}
              \
 No newline at end of file
 5223   6621   
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
 5224   6622   
new file mode 100644
 5225   6623   
index 0000000..76db73d
 5226         -
-- /dev/null
        6624  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 5227   6625   
@@ -0,0 +1,9 @@
        6626  +
GET
        6627  +
/
        6628  +
        6629  +
host:example.amazonaws.com
        6630  +
x-amz-date:20150830T123600Z
        6631  +
x-amz-region-set:us-east-1
        6632  +
        6633  +
host;x-amz-date;x-amz-region-set
        6634  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5228   6635   
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
 5229   6636   
new file mode 100644
 5230   6637   
index 0000000..281cc62
 5231         -
-- /dev/null
        6638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 5232   6639   
@@ -0,0 +1 @@
        6640  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 5233   6641   
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
 5234   6642   
new file mode 100644
 5235   6643   
index 0000000..cce9925
 5236         -
-- /dev/null
        6644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 5237   6645   
@@ -0,0 +1,6 @@
        6646  +
GET / HTTP/1.1
        6647  +
Host:example.amazonaws.com
        6648  +
X-Amz-Date:20150830T123600Z
        6649  +
X-Amz-Region-Set:us-east-1
        6650  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        6651  +
 5238   6652   
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
 5239   6653   
new file mode 100644
 5240   6654   
index 0000000..600f1d8
 5241         -
-- /dev/null
        6655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 5242   6656   
@@ -0,0 +1,4 @@
        6657  +
AWS4-ECDSA-P256-SHA256
        6658  +
20150830T123600Z
        6659  +
20150830/service/aws4_request
        6660  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5243   6661   
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
 5244   6662   
new file mode 100644
 5245   6663   
index 0000000..379dcb2
 5246         -
-- /dev/null
        6664  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 5247   6665   
@@ -0,0 +1,4 @@
        6666  +
{
        6667  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6668  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6669  +
}
 5248   6670   
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
 5249   6671   
new file mode 100644
 5250   6672   
index 0000000..779c51c
 5251         -
-- /dev/null
        6673  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 5252   6674   
@@ -0,0 +1,7 @@
        6675  +
GET
        6676  +
/
        6677  +
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
        6678  +
host:example.amazonaws.com
        6679  +
        6680  +
host
        6681  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5253   6682   
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
 5254   6683   
new file mode 100644
 5255   6684   
index 0000000..2979e5e
 5256         -
-- /dev/null
        6685  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 5257   6686   
@@ -0,0 +1 @@
        6687  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 5258   6688   
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
 5259   6689   
new file mode 100644
 5260   6690   
index 0000000..1b3179c
 5261         -
-- /dev/null
        6691  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 5262   6692   
@@ -0,0 +1,3 @@
        6693  +
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
        6694  +
Host:example.amazonaws.com
        6695  +
 5263   6696   
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
 5264   6697   
new file mode 100644
 5265   6698   
index 0000000..6e29a7e
 5266         -
-- /dev/null
        6699  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 5267   6700   
@@ -0,0 +1,4 @@
        6701  +
AWS4-ECDSA-P256-SHA256
        6702  +
20150830T123600Z
        6703  +
20150830/service/aws4_request
        6704  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 5268   6705   
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
 5269   6706   
similarity index 60%
 5270   6707   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 5271   6708   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 5272   6709   
index 0f7a9bf..e659c3b 100644
 5273         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        6710  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 5274   6711   
@@ -1,3 +1,2 @@
 5275   6712   
GET / HTTP/1.1
 5276   6713   
Host:example.amazonaws.com
 5277         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5278   6714   
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
 5279   6715   
new file mode 100644
 5280   6716   
index 0000000..0468d80
 5281         -
-- /dev/null
        6717  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 5282   6718   
@@ -0,0 +1,12 @@
        6719  +
{
        6720  +
    "credentials": {
        6721  +
        "access_key_id": "AKIDEXAMPLE",
        6722  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6723  +
    },
        6724  +
    "expiration_in_seconds": 3600,
        6725  +
    "normalize": true,
        6726  +
    "region": "us-east-1",
        6727  +
    "service": "service",
        6728  +
    "sign_body": false,
        6729  +
    "timestamp": "2015-08-30T12:36:00Z"
        6730  +
}
              \
 No newline at end of file
 5283   6731   
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
 5284   6732   
new file mode 100644
 5285   6733   
index 0000000..8841ddf
 5286         -
-- /dev/null
        6734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 5287   6735   
@@ -0,0 +1,9 @@
        6736  +
GET
        6737  +
/
        6738  +
%E1%88%B4=bar
        6739  +
host:example.amazonaws.com
        6740  +
x-amz-date:20150830T123600Z
        6741  +
x-amz-region-set:us-east-1
        6742  +
        6743  +
host;x-amz-date;x-amz-region-set
        6744  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5288   6745   
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
 5289   6746   
new file mode 100644
 5290   6747   
index 0000000..1497add
 5291         -
-- /dev/null
        6748  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 5292   6749   
@@ -0,0 +1 @@
        6750  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 5293   6751   
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
 5294   6752   
new file mode 100644
 5295   6753   
index 0000000..961bc10
 5296         -
-- /dev/null
        6754  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 5297   6755   
@@ -0,0 +1,6 @@
        6756  +
GET /?ሴ=bar HTTP/1.1
        6757  +
Host:example.amazonaws.com
        6758  +
X-Amz-Date:20150830T123600Z
        6759  +
X-Amz-Region-Set:us-east-1
        6760  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        6761  +
 5298   6762   
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
 5299   6763   
new file mode 100644
 5300   6764   
index 0000000..e78ed70
 5301         -
-- /dev/null
        6765  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 5302   6766   
@@ -0,0 +1,4 @@
        6767  +
AWS4-ECDSA-P256-SHA256
        6768  +
20150830T123600Z
        6769  +
20150830/service/aws4_request
        6770  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 5303   6771   
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
 5304   6772   
new file mode 100644
 5305   6773   
index 0000000..379dcb2
 5306         -
-- /dev/null
        6774  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 5307   6775   
@@ -0,0 +1,4 @@
        6776  +
{
        6777  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6778  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6779  +
}
 5308   6780   
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
 5309   6781   
new file mode 100644
 5310   6782   
index 0000000..6d5ae93
 5311         -
-- /dev/null
        6783  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 5312   6784   
@@ -0,0 +1,7 @@
        6785  +
GET
        6786  +
/
        6787  +
%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
        6788  +
host:example.amazonaws.com
        6789  +
        6790  +
host
        6791  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5313   6792   
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
 5314   6793   
new file mode 100644
 5315   6794   
index 0000000..92107f2
 5316         -
-- /dev/null
        6795  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 5317   6796   
@@ -0,0 +1 @@
        6797  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 5318   6798   
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
 5319   6799   
new file mode 100644
 5320   6800   
index 0000000..bb8a75b
 5321         -
-- /dev/null
        6801  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 5322   6802   
@@ -0,0 +1,3 @@
        6803  +
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
        6804  +
Host:example.amazonaws.com
        6805  +
 5323   6806   
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
 5324   6807   
new file mode 100644
 5325   6808   
index 0000000..9fa94c7
 5326         -
-- /dev/null
        6809  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 5327   6810   
@@ -0,0 +1,4 @@
        6811  +
AWS4-ECDSA-P256-SHA256
        6812  +
20150830T123600Z
        6813  +
20150830/service/aws4_request
        6814  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 5328   6815   
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
 5329   6816   
new file mode 100644
 5330   6817   
index 0000000..aff333a
 5331         -
-- /dev/null
        6818  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 5332   6819   
@@ -0,0 +1,2 @@
        6820  +
GET /?ሴ=bar HTTP/1.1
        6821  +
Host:example.amazonaws.com
 5333   6822   
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
 5334   6823   
new file mode 100644
 5335   6824   
index 0000000..a334e18
 5336         -
-- /dev/null
        6825  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 5337   6826   
@@ -0,0 +1,13 @@
        6827  +
{
        6828  +
    "credentials": {
        6829  +
        "access_key_id": "AKIDEXAMPLE",
        6830  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6831  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        6832  +
    },
        6833  +
    "expiration_in_seconds": 3600,
        6834  +
    "normalize": true,
        6835  +
    "region": "us-east-1",
        6836  +
    "service": "service",
        6837  +
    "sign_body": false,
        6838  +
    "timestamp": "2015-08-30T12:36:00Z"
        6839  +
}
              \
 No newline at end of file
 5338   6840   
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
 5339   6841   
similarity index 99%
 5340   6842   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 5341   6843   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5342   6844   
index f14defd..0e9ad42 100644
 5343         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
        6845  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5344   6846   
@@ -1,10 +1,10 @@
 5345   6847   
GET
 5346   6848   
/
 5347   6849   
 5348   6850   
host:example.amazonaws.com
 5349   6851   
x-amz-date:20150830T123600Z
 5350   6852   
x-amz-region-set:us-east-1
 5351   6853   
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
 5352   6854   
 5353   6855   
host;x-amz-date;x-amz-region-set;x-amz-security-token
 5354         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6856  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5355   6857   
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
 5356   6858   
new file mode 100644
 5357   6859   
index 0000000..a7673b5
 5358         -
-- /dev/null
        6860  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 5359   6861   
@@ -0,0 +1 @@
        6862  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 5360   6863   
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
 5361   6864   
new file mode 100644
 5362   6865   
index 0000000..ed16e76
 5363         -
-- /dev/null
        6866  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 5364   6867   
@@ -0,0 +1,7 @@
        6868  +
GET / HTTP/1.1
        6869  +
Host:example.amazonaws.com
        6870  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        6871  +
X-Amz-Date:20150830T123600Z
        6872  +
X-Amz-Region-Set:us-east-1
        6873  +
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
        6874  +
 5365   6875   
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
 5366   6876   
similarity index 99%
 5367   6877   
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
 5368   6878   
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
 5369   6879   
index 4edece5..6c1ec65 100644
 5370         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-string-to-sign.txt
        6880  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-string-to-sign.txt
 5371   6881   
@@ -1,4 +1,4 @@
 5372   6882   
AWS4-ECDSA-P256-SHA256
 5373   6883   
20150830T123600Z
 5374   6884   
20150830/service/aws4_request
 5375         -
79893373104239a0547df489af395ec3c1b8873a8601f07f11ffd3f1ac557e7d
        6885  +
79893373104239a0547df489af395ec3c1b8873a8601f07f11ffd3f1ac557e7d
              \
 No newline at end of file
 5376   6886   
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
 5377   6887   
new file mode 100644
 5378   6888   
index 0000000..379dcb2
 5379         -
-- /dev/null
        6889  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 5380   6890   
@@ -0,0 +1,4 @@
        6891  +
{
        6892  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6893  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6894  +
}
 5381   6895   
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
 5382   6896   
similarity index 99%
 5383   6897   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 5384   6898   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5385   6899   
index 7c042af..1876b42 100644
 5386         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
        6900  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5387   6901   
@@ -1,7 +1,7 @@
 5388   6902   
GET
 5389   6903   
/
 5390   6904   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Security-Token=6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267&X-Amz-SignedHeaders=host
 5391   6905   
host:example.amazonaws.com
 5392   6906   
 5393   6907   
host
 5394         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6908  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5395   6909   
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
 5396   6910   
new file mode 100644
 5397   6911   
index 0000000..903dfb4
 5398         -
-- /dev/null
        6912  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 5399   6913   
@@ -0,0 +1 @@
        6914  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 5400   6915   
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
 5401   6916   
new file mode 100644
 5402   6917   
index 0000000..bf1d246
 5403         -
-- /dev/null
        6918  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 5404   6919   
@@ -0,0 +1,3 @@
        6920  +
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
        6921  +
Host:example.amazonaws.com
        6922  +
 5405   6923   
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
 5406   6924   
similarity index 99%
 5407   6925   
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
 5408   6926   
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
 5409   6927   
index 0fd066a..f1b1790 100644
 5410         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-string-to-sign.txt
        6928  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-string-to-sign.txt
 5411   6929   
@@ -1,4 +1,4 @@
 5412   6930   
AWS4-ECDSA-P256-SHA256
 5413   6931   
20150830T123600Z
 5414   6932   
20150830/service/aws4_request
 5415         -
496062b4c2ed2175fe08ad084158783fa8d013c694542af721d49b25d1ebd390
        6933  +
496062b4c2ed2175fe08ad084158783fa8d013c694542af721d49b25d1ebd390
              \
 No newline at end of file
 5416   6934   
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
 5417   6935   
similarity index 60%
 5418   6936   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 5419   6937   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5420   6938   
index 0f7a9bf..e659c3b 100644
 5421         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        6939  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5422   6940   
@@ -1,3 +1,2 @@
 5423   6941   
GET / HTTP/1.1
 5424   6942   
Host:example.amazonaws.com
 5425         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5426   6943   
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
 5427   6944   
new file mode 100644
 5428   6945   
index 0000000..76db73d
 5429         -
-- /dev/null
        6946  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 5430   6947   
@@ -0,0 +1,9 @@
        6948  +
GET
        6949  +
/
        6950  +
        6951  +
host:example.amazonaws.com
        6952  +
x-amz-date:20150830T123600Z
        6953  +
x-amz-region-set:us-east-1
        6954  +
        6955  +
host;x-amz-date;x-amz-region-set
        6956  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5431   6957   
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
 5432   6958   
new file mode 100644
 5433   6959   
index 0000000..0468d80
 5434         -
-- /dev/null
        6960  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 5435   6961   
@@ -0,0 +1,12 @@
        6962  +
{
        6963  +
    "credentials": {
        6964  +
        "access_key_id": "AKIDEXAMPLE",
        6965  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6966  +
    },
        6967  +
    "expiration_in_seconds": 3600,
        6968  +
    "normalize": true,
        6969  +
    "region": "us-east-1",
        6970  +
    "service": "service",
        6971  +
    "sign_body": false,
        6972  +
    "timestamp": "2015-08-30T12:36:00Z"
        6973  +
}
              \
 No newline at end of file
 5436   6974   
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
 5437   6975   
new file mode 100644
 5438   6976   
index 0000000..76db73d
 5439         -
-- /dev/null
        6977  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 5440   6978   
@@ -0,0 +1,9 @@
        6979  +
GET
        6980  +
/
        6981  +
        6982  +
host:example.amazonaws.com
        6983  +
x-amz-date:20150830T123600Z
        6984  +
x-amz-region-set:us-east-1
        6985  +
        6986  +
host;x-amz-date;x-amz-region-set
        6987  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5441   6988   
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
 5442   6989   
new file mode 100644
 5443   6990   
index 0000000..a96ff24
 5444         -
-- /dev/null
        6991  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 5445   6992   
@@ -0,0 +1 @@
        6993  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 5446   6994   
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
 5447   6995   
new file mode 100644
 5448   6996   
index 0000000..689078b
 5449         -
-- /dev/null
        6997  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 5450   6998   
@@ -0,0 +1,6 @@
        6999  +
GET / HTTP/1.1
        7000  +
Host:example.amazonaws.com
        7001  +
X-Amz-Date:20150830T123600Z
        7002  +
X-Amz-Region-Set:us-east-1
        7003  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        7004  +
 5451   7005   
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
 5452   7006   
new file mode 100644
 5453   7007   
index 0000000..600f1d8
 5454         -
-- /dev/null
        7008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 5455   7009   
@@ -0,0 +1,4 @@
        7010  +
AWS4-ECDSA-P256-SHA256
        7011  +
20150830T123600Z
        7012  +
20150830/service/aws4_request
        7013  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5456   7014   
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
 5457   7015   
new file mode 100644
 5458   7016   
index 0000000..379dcb2
 5459         -
-- /dev/null
        7017  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 5460   7018   
@@ -0,0 +1,4 @@
        7019  +
{
        7020  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7021  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7022  +
}
 5461   7023   
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
 5462   7024   
new file mode 100644
 5463   7025   
index 0000000..779c51c
 5464         -
-- /dev/null
        7026  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 5465   7027   
@@ -0,0 +1,7 @@
        7028  +
GET
        7029  +
/
        7030  +
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
        7031  +
host:example.amazonaws.com
        7032  +
        7033  +
host
        7034  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5466   7035   
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
 5467   7036   
new file mode 100644
 5468   7037   
index 0000000..cc42158
 5469         -
-- /dev/null
        7038  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 5470   7039   
@@ -0,0 +1 @@
        7040  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 5471   7041   
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
 5472   7042   
new file mode 100644
 5473   7043   
index 0000000..dc6d01d
 5474         -
-- /dev/null
        7044  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 5475   7045   
@@ -0,0 +1,3 @@
        7046  +
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
        7047  +
Host:example.amazonaws.com
        7048  +
 5476   7049   
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
 5477   7050   
new file mode 100644
 5478   7051   
index 0000000..6e29a7e
 5479         -
-- /dev/null
        7052  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 5480   7053   
@@ -0,0 +1,4 @@
        7054  +
AWS4-ECDSA-P256-SHA256
        7055  +
20150830T123600Z
        7056  +
20150830/service/aws4_request
        7057  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 5481   7058   
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
 5482   7059   
new file mode 100644
 5483   7060   
index 0000000..e659c3b
 5484         -
-- /dev/null
        7061  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 5485   7062   
@@ -0,0 +1,2 @@
        7063  +
GET / HTTP/1.1
        7064  +
Host:example.amazonaws.com
 5486   7065   
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
 5487   7066   
new file mode 100644
 5488   7067   
index 0000000..600f1d8
 5489         -
-- /dev/null
        7068  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 5490   7069   
@@ -0,0 +1,4 @@
        7070  +
AWS4-ECDSA-P256-SHA256
        7071  +
20150830T123600Z
        7072  +
20150830/service/aws4_request
        7073  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5491   7074   
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
 5492   7075   
new file mode 100644
 5493   7076   
index 0000000..0468d80
 5494         -
-- /dev/null
        7077  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 5495   7078   
@@ -0,0 +1,12 @@
        7079  +
{
        7080  +
    "credentials": {
        7081  +
        "access_key_id": "AKIDEXAMPLE",
        7082  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7083  +
    },
        7084  +
    "expiration_in_seconds": 3600,
        7085  +
    "normalize": true,
        7086  +
    "region": "us-east-1",
        7087  +
    "service": "service",
        7088  +
    "sign_body": false,
        7089  +
    "timestamp": "2015-08-30T12:36:00Z"
        7090  +
}
              \
 No newline at end of file
 5496   7091   
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
 5497   7092   
similarity index 99%
 5498   7093   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 5499   7094   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5500   7095   
index a6942c1..e881ac7 100644
 5501         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
        7096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5502   7097   
@@ -1,9 +1,9 @@
 5503   7098   
POST
 5504   7099   
/
 5505   7100   
 5506   7101   
host:example.amazonaws.com
 5507   7102   
x-amz-date:20150830T123600Z
 5508   7103   
x-amz-region-set:us-east-1
 5509   7104   
 5510   7105   
host;x-amz-date;x-amz-region-set
 5511         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7106  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5512   7107   
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
 5513   7108   
new file mode 100644
 5514   7109   
index 0000000..4210210
 5515         -
-- /dev/null
        7110  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 5516   7111   
@@ -0,0 +1 @@
        7112  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 5517   7113   
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
 5518   7114   
new file mode 100644
 5519   7115   
index 0000000..257b110
 5520         -
-- /dev/null
        7116  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 5521   7117   
@@ -0,0 +1,6 @@
        7118  +
POST / HTTP/1.1
        7119  +
Host:example.amazonaws.com
        7120  +
X-Amz-Date:20150830T123600Z
        7121  +
X-Amz-Region-Set:us-east-1
        7122  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        7123  +
 5522   7124   
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
 5523   7125   
similarity index 99%
 5524   7126   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 5525   7127   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5526   7128   
index d5650cb..f8adf13 100644
 5527         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
        7129  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5528   7130   
@@ -1,4 +1,4 @@
 5529   7131   
AWS4-ECDSA-P256-SHA256
 5530   7132   
20150830T123600Z
 5531   7133   
20150830/service/aws4_request
 5532         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7134  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5533   7135   
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
 5534   7136   
new file mode 100644
 5535   7137   
index 0000000..379dcb2
 5536         -
-- /dev/null
        7138  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 5537   7139   
@@ -0,0 +1,4 @@
        7140  +
{
        7141  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7142  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7143  +
}
 5538   7144   
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
 5539   7145   
similarity index 99%
 5540   7146   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 5541   7147   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5542   7148   
index e48ce07..5ea8e3c 100644
 5543         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
        7149  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5544   7150   
@@ -1,7 +1,7 @@
 5545   7151   
POST
 5546   7152   
/
 5547   7153   
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
 5548   7154   
host:example.amazonaws.com
 5549   7155   
 5550   7156   
host
 5551         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7157  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5552   7158   
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
 5553   7159   
new file mode 100644
 5554   7160   
index 0000000..9e2069e
 5555         -
-- /dev/null
        7161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 5556   7162   
@@ -0,0 +1 @@
        7163  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 5557   7164   
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
 5558   7165   
new file mode 100644
 5559   7166   
index 0000000..67f5d29
 5560         -
-- /dev/null
        7167  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 5561   7168   
@@ -0,0 +1,3 @@
        7169  +
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
        7170  +
Host:example.amazonaws.com
        7171  +
 5562   7172   
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
 5563   7173   
similarity index 99%
 5564   7174   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 5565   7175   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5566   7176   
index 34e3382..711c162 100644
 5567         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
        7177  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5568   7178   
@@ -1,4 +1,4 @@
 5569   7179   
AWS4-ECDSA-P256-SHA256
 5570   7180   
20150830T123600Z
 5571   7181   
20150830/service/aws4_request
 5572         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7182  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5573   7183   
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
 5574   7184   
similarity index 61%
 5575   7185   
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
 5576   7186   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5577   7187   
index 3dc4179..3f0a82a 100644
 5578         -
-- 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
        7188  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5579   7189   
@@ -1,3 +1,2 @@
 5580   7190   
POST / HTTP/1.1
 5581   7191   
Host:example.amazonaws.com
 5582         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5583   7192   
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
 5584   7193   
new file mode 100644
 5585   7194   
index 0000000..0468d80
 5586         -
-- /dev/null
        7195  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 5587   7196   
@@ -0,0 +1,12 @@
        7197  +
{
        7198  +
    "credentials": {
        7199  +
        "access_key_id": "AKIDEXAMPLE",
        7200  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7201  +
    },
        7202  +
    "expiration_in_seconds": 3600,
        7203  +
    "normalize": true,
        7204  +
    "region": "us-east-1",
        7205  +
    "service": "service",
        7206  +
    "sign_body": false,
        7207  +
    "timestamp": "2015-08-30T12:36:00Z"
        7208  +
}
              \
 No newline at end of file
 5588   7209   
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
 5589   7210   
similarity index 99%
 5590   7211   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 5591   7212   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5592   7213   
index a8e1727..2883822 100644
 5593         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
        7214  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5594   7215   
@@ -1,10 +1,10 @@
 5595   7216   
POST
 5596   7217   
/
 5597   7218   
 5598   7219   
host:example.amazonaws.com
 5599   7220   
my-header1:value1
 5600   7221   
x-amz-date:20150830T123600Z
 5601   7222   
x-amz-region-set:us-east-1
 5602   7223   
 5603   7224   
host;my-header1;x-amz-date;x-amz-region-set
 5604         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7225  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5605   7226   
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
 5606   7227   
new file mode 100644
 5607   7228   
index 0000000..e3c2e6e
 5608         -
-- /dev/null
        7229  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 5609   7230   
@@ -0,0 +1 @@
        7231  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 5610   7232   
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
 5611   7233   
new file mode 100644
 5612   7234   
index 0000000..1d6e288
 5613         -
-- /dev/null
        7235  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 5614   7236   
@@ -0,0 +1,7 @@
        7237  +
POST / HTTP/1.1
        7238  +
Host:example.amazonaws.com
        7239  +
My-Header1:value1
        7240  +
X-Amz-Date:20150830T123600Z
        7241  +
X-Amz-Region-Set:us-east-1
        7242  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        7243  +
 5615   7244   
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
 5616   7245   
similarity index 99%
 5617   7246   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 5618   7247   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5619   7248   
index f6e3e9b..7c5236a 100644
 5620         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
        7249  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5621   7250   
@@ -1,4 +1,4 @@
 5622   7251   
AWS4-ECDSA-P256-SHA256
 5623   7252   
20150830T123600Z
 5624   7253   
20150830/service/aws4_request
 5625         -
b92b1e85236a12f9d118f85fb6686c83b0e83fb3428f8d4da3cc9acb2851fcfa
        7254  +
b92b1e85236a12f9d118f85fb6686c83b0e83fb3428f8d4da3cc9acb2851fcfa
              \
 No newline at end of file
 5626   7255   
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
 5627   7256   
new file mode 100644
 5628   7257   
index 0000000..379dcb2
 5629         -
-- /dev/null
        7258  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 5630   7259   
@@ -0,0 +1,4 @@
        7260  +
{
        7261  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7262  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7263  +
}
 5631   7264   
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
 5632   7265   
similarity index 99%
 5633   7266   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 5634   7267   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5635   7268   
index 0ae73e1..2cf3f29 100644
 5636         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
        7269  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5637   7270   
@@ -1,8 +1,8 @@
 5638   7271   
POST
 5639   7272   
/
 5640   7273   
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
 5641   7274   
host:example.amazonaws.com
 5642   7275   
my-header1:value1
 5643   7276   
 5644   7277   
host;my-header1
 5645         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7278  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5646   7279   
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
 5647   7280   
new file mode 100644
 5648   7281   
index 0000000..2a08401
 5649         -
-- /dev/null
        7282  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 5650   7283   
@@ -0,0 +1 @@
        7284  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 5651   7285   
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
 5652   7286   
new file mode 100644
 5653   7287   
index 0000000..8d2343f
 5654         -
-- /dev/null
        7288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 5655   7289   
@@ -0,0 +1,4 @@
        7290  +
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
        7291  +
Host:example.amazonaws.com
        7292  +
My-Header1:value1
        7293  +
 5656   7294   
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
 5657   7295   
similarity index 99%
 5658   7296   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 5659   7297   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5660   7298   
index 8cb96bf..2c4db7a 100644
 5661         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
        7299  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5662   7300   
@@ -1,4 +1,4 @@
 5663   7301   
AWS4-ECDSA-P256-SHA256
 5664   7302   
20150830T123600Z
 5665   7303   
20150830/service/aws4_request
 5666         -
336638ab840d4785edc7db35ab9c036bc15ffb2dc1a4e05b04f3a7cd7407593f
        7304  +
336638ab840d4785edc7db35ab9c036bc15ffb2dc1a4e05b04f3a7cd7407593f
              \
 No newline at end of file
 5667   7305   
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
 5668   7306   
similarity index 69%
 5669   7307   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 5670   7308   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5671   7309   
index 0253f19..917720e 100644
 5672         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        7310  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5673   7311   
@@ -1,4 +1,3 @@
 5674   7312   
POST / HTTP/1.1
 5675   7313   
Host:example.amazonaws.com
 5676   7314   
My-Header1:value1
 5677         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5678   7315   
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
 5679   7316   
new file mode 100644
 5680   7317   
index 0000000..0468d80
 5681         -
-- /dev/null
        7318  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 5682   7319   
@@ -0,0 +1,12 @@
        7320  +
{
        7321  +
    "credentials": {
        7322  +
        "access_key_id": "AKIDEXAMPLE",
        7323  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7324  +
    },
        7325  +
    "expiration_in_seconds": 3600,
        7326  +
    "normalize": true,
        7327  +
    "region": "us-east-1",
        7328  +
    "service": "service",
        7329  +
    "sign_body": false,
        7330  +
    "timestamp": "2015-08-30T12:36:00Z"
        7331  +
}
              \
 No newline at end of file
 5683   7332   
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
 5684   7333   
similarity index 99%
 5685   7334   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 5686   7335   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5687   7336   
index 1dc3ef8..164e65c 100644
 5688         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
        7337  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5689   7338   
@@ -1,10 +1,10 @@
 5690   7339   
POST
 5691   7340   
/
 5692   7341   
 5693   7342   
host:example.amazonaws.com
 5694   7343   
my-header1:VALUE1
 5695   7344   
x-amz-date:20150830T123600Z
 5696   7345   
x-amz-region-set:us-east-1
 5697   7346   
 5698   7347   
host;my-header1;x-amz-date;x-amz-region-set
 5699         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7348  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5700   7349   
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
 5701   7350   
new file mode 100644
 5702   7351   
index 0000000..7072b0e
 5703         -
-- /dev/null
        7352  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 5704   7353   
@@ -0,0 +1 @@
        7354  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 5705   7355   
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
 5706   7356   
new file mode 100644
 5707   7357   
index 0000000..17f5e3e
 5708         -
-- /dev/null
        7358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 5709   7359   
@@ -0,0 +1,7 @@
        7360  +
POST / HTTP/1.1
        7361  +
Host:example.amazonaws.com
        7362  +
My-Header1:VALUE1
        7363  +
X-Amz-Date:20150830T123600Z
        7364  +
X-Amz-Region-Set:us-east-1
        7365  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        7366  +
 5710   7367   
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
 5711   7368   
similarity index 99%
 5712   7369   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 5713   7370   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5714   7371   
index 59c7e45..620f54e 100644
 5715         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
        7372  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5716   7373   
@@ -1,4 +1,4 @@
 5717   7374   
AWS4-ECDSA-P256-SHA256
 5718   7375   
20150830T123600Z
 5719   7376   
20150830/service/aws4_request
 5720         -
7de5a74bc45fb5c8a90faada2ab9538e69e4a5eb7f330f62387715669cecd492
        7377  +
7de5a74bc45fb5c8a90faada2ab9538e69e4a5eb7f330f62387715669cecd492
              \
 No newline at end of file
 5721   7378   
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
 5722   7379   
new file mode 100644
 5723   7380   
index 0000000..379dcb2
 5724         -
-- /dev/null
        7381  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 5725   7382   
@@ -0,0 +1,4 @@
        7383  +
{
        7384  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7385  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7386  +
}
 5726   7387   
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
 5727   7388   
similarity index 99%
 5728   7389   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 5729   7390   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5730   7391   
index 377e6f3..23e0da3 100644
 5731         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
        7392  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5732   7393   
@@ -1,8 +1,8 @@
 5733   7394   
POST
 5734   7395   
/
 5735   7396   
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
 5736   7397   
host:example.amazonaws.com
 5737   7398   
my-header1:VALUE1
 5738   7399   
 5739   7400   
host;my-header1
 5740         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7401  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5741   7402   
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
 5742   7403   
new file mode 100644
 5743   7404   
index 0000000..a18acb8
 5744         -
-- /dev/null
        7405  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 5745   7406   
@@ -0,0 +1 @@
        7407  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 5746   7408   
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
 5747   7409   
new file mode 100644
 5748   7410   
index 0000000..7cbdcfa
 5749         -
-- /dev/null
        7411  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 5750   7412   
@@ -0,0 +1,4 @@
        7413  +
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
        7414  +
Host:example.amazonaws.com
        7415  +
My-Header1:VALUE1
        7416  +
 5751   7417   
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
 5752   7418   
similarity index 99%
 5753   7419   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 5754   7420   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5755   7421   
index 84a7afd..0c90627 100644
 5756         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
        7422  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5757   7423   
@@ -1,4 +1,4 @@
 5758   7424   
AWS4-ECDSA-P256-SHA256
 5759   7425   
20150830T123600Z
 5760   7426   
20150830/service/aws4_request
 5761         -
949fb555e05d3289760ff0f0566ad73a69ed865000d9843b93a15b916dbc8b6f
        7427  +
949fb555e05d3289760ff0f0566ad73a69ed865000d9843b93a15b916dbc8b6f
              \
 No newline at end of file
 5762   7428   
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
 5763   7429   
similarity index 69%
 5764   7430   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 5765   7431   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5766   7432   
index 3f9987a..5f14c91 100644
 5767         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        7433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5768   7434   
@@ -1,4 +1,3 @@
 5769   7435   
POST / HTTP/1.1
 5770   7436   
Host:example.amazonaws.com
 5771   7437   
My-Header1:VALUE1
 5772         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5773   7438   
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
 5774   7439   
new file mode 100644
 5775   7440   
index 0000000..8f1d5ce
 5776         -
-- /dev/null
        7441  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 5777   7442   
@@ -0,0 +1,14 @@
        7443  +
{
        7444  +
    "credentials": {
        7445  +
        "access_key_id": "AKIDEXAMPLE",
        7446  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        7447  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        7448  +
    },
        7449  +
    "expiration_in_seconds": 3600,
        7450  +
    "normalize": true,
        7451  +
    "region": "us-east-1",
        7452  +
    "service": "service",
        7453  +
    "sign_body": false,
        7454  +
    "timestamp": "2015-08-30T12:36:00Z",
        7455  +
    "omit_session_token": true
        7456  +
}
 5778   7457   
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
 5779   7458   
similarity index 99%
 5780   7459   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 5781   7460   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5782   7461   
index a6942c1..e881ac7 100644
 5783         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
        7462  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5784   7463   
@@ -1,9 +1,9 @@
 5785   7464   
POST
 5786   7465   
/
 5787   7466   
 5788   7467   
host:example.amazonaws.com
 5789   7468   
x-amz-date:20150830T123600Z
 5790   7469   
x-amz-region-set:us-east-1
 5791   7470   
 5792   7471   
host;x-amz-date;x-amz-region-set
 5793         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7472  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5794   7473   
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
 5795   7474   
new file mode 100644
 5796   7475   
index 0000000..9c5ecb9
 5797         -
-- /dev/null
        7476  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 5798   7477   
@@ -0,0 +1 @@
        7478  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 5799   7479   
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
 5800   7480   
similarity index 52%
 5801   7481   
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
 5802   7482   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5803   7483   
index 9d91775..61b6527 100644
 5804         -
-- 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
        7484  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5805   7485   
@@ -1,4 +1,7 @@
 5806   7486   
POST / HTTP/1.1
 5807   7487   
Host:example.amazonaws.com
        7488  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 5808   7489   
X-Amz-Date:20150830T123600Z
 5809         -
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
        7490  +
X-Amz-Region-Set:us-east-1
        7491  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        7492  +
 5810   7493   
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
 5811   7494   
similarity index 99%
 5812   7495   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 5813   7496   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5814   7497   
index d5650cb..f8adf13 100644
 5815         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
        7498  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5816   7499   
@@ -1,4 +1,4 @@
 5817   7500   
AWS4-ECDSA-P256-SHA256
 5818   7501   
20150830T123600Z
 5819   7502   
20150830/service/aws4_request
 5820         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7503  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5821   7504   
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
 5822   7505   
new file mode 100644
 5823   7506   
index 0000000..379dcb2
 5824         -
-- /dev/null
        7507  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 5825   7508   
@@ -0,0 +1,4 @@
        7509  +
{
        7510  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7511  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7512  +
}
 5826   7513   
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
 5827   7514   
similarity index 99%
 5828   7515   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 5829   7516   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5830   7517   
index e48ce07..5ea8e3c 100644
 5831         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
        7518  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5832   7519   
@@ -1,7 +1,7 @@
 5833   7520   
POST
 5834   7521   
/
 5835   7522   
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
 5836   7523   
host:example.amazonaws.com
 5837   7524   
 5838   7525   
host
 5839         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7526  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5840   7527   
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
 5841   7528   
new file mode 100644
 5842   7529   
index 0000000..ff8823a
 5843         -
-- /dev/null
        7530  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 5844   7531   
@@ -0,0 +1 @@
        7532  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 5845   7533   
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
 5846   7534   
new file mode 100644
 5847   7535   
index 0000000..cfac41b
 5848         -
-- /dev/null
        7536  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 5849   7537   
@@ -0,0 +1,3 @@
        7538  +
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
        7539  +
Host:example.amazonaws.com
        7540  +
 5850   7541   
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
 5851   7542   
similarity index 99%
 5852   7543   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 5853   7544   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5854   7545   
index 34e3382..711c162 100644
 5855         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
        7546  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5856   7547   
@@ -1,4 +1,4 @@
 5857   7548   
AWS4-ECDSA-P256-SHA256
 5858   7549   
20150830T123600Z
 5859   7550   
20150830/service/aws4_request
 5860         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7551  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5861   7552   
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
 5862   7553   
similarity index 61%
 5863   7554   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 5864   7555   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 5865   7556   
index 3dc4179..3f0a82a 100644
 5866         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        7557  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 5867   7558   
@@ -1,3 +1,2 @@
 5868   7559   
POST / HTTP/1.1
 5869   7560   
Host:example.amazonaws.com
 5870         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5871   7561   
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
 5872   7562   
new file mode 100644
 5873   7563   
index 0000000..5187392
 5874         -
-- /dev/null
        7564  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 5875   7565   
@@ -0,0 +1,14 @@
        7566  +
{
        7567  +
    "credentials": {
        7568  +
        "access_key_id": "AKIDEXAMPLE",
        7569  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        7570  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        7571  +
    },
        7572  +
    "expiration_in_seconds": 3600,
        7573  +
    "normalize": true,
        7574  +
    "region": "us-east-1",
        7575  +
    "service": "service",
        7576  +
    "sign_body": false,
        7577  +
    "timestamp": "2015-08-30T12:36:00Z",
        7578  +
    "omit_session_token": false
        7579  +
}
 5876   7580   
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
 5877   7581   
similarity index 99%
 5878   7582   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 5879   7583   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 5880   7584   
index dd408c8..e95924e 100644
 5881         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
        7585  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 5882   7586   
@@ -1,10 +1,10 @@
 5883   7587   
POST
 5884   7588   
/
 5885   7589   
 5886   7590   
host:example.amazonaws.com
 5887   7591   
x-amz-date:20150830T123600Z
 5888   7592   
x-amz-region-set:us-east-1
 5889   7593   
x-amz-security-token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 5890   7594   
 5891   7595   
host;x-amz-date;x-amz-region-set;x-amz-security-token
 5892         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7596  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5893   7597   
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
 5894   7598   
new file mode 100644
 5895   7599   
index 0000000..1573f07
 5896         -
-- /dev/null
        7600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 5897   7601   
@@ -0,0 +1 @@
        7602  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 5898   7603   
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
 5899   7604   
new file mode 100644
 5900   7605   
index 0000000..6ef9a08
 5901         -
-- /dev/null
        7606  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 5902   7607   
@@ -0,0 +1,7 @@
        7608  +
POST / HTTP/1.1
        7609  +
Host:example.amazonaws.com
        7610  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        7611  +
X-Amz-Date:20150830T123600Z
        7612  +
X-Amz-Region-Set:us-east-1
        7613  +
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
        7614  +
 5903   7615   
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
 5904   7616   
similarity index 99%
 5905   7617   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 5906   7618   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 5907   7619   
index f352b54..3c3235f 100644
 5908         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
        7620  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 5909   7621   
@@ -1,4 +1,4 @@
 5910   7622   
AWS4-ECDSA-P256-SHA256
 5911   7623   
20150830T123600Z
 5912   7624   
20150830/service/aws4_request
 5913         -
964c15d46a67b327b877c02d680c81cb75df04e85144142e190da565ff0d029f
        7625  +
964c15d46a67b327b877c02d680c81cb75df04e85144142e190da565ff0d029f
              \
 No newline at end of file
 5914   7626   
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
 5915   7627   
new file mode 100644
 5916   7628   
index 0000000..379dcb2
 5917         -
-- /dev/null
        7629  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 5918   7630   
@@ -0,0 +1,4 @@
        7631  +
{
        7632  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7633  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7634  +
}
 5919   7635   
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
 5920   7636   
similarity index 99%
 5921   7637   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 5922   7638   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 5923   7639   
index 832cdc0..63b7de5 100644
 5924         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
        7640  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 5925   7641   
@@ -1,7 +1,7 @@
 5926   7642   
POST
 5927   7643   
/
 5928   7644   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-SignedHeaders=host
 5929   7645   
host:example.amazonaws.com
 5930   7646   
 5931   7647   
host
 5932         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7648  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5933   7649   
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
 5934   7650   
new file mode 100644
 5935   7651   
index 0000000..713f57c
 5936         -
-- /dev/null
        7652  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 5937   7653   
@@ -0,0 +1 @@
        7654  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 5938   7655   
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
 5939   7656   
new file mode 100644
 5940   7657   
index 0000000..32c3bb3
 5941         -
-- /dev/null
        7658  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 5942   7659   
@@ -0,0 +1,3 @@
        7660  +
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
        7661  +
Host:example.amazonaws.com
        7662  +
 5943   7663   
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
 5944   7664   
similarity index 99%
 5945   7665   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 5946   7666   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 5947   7667   
index d7f3668..b46cd8c 100644
 5948         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
        7668  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 5949   7669   
@@ -1,4 +1,4 @@
 5950   7670   
AWS4-ECDSA-P256-SHA256
 5951   7671   
20150830T123600Z
 5952   7672   
20150830/service/aws4_request
 5953         -
c3a8ba26c461df46b5010b756fb8644fd922a2aea95d77b56295e5e4d3bb155f
        7673  +
c3a8ba26c461df46b5010b756fb8644fd922a2aea95d77b56295e5e4d3bb155f
              \
 No newline at end of file
 5954   7674   
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
 5955   7675   
similarity index 60%
 5956   7676   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 5957   7677   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5958   7678   
index 8b5efc8..3f0a82a 100644
 5959         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        7679  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5960   7680   
@@ -1,3 +1,2 @@
 5961   7681   
POST / HTTP/1.1
 5962   7682   
Host:example.amazonaws.com
 5963         -
X-Amz-Date:20150830T123600Z
 5964   7683   
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
 5965   7684   
new file mode 100644
 5966   7685   
index 0000000..0468d80
 5967         -
-- /dev/null
        7686  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 5968   7687   
@@ -0,0 +1,12 @@
        7688  +
{
        7689  +
    "credentials": {
        7690  +
        "access_key_id": "AKIDEXAMPLE",
        7691  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7692  +
    },
        7693  +
    "expiration_in_seconds": 3600,
        7694  +
    "normalize": true,
        7695  +
    "region": "us-east-1",
        7696  +
    "service": "service",
        7697  +
    "sign_body": false,
        7698  +
    "timestamp": "2015-08-30T12:36:00Z"
        7699  +
}
              \
 No newline at end of file
 5969   7700   
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
 5970   7701   
similarity index 99%
 5971   7702   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 5972   7703   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 5973   7704   
index 02af60f..34b8c11 100644
 5974         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
        7705  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 5975   7706   
@@ -1,9 +1,9 @@
 5976   7707   
POST
 5977   7708   
/
 5978   7709   
Param1=value1
 5979   7710   
host:example.amazonaws.com
 5980   7711   
x-amz-date:20150830T123600Z
 5981   7712   
x-amz-region-set:us-east-1
 5982   7713   
 5983   7714   
host;x-amz-date;x-amz-region-set
 5984         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7715  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5985   7716   
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
 5986   7717   
new file mode 100644
 5987   7718   
index 0000000..aac6427
 5988         -
-- /dev/null
        7719  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 5989   7720   
@@ -0,0 +1 @@
        7721  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 5990   7722   
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
 5991   7723   
new file mode 100644
 5992   7724   
index 0000000..a611436
 5993         -
-- /dev/null
        7725  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 5994   7726   
@@ -0,0 +1,6 @@
        7727  +
POST /?Param1=value1 HTTP/1.1
        7728  +
Host:example.amazonaws.com
        7729  +
X-Amz-Date:20150830T123600Z
        7730  +
X-Amz-Region-Set:us-east-1
        7731  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        7732  +
 5995   7733   
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
 5996   7734   
similarity index 99%
 5997   7735   
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
 5998   7736   
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
 5999   7737   
index 4256b4f..ad88dff 100644
 6000         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-string-to-sign.txt
        7738  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-string-to-sign.txt
 6001   7739   
@@ -1,4 +1,4 @@
 6002   7740   
AWS4-ECDSA-P256-SHA256
 6003   7741   
20150830T123600Z
 6004   7742   
20150830/service/aws4_request
 6005         -
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
        7743  +
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
              \
 No newline at end of file
 6006   7744   
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
 6007   7745   
new file mode 100644
 6008   7746   
index 0000000..379dcb2
 6009         -
-- /dev/null
        7747  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 6010   7748   
@@ -0,0 +1,4 @@
        7749  +
{
        7750  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7751  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7752  +
}
 6011   7753   
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
 6012   7754   
similarity index 99%
 6013   7755   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 6014   7756   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 6015   7757   
index fa84bbd..76d5ad6 100644
 6016         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
        7758  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 6017   7759   
@@ -1,7 +1,7 @@
 6018   7760   
POST
 6019   7761   
/
 6020   7762   
Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 6021   7763   
host:example.amazonaws.com
 6022   7764   
 6023   7765   
host
 6024         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7766  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6025   7767   
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
 6026   7768   
new file mode 100644
 6027   7769   
index 0000000..4cb1c94
 6028         -
-- /dev/null
        7770  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 6029   7771   
@@ -0,0 +1 @@
        7772  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 6030   7773   
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
 6031   7774   
new file mode 100644
 6032   7775   
index 0000000..bd22b97
 6033         -
-- /dev/null
        7776  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 6034   7777   
@@ -0,0 +1,3 @@
        7778  +
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
        7779  +
Host:example.amazonaws.com
        7780  +
 6035   7781   
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
 6036   7782   
similarity index 99%
 6037   7783   
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
 6038   7784   
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
 6039   7785   
index de270ef..8c9d319 100644
 6040         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-string-to-sign.txt
        7786  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-string-to-sign.txt
 6041   7787   
@@ -1,4 +1,4 @@
 6042   7788   
AWS4-ECDSA-P256-SHA256
 6043   7789   
20150830T123600Z
 6044   7790   
20150830/service/aws4_request
 6045         -
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
        7791  +
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
              \
 No newline at end of file
 6046   7792   
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
 6047   7793   
similarity index 67%
 6048   7794   
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
 6049   7795   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 6050   7796   
index 9157bc7..c9d6e5d 100644
 6051         -
-- 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
        7797  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 6052   7798   
@@ -1,3 +1,2 @@
 6053   7799   
POST /?Param1=value1 HTTP/1.1
 6054   7800   
Host:example.amazonaws.com
 6055         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 6056   7801   
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
 6057   7802   
new file mode 100644
 6058   7803   
index 0000000..0468d80
 6059         -
-- /dev/null
        7804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 6060   7805   
@@ -0,0 +1,12 @@
        7806  +
{
        7807  +
    "credentials": {
        7808  +
        "access_key_id": "AKIDEXAMPLE",
        7809  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7810  +
    },
        7811  +
    "expiration_in_seconds": 3600,
        7812  +
    "normalize": true,
        7813  +
    "region": "us-east-1",
        7814  +
    "service": "service",
        7815  +
    "sign_body": false,
        7816  +
    "timestamp": "2015-08-30T12:36:00Z"
        7817  +
}
              \
 No newline at end of file
 6061   7818   
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
 6062   7819   
similarity index 99%
 6063   7820   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 6064   7821   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 6065   7822   
index 02af60f..34b8c11 100644
 6066         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
        7823  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 6067   7824   
@@ -1,9 +1,9 @@
 6068   7825   
POST
 6069   7826   
/
 6070   7827   
Param1=value1
 6071   7828   
host:example.amazonaws.com
 6072   7829   
x-amz-date:20150830T123600Z
 6073   7830   
x-amz-region-set:us-east-1
 6074   7831   
 6075   7832   
host;x-amz-date;x-amz-region-set
 6076         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7833  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6077   7834   
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
 6078   7835   
new file mode 100644
 6079   7836   
index 0000000..34f75c8
 6080         -
-- /dev/null
        7837  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 6081   7838   
@@ -0,0 +1 @@
        7839  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 6082   7840   
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
 6083   7841   
new file mode 100644
 6084   7842   
index 0000000..c731408
 6085         -
-- /dev/null
        7843  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 6086   7844   
@@ -0,0 +1,6 @@
        7845  +
POST /?Param1=value1 HTTP/1.1
        7846  +
Host:example.amazonaws.com
        7847  +
X-Amz-Date:20150830T123600Z
        7848  +
X-Amz-Region-Set:us-east-1
        7849  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        7850  +
 6087   7851   
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
 6088   7852   
similarity index 99%
 6089   7853   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 6090   7854   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 6091   7855   
index 4256b4f..ad88dff 100644
 6092         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
        7856  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 6093   7857   
@@ -1,4 +1,4 @@
 6094   7858   
AWS4-ECDSA-P256-SHA256
 6095   7859   
20150830T123600Z
 6096   7860   
20150830/service/aws4_request
 6097         -
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
        7861  +
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
              \
 No newline at end of file
 6098   7862   
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
 6099   7863   
new file mode 100644
 6100   7864   
index 0000000..379dcb2
 6101         -
-- /dev/null
        7865  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 6102   7866   
@@ -0,0 +1,4 @@
        7867  +
{
        7868  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7869  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7870  +
}
 6103   7871   
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
 6104   7872   
similarity index 99%
 6105   7873   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 6106   7874   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 6107   7875   
index fa84bbd..76d5ad6 100644
 6108         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
        7876  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 6109   7877   
@@ -1,7 +1,7 @@
 6110   7878   
POST
 6111   7879   
/
 6112   7880   
Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 6113   7881   
host:example.amazonaws.com
 6114   7882   
 6115   7883   
host
 6116         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7884  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6117   7885   
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
 6118   7886   
new file mode 100644
 6119   7887   
index 0000000..ae000d6
 6120         -
-- /dev/null
        7888  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 6121   7889   
@@ -0,0 +1 @@
        7890  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 6122   7891   
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
 6123   7892   
new file mode 100644
 6124   7893   
index 0000000..a868f7d
 6125         -
-- /dev/null
        7894  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 6126   7895   
@@ -0,0 +1,3 @@
        7896  +
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
        7897  +
Host:example.amazonaws.com
        7898  +
 6127   7899   
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
 6128   7900   
similarity index 99%
 6129   7901   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 6130   7902   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 6131   7903   
index de270ef..8c9d319 100644
 6132         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
        7904  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 6133   7905   
@@ -1,4 +1,4 @@
 6134   7906   
AWS4-ECDSA-P256-SHA256
 6135   7907   
20150830T123600Z
 6136   7908   
20150830/service/aws4_request
 6137         -
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
        7909  +
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
              \
 No newline at end of file
 6138   7910   
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
 6139   7911   
similarity index 67%
 6140   7912   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 6141   7913   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 6142   7914   
index 9157bc7..c9d6e5d 100644
 6143         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        7915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 6144   7916   
@@ -1,3 +1,2 @@
 6145   7917   
POST /?Param1=value1 HTTP/1.1
 6146   7918   
Host:example.amazonaws.com
 6147         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 6148   7919   
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
 6149   7920   
new file mode 100644
 6150   7921   
index 0000000..0468d80
 6151         -
-- /dev/null
        7922  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 6152   7923   
@@ -0,0 +1,12 @@
        7924  +
{
        7925  +
    "credentials": {
        7926  +
        "access_key_id": "AKIDEXAMPLE",
        7927  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7928  +
    },
        7929  +
    "expiration_in_seconds": 3600,
        7930  +
    "normalize": true,
        7931  +
    "region": "us-east-1",
        7932  +
    "service": "service",
        7933  +
    "sign_body": false,
        7934  +
    "timestamp": "2015-08-30T12:36:00Z"
        7935  +
}
              \
 No newline at end of file
 6153   7936   
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
 6154   7937   
similarity index 99%
 6155   7938   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 6156   7939   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 6157   7940   
index a6942c1..e881ac7 100644
 6158         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
        7941  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 6159   7942   
@@ -1,9 +1,9 @@
 6160   7943   
POST
 6161   7944   
/
 6162   7945   
 6163   7946   
host:example.amazonaws.com
 6164   7947   
x-amz-date:20150830T123600Z
 6165   7948   
x-amz-region-set:us-east-1
 6166   7949   
 6167   7950   
host;x-amz-date;x-amz-region-set
 6168         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7951  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6169   7952   
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
 6170   7953   
new file mode 100644
 6171   7954   
index 0000000..7c5e47b
 6172         -
-- /dev/null
        7955  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 6173   7956   
@@ -0,0 +1 @@
        7957  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 6174   7958   
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
 6175   7959   
new file mode 100644
 6176   7960   
index 0000000..c0e50a0
 6177         -
-- /dev/null
        7961  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 6178   7962   
@@ -0,0 +1,6 @@
        7963  +
POST / HTTP/1.1
        7964  +
Host:example.amazonaws.com
        7965  +
X-Amz-Date:20150830T123600Z
        7966  +
X-Amz-Region-Set:us-east-1
        7967  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        7968  +
 6179   7969   
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
 6180   7970   
similarity index 99%
 6181   7971   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 6182   7972   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 6183   7973   
index d5650cb..f8adf13 100644
 6184         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
        7974  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 6185   7975   
@@ -1,4 +1,4 @@
 6186   7976   
AWS4-ECDSA-P256-SHA256
 6187   7977   
20150830T123600Z
 6188   7978   
20150830/service/aws4_request
 6189         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7979  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 6190   7980   
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
 6191   7981   
new file mode 100644
 6192   7982   
index 0000000..379dcb2
 6193         -
-- /dev/null
        7983  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 6194   7984   
@@ -0,0 +1,4 @@
        7985  +
{
        7986  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7987  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7988  +
}
 6195   7989   
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
 6196   7990   
similarity index 99%
 6197   7991   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 6198   7992   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 6199   7993   
index e48ce07..5ea8e3c 100644
 6200         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
        7994  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 6201   7995   
@@ -1,7 +1,7 @@
 6202   7996   
POST
 6203   7997   
/
 6204   7998   
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
 6205   7999   
host:example.amazonaws.com
 6206   8000   
 6207   8001   
host
 6208         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8002  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6209   8003   
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
 6210   8004   
new file mode 100644
 6211   8005   
index 0000000..ea8e3b4
 6212         -
-- /dev/null
        8006  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 6213   8007   
@@ -0,0 +1 @@
        8008  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 6214   8009   
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
 6215   8010   
new file mode 100644
 6216   8011   
index 0000000..616973f
 6217         -
-- /dev/null
        8012  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 6218   8013   
@@ -0,0 +1,3 @@
        8014  +
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
        8015  +
Host:example.amazonaws.com
        8016  +
 6219   8017   
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
 6220   8018   
similarity index 99%
 6221   8019   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 6222   8020   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 6223   8021   
index 34e3382..711c162 100644
 6224         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
        8022  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 6225   8023   
@@ -1,4 +1,4 @@
 6226   8024   
AWS4-ECDSA-P256-SHA256
 6227   8025   
20150830T123600Z
 6228   8026   
20150830/service/aws4_request
 6229         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        8027  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 6230   8028   
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
 6231   8029   
new file mode 100644
 6232   8030   
index 0000000..3f0a82a
 6233         -
-- /dev/null
        8031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 6234   8032   
@@ -0,0 +1,2 @@
        8033  +
POST / HTTP/1.1
        8034  +
Host:example.amazonaws.com
 6235   8035   
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
 6236   8036   
new file mode 100644
 6237   8037   
index 0000000..0db1df1
 6238         -
-- /dev/null
        8038  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 6239   8039   
@@ -0,0 +1,12 @@
        8040  +
{
        8041  +
    "credentials": {
        8042  +
        "access_key_id": "AKIDEXAMPLE",
        8043  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        8044  +
    },
        8045  +
    "expiration_in_seconds": 3600,
        8046  +
    "normalize": true,
        8047  +
    "region": "us-east-1",
        8048  +
    "service": "service",
        8049  +
    "sign_body": true,
        8050  +
    "timestamp": "2015-08-30T12:36:00Z"
        8051  +
}
              \
 No newline at end of file
 6240   8052   
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
 6241   8053   
similarity index 62%
 6242   8054   
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
 6243   8055   
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
 6244   8056   
index 05ab787..62639b2 100644
 6245         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        8057  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 6246   8058   
@@ -1,12 +1,12 @@
 6247   8059   
POST
 6248   8060   
/
 6249   8061   
 6250   8062   
content-length:13
 6251   8063   
content-type:application/x-www-form-urlencoded; charset=utf-8
 6252   8064   
host:example.amazonaws.com
 6253         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8065  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 6254   8066   
x-amz-date:20150830T123600Z
 6255   8067   
x-amz-region-set:us-east-1
 6256   8068   
 6257   8069   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 6258         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8070  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6259   8071   
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
 6260   8072   
new file mode 100644
 6261   8073   
index 0000000..006ec2e
 6262         -
-- /dev/null
        8074  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 6263   8075   
@@ -0,0 +1 @@
        8076  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 6264   8077   
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
 6265   8078   
new file mode 100644
 6266   8079   
index 0000000..87a11f2
 6267         -
-- /dev/null
        8080  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 6268   8081   
@@ -0,0 +1,10 @@
        8082  +
POST / HTTP/1.1
        8083  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        8084  +
Host:example.amazonaws.com
        8085  +
Content-Length:13
        8086  +
X-Amz-Date:20150830T123600Z
        8087  +
X-Amz-Region-Set:us-east-1
        8088  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8089  +
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
        8090  +
        8091  +
Param1=value1
              \
 No newline at end of file
 6269   8092   
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
 6270   8093   
new file mode 100644
 6271   8094   
index 0000000..c047afb
 6272         -
-- /dev/null
        8095  +
++ 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
 6273   8096   
@@ -0,0 +1,4 @@
        8097  +
AWS4-ECDSA-P256-SHA256
        8098  +
20150830T123600Z
        8099  +
20150830/service/aws4_request
        8100  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 6274   8101   
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
 6275   8102   
new file mode 100644
 6276   8103   
index 0000000..379dcb2
 6277         -
-- /dev/null
        8104  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 6278   8105   
@@ -0,0 +1,4 @@
        8106  +
{
        8107  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        8108  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        8109  +
}
 6279   8110   
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
 6280   8111   
similarity index 85%
 6281   8112   
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
 6282   8113   
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
 6283   8114   
index fcc454f..6933a8c 100644
 6284         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        8115  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 6285   8116   
@@ -1,9 +1,9 @@
 6286   8117   
POST
 6287   8118   
/
 6288   8119   
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
 6289   8120   
content-length:13
 6290   8121   
content-type:application/x-www-form-urlencoded; charset=utf-8
 6291   8122   
host:example.amazonaws.com
 6292   8123   
 6293   8124   
content-length;content-type;host
 6294         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8125  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6295   8126   
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
 6296   8127   
new file mode 100644
 6297   8128   
index 0000000..34a2e12
 6298         -
-- /dev/null
        8129  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 6299   8130   
@@ -0,0 +1 @@
        8131  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 6300   8132   
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
 6301   8133   
new file mode 100644
 6302   8134   
index 0000000..197b99e
 6303         -
-- /dev/null
        8135  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 6304   8136   
@@ -0,0 +1,6 @@
        8137  +
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
        8138  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        8139  +
Host:example.amazonaws.com
        8140  +
Content-Length:13
        8141  +
        8142  +
Param1=value1
              \
 No newline at end of file
 6305   8143   
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
 6306   8144   
new file mode 100644
 6307   8145   
index 0000000..9d2bc74
 6308         -
-- /dev/null
        8146  +
++ 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
 6309   8147   
@@ -0,0 +1,4 @@
        8148  +
AWS4-ECDSA-P256-SHA256
        8149  +
20150830T123600Z
        8150  +
20150830/service/aws4_request
        8151  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 6310   8152   
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
 6311   8153   
similarity index 80%
 6312   8154   
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
 6313   8155   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6314   8156   
index 36015f1..8289eaa 100644
 6315         -
-- 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
        8157  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6316   8158   
@@ -1,6 +1,6 @@
 6317   8159   
POST / HTTP/1.1
 6318   8160   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 6319   8161   
Host:example.amazonaws.com
 6320         -
X-Amz-Date:20150830T123600Z
        8162  +
Content-Length:13
 6321   8163   
 6322   8164   
Param1=value1
              \
 No newline at end of file
 6323   8165   
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
 6324   8166   
new file mode 100644
 6325   8167   
index 0000000..0db1df1
 6326         -
-- /dev/null
        8168  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 6327   8169   
@@ -0,0 +1,12 @@
        8170  +
{
        8171  +
    "credentials": {
        8172  +
        "access_key_id": "AKIDEXAMPLE",
        8173  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        8174  +
    },
        8175  +
    "expiration_in_seconds": 3600,
        8176  +
    "normalize": true,
        8177  +
    "region": "us-east-1",
        8178  +
    "service": "service",
        8179  +
    "sign_body": true,
        8180  +
    "timestamp": "2015-08-30T12:36:00Z"
        8181  +
}
              \
 No newline at end of file
 6328   8182   
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
 6329   8183   
similarity index 61%
 6330   8184   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 6331   8185   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6332   8186   
index 69009dc..797632b 100644
 6333         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        8187  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6334   8188   
@@ -1,12 +1,12 @@
 6335   8189   
POST
 6336   8190   
/
 6337   8191   
 6338   8192   
content-length:13
 6339   8193   
content-type:application/x-www-form-urlencoded
 6340   8194   
host:example.amazonaws.com
 6341         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8195  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 6342   8196   
x-amz-date:20150830T123600Z
 6343   8197   
x-amz-region-set:us-east-1
 6344   8198   
 6345   8199   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 6346         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8200  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6347   8201   
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
 6348   8202   
new file mode 100644
 6349   8203   
index 0000000..f5a641c
 6350         -
-- /dev/null
        8204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 6351   8205   
@@ -0,0 +1 @@
        8206  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 6352   8207   
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
 6353   8208   
new file mode 100644
 6354   8209   
index 0000000..7bd94a7
 6355         -
-- /dev/null
        8210  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 6356   8211   
@@ -0,0 +1,10 @@
        8212  +
POST / HTTP/1.1
        8213  +
Content-Type:application/x-www-form-urlencoded
        8214  +
Host:example.amazonaws.com
        8215  +
Content-Length:13
        8216  +
X-Amz-Date:20150830T123600Z
        8217  +
X-Amz-Region-Set:us-east-1
        8218  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8219  +
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
        8220  +
        8221  +
Param1=value1
              \
 No newline at end of file
 6357   8222   
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
 6358   8223   
new file mode 100644
 6359   8224   
index 0000000..8d25ba9
 6360         -
-- /dev/null
        8225  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 6361   8226   
@@ -0,0 +1,4 @@
        8227  +
AWS4-ECDSA-P256-SHA256
        8228  +
20150830T123600Z
        8229  +
20150830/service/aws4_request
        8230  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 6362   8231   
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
 6363   8232   
new file mode 100644
 6364   8233   
index 0000000..379dcb2
 6365         -
-- /dev/null
        8234  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 6366   8235   
@@ -0,0 +1,4 @@
        8236  +
{
        8237  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        8238  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        8239  +
}
 6367   8240   
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
 6368   8241   
similarity index 99%
 6369   8242   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 6370   8243   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6371   8244   
index 9ed065b..563ff58 100644
 6372         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
        8245  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6373   8246   
@@ -1,9 +1,9 @@
 6374   8247   
POST
 6375   8248   
/
 6376   8249   
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
 6377   8250   
content-length:13
 6378   8251   
content-type:application/x-www-form-urlencoded
 6379   8252   
host:example.amazonaws.com
 6380   8253   
 6381   8254   
content-length;content-type;host
 6382         -
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8255  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6383   8256   
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
 6384   8257   
new file mode 100644
 6385   8258   
index 0000000..0c77daf
 6386         -
-- /dev/null
        8259  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 6387   8260   
@@ -0,0 +1 @@
        8261  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 6388   8262   
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
 6389   8263   
new file mode 100644
 6390   8264   
index 0000000..71d6de9
 6391         -
-- /dev/null
        8265  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 6392   8266   
@@ -0,0 +1,6 @@
        8267  +
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
        8268  +
Content-Type:application/x-www-form-urlencoded
        8269  +
Host:example.amazonaws.com
        8270  +
Content-Length:13
        8271  +
        8272  +
Param1=value1
              \
 No newline at end of file
 6393   8273   
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
 6394   8274   
similarity index 99%
 6395   8275   
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
 6396   8276   
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
 6397   8277   
index bef3143..cc7a224 100644
 6398         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-string-to-sign.txt
        8278  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-string-to-sign.txt
 6399   8279   
@@ -1,4 +1,4 @@
 6400   8280   
AWS4-ECDSA-P256-SHA256
 6401   8281   
20150830T123600Z
 6402   8282   
20150830/service/aws4_request
 6403         -
4e4122984d30d13170a298ece62cc30f8da12578fb3b482616b1f11036b13934
        8283  +
4e4122984d30d13170a298ece62cc30f8da12578fb3b482616b1f11036b13934
              \
 No newline at end of file
 6404   8284   
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
 6405   8285   
new file mode 100644
 6406   8286   
index 0000000..760b2d3
 6407         -
-- /dev/null
        8287  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 6408   8288   
@@ -0,0 +1,6 @@
        8289  +
POST / HTTP/1.1
        8290  +
Content-Type:application/x-www-form-urlencoded
        8291  +
Host:example.amazonaws.com
        8292  +
Content-Length:13
        8293  +
        8294  +
Param1=value1
              \
 No newline at end of file
 6409   8295   
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
 6410   8296   
index 9bd636f..b53f33f 100644
 6411         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        8297  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 6412   8298   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 6413   8299   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 6414   8300   
        }
 6415   8301   
 6416   8302   
        if let SignatureValues::QueryParams(values) = values {
 6417   8303   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 6418   8304   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 6419   8305   
 6420   8306   
            #[cfg(feature = "sigv4a")]
 6421   8307   
            if let Some(regions) = values.region_set {
 6422   8308   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 6423   8309   
            }
 6424   8310   
 6425   8311   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 6426   8312   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 6427   8313   
            add_param(
 6428   8314   
                &mut params,
 6429   8315   
                param::X_AMZ_SIGNED_HEADERS,
 6430   8316   
                values.signed_headers.as_str(),
 6431   8317   
            );
 6432   8318   
 6433   8319   
            if let Some(security_token) = values.security_token {
 6434   8320   
                add_param(
 6435   8321   
                    &mut params,
 6436   8322   
                    settings
 6437   8323   
                        .session_token_name_override
 6438   8324   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 6439   8325   
                    security_token,
 6440   8326   
                );
 6441   8327   
            }
 6442   8328   
        }
 6443         -
        // Sort by param name, and then by param value
        8329  +
        8330  +
        // Sort on the _encoded_ key/value pairs
        8331  +
        let mut params: Vec<(String, String)> = params
        8332  +
            .into_iter()
        8333  +
            .map(|x| {
        8334  +
                use aws_smithy_http::query::fmt_string;
        8335  +
                let enc_k = fmt_string(&x.0);
        8336  +
                let enc_v = fmt_string(&x.1);
        8337  +
                (enc_k, enc_v)
        8338  +
            })
        8339  +
            .collect();
        8340  +
 6444   8341   
        params.sort();
 6445   8342   
 6446   8343   
        let mut query = QueryWriter::new(uri);
 6447   8344   
        query.clear_params();
 6448   8345   
        for (key, value) in params {
 6449         -
            query.insert(&key, &value);
        8346  +
            query.insert_encoded(&key, &value);
 6450   8347   
        }
 6451   8348   
 6452   8349   
        let query = query.build_query();
 6453   8350   
        if query.is_empty() {
 6454   8351   
            None
 6455   8352   
        } else {
 6456   8353   
            Some(query)
 6457   8354   
        }
 6458   8355   
    }
 6459   8356   
 6460   8357   
    fn insert_host_header(
 6461   8358   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 6462   8359   
        uri: &Uri,
 6463   8360   
    ) -> HeaderValue {
 6464   8361   
        match canonical_headers.get(&HOST) {
 6465   8362   
            Some(header) => header.clone(),
 6466   8363   
            None => {
 6467   8364   
                let port = uri.port();
 6468   8365   
                let scheme = uri.scheme();
 6469   8366   
                let authority = uri
 6470   8367   
                    .authority()
 6471   8368   
                    .expect("request uri authority must be set for signing")
 6472   8369   
                    .as_str();
 6473   8370   
                let host = uri
 6474   8371   
                    .host()
 6475   8372   
                    .expect("request uri host must be set for signing");
 6476   8373   
 6477   8374   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 6478   8375   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 6479   8376   
                // sent in the Host header (and Hyper strips default ports if they are present)
 6480   8377   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 6481   8378   
            service,
 6482   8379   
            hashed_creq,
 6483   8380   
            signature_version: SignatureVersion::V4a,
 6484   8381   
        }
 6485   8382   
    }
 6486   8383   
}
 6487   8384   
 6488   8385   
impl fmt::Display for StringToSign<'_> {
 6489   8386   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 6490   8387   
        write!(
 6491   8388   
            f,
 6492   8389   
            "{}\n{}\n{}\n{}",
 6493   8390   
            self.algorithm,
 6494   8391   
            format_date_time(self.time),
 6495   8392   
            match self.signature_version {
 6496   8393   
                SignatureVersion::V4 => self.scope.to_string(),
 6497   8394   
                SignatureVersion::V4a => self.scope.v4a_display(),
 6498   8395   
            },
 6499   8396   
            self.hashed_creq
 6500   8397   
        )
 6501   8398   
    }
 6502   8399   
}
 6503   8400   
 6504   8401   
#[cfg(test)]
 6505   8402   
mod tests {
 6506   8403   
    use crate::date_time::test_parsers::parse_date_time;
 6507   8404   
    use crate::http_request::canonical_request::{
 6508   8405   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 6509   8406   
    };
 6510   8407   
    use crate::http_request::test;
        8408  +
    use crate::http_request::test::SigningSuiteTest;
 6511   8409   
    use crate::http_request::{
 6512   8410   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 6513   8411   
        SigningParams, SigningSettings,
 6514   8412   
    };
 6515   8413   
    use crate::sign::v4;
 6516   8414   
    use crate::sign::v4::sha256_hex_string;
 6517   8415   
    use aws_credential_types::Credentials;
 6518   8416   
    use aws_smithy_http::query_writer::QueryWriter;
 6519   8417   
    use aws_smithy_runtime_api::client::identity::Identity;
 6520   8418   
    use http0::{HeaderValue, Uri};
 6521   8419   
    use pretty_assertions::assert_eq;
 6522   8420   
    use proptest::{prelude::*, proptest};
 6523   8421   
    use std::borrow::Cow;
 6524   8422   
    use std::time::Duration;
 6525   8423   
 6526   8424   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 6527   8425   
        v4::signing_params::Builder::default()
 6528   8426   
            .identity(identity)
 6529   8427   
            .region("test-region")
 6530   8428   
            .name("testservicename")
 6531   8429   
            .time(parse_date_time("20210511T154045Z").unwrap())
 6532   8430   
            .settings(settings)
 6533   8431   
            .build()
 6534   8432   
            .unwrap()
 6535   8433   
            .into()
 6536   8434   
    }
 6537   8435   
 6538   8436   
    #[test]
 6539   8437   
    fn test_repeated_header() {
 6540         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8438  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8439  +
        let mut req = test.request();
 6541   8440   
        req.headers.push((
 6542   8441   
            "x-amz-object-attributes".to_string(),
 6543   8442   
            "Checksum".to_string(),
 6544   8443   
        ));
 6545   8444   
        req.headers.push((
 6546   8445   
            "x-amz-object-attributes".to_string(),
 6547   8446   
            "ObjectSize".to_string(),
 6548   8447   
        ));
 6549   8448   
        let req = SignableRequest::from(&req);
 6550   8449   
        let settings = SigningSettings {
 6551   8450   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6552   8451   
            session_token_mode: SessionTokenMode::Exclude,
 6553   8452   
            ..Default::default()
 6554   8453   
        };
 6555   8454   
        let identity = Credentials::for_tests().into();
 6556   8455   
        let signing_params = signing_params(&identity, settings);
 6557   8456   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6558   8457   
 6559   8458   
        assert_eq!(
 6560   8459   
            creq.values.signed_headers().to_string(),
 6561   8460   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 6562   8461   
        );
 6563   8462   
        assert_eq!(
 6564   8463   
            creq.header_values_for("x-amz-object-attributes"),
 6565   8464   
            "Checksum,ObjectSize",
 6566   8465   
        );
 6567   8466   
    }
 6568   8467   
 6569   8468   
    #[test]
 6570   8469   
    fn test_host_header_properly_handles_ports() {
 6571   8470   
        fn host_header_test_setup(endpoint: String) -> String {
 6572         -
            let mut req = test::v4::test_request("get-vanilla");
        8471  +
            let test = SigningSuiteTest::v4("get-vanilla");
        8472  +
            let mut req = test.request();
 6573   8473   
            req.uri = endpoint;
 6574   8474   
            let req = SignableRequest::from(&req);
 6575   8475   
            let settings = SigningSettings {
 6576   8476   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6577   8477   
                session_token_mode: SessionTokenMode::Exclude,
 6578   8478   
                ..Default::default()
 6579   8479   
            };
 6580   8480   
            let identity = Credentials::for_tests().into();
 6581   8481   
            let signing_params = signing_params(&identity, settings);
 6582   8482   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6583   8483   
            creq.header_values_for("host")
 6584   8484   
        }
 6585   8485   
 6586   8486   
        // HTTP request with 80 port should not be signed with that port
 6587   8487   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 6588   8488   
        assert_eq!(http_80_host_header, "localhost",);
 6589   8489   
 6590   8490   
        // HTTP request with non-80 port should be signed with that port
 6591   8491   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 6592   8492   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 6593   8493   
 6594   8494   
        // HTTPS request with 443 port should not be signed with that port
 6595   8495   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 6596   8496   
        assert_eq!(https_443_host_header, "localhost",);
 6597   8497   
 6598   8498   
        // HTTPS request with non-443 port should be signed with that port
 6599   8499   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 6600   8500   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 6601   8501   
    }
 6602   8502   
 6603   8503   
    #[test]
 6604   8504   
    fn test_set_xamz_sha_256() {
 6605         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        8505  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8506  +
        let req = test.request();
 6606   8507   
        let req = SignableRequest::from(&req);
 6607   8508   
        let settings = SigningSettings {
 6608   8509   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6609   8510   
            session_token_mode: SessionTokenMode::Exclude,
 6610   8511   
            ..Default::default()
 6611   8512   
        };
 6612   8513   
        let identity = Credentials::for_tests().into();
 6613   8514   
        let mut signing_params = signing_params(&identity, settings);
 6614   8515   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6615   8516   
        assert_eq!(
 6616   8517   
            creq.values.content_sha256(),
 6617   8518   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 6618   8519   
        );
 6619   8520   
        // assert that the sha256 header was added
 6620   8521   
        assert_eq!(
 6621   8522   
            creq.values.signed_headers().as_str(),
 6622   8523   
            "host;x-amz-content-sha256;x-amz-date"
 6623   8524   
        );
 6624   8525   
 6625   8526   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 6626   8527   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6627   8528   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 6628   8529   
    }
 6629   8530   
 6630   8531   
    #[test]
 6631   8532   
    fn test_unsigned_payload() {
 6632         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8533  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8534  +
        let mut req = test.request();
 6633   8535   
        req.set_body(SignableBody::UnsignedPayload);
 6634   8536   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 6635   8537   
 6636   8538   
        let settings = SigningSettings {
 6637   8539   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6638   8540   
            ..Default::default()
 6639   8541   
        };
 6640   8542   
        let identity = Credentials::for_tests().into();
 6641   8543   
        let signing_params = signing_params(&identity, settings);
 6642   8544   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6643   8545   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 6644   8546   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 6645   8547   
    }
 6646   8548   
 6647   8549   
    #[test]
 6648   8550   
    fn test_precomputed_payload() {
 6649   8551   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 6650         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8552  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8553  +
        let mut req = test.request();
 6651   8554   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 6652   8555   
        let req = SignableRequest::from(&req);
 6653   8556   
        let settings = SigningSettings {
 6654   8557   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6655   8558   
            ..Default::default()
 6656   8559   
        };
 6657   8560   
        let identity = Credentials::for_tests().into();
 6658   8561   
        let signing_params = signing_params(&identity, settings);
 6659   8562   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6660   8563   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 6661   8564   
        assert!(creq.to_string().ends_with(payload_hash));
 6662   8565   
    }
 6663   8566   
 6664   8567   
    #[test]
 6665   8568   
    fn test_generate_scope() {
 6666   8569   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 6667   8570   
        let scope = SigningScope {
 6668   8571   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6669   8572   
            region: "us-east-1",
 6670   8573   
            service: "iam",
 6671   8574   
        };
 6672   8575   
        assert_eq!(format!("{}\n", scope), expected);
 6673   8576   
    }
 6674   8577   
 6675   8578   
    #[test]
 6676   8579   
    fn test_string_to_sign() {
 6677   8580   
        let time = parse_date_time("20150830T123600Z").unwrap();
 6678         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 6679         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        8581  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8582  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        8583  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 6680   8584   
        let encoded = sha256_hex_string(creq.as_bytes());
 6681   8585   
 6682   8586   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 6683   8587   
        assert_eq!(expected_sts, actual.to_string());
 6684   8588   
    }
 6685   8589   
 6686   8590   
    #[test]
 6687   8591   
    fn test_digest_of_canonical_request() {
 6688         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        8592  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8593  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 6689   8594   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 6690   8595   
        let actual = sha256_hex_string(creq.as_bytes());
 6691   8596   
        assert_eq!(expected, actual);
 6692   8597   
    }
 6693   8598   
 6694   8599   
    #[test]
 6695   8600   
    fn test_double_url_encode_path() {
 6696         -
        let req = test::v4::test_request("double-encode-path");
        8601  +
        let test = SigningSuiteTest::v4("double-encode-path");
        8602  +
        let req = test.request();
 6697   8603   
        let req = SignableRequest::from(&req);
 6698   8604   
        let identity = Credentials::for_tests().into();
 6699   8605   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6700   8606   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6701   8607   
 6702         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        8608  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 6703   8609   
        let actual = format!("{}", creq);
 6704   8610   
        assert_eq!(actual, expected);
 6705   8611   
    }
 6706   8612   
 6707   8613   
    #[test]
 6708   8614   
    fn test_double_url_encode() {
 6709         -
        let req = test::v4::test_request("double-url-encode");
        8615  +
        let test = SigningSuiteTest::v4("double-url-encode");
        8616  +
        let req = test.request();
 6710   8617   
        let req = SignableRequest::from(&req);
 6711   8618   
        let identity = Credentials::for_tests().into();
 6712   8619   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6713   8620   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6714         -
 6715         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        8621  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 6716   8622   
        let actual = format!("{}", creq);
 6717   8623   
        assert_eq!(actual, expected);
 6718   8624   
    }
 6719   8625   
 6720   8626   
    #[test]
 6721   8627   
    fn test_tilde_in_uri() {
 6722   8628   
        let req = http0::Request::builder()
 6723   8629   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 6724   8630   
        let req = SignableRequest::from(&req);
 6725   8631   
        let identity = Credentials::for_tests().into();
 6726   8632   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6727   8633   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6728   8634   
        assert_eq!(
 6729   8635   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 6730   8636   
            creq.params.as_deref(),
 6731   8637   
        );
 6732   8638   
    }
 6733   8639   
 6734   8640   
    #[test]
 6735   8641   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 6736   8642   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 6737   8643   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 6738   8644   
 6739   8645   
        let mut query_writer = QueryWriter::new(&uri);
 6740   8646   
        query_writer.insert("list-type", "2");
 6741   8647   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 6742   8648   
 6743   8649   
        let req = http0::Request::builder()
 6744   8650   
            .uri(query_writer.build_uri())
 6745   8651   
            .body("")
 6746   8652   
            .unwrap()
 6747   8653   
            .into();
 6748   8654   
        let req = SignableRequest::from(&req);
 6749   8655   
        let identity = Credentials::for_tests().into();
 6750   8656   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6751   8657   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6752   8658   
 6753   8659   
        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~";
 6754   8660   
        let actual = creq.params.unwrap();
 6755   8661   
        assert_eq!(expected, actual);
 6756   8662   
    }
 6757   8663   
 6758   8664   
    #[test]
 6759   8665   
    fn test_omit_session_token() {
 6760         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        8666  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8667  +
        let req = test.request();
 6761   8668   
        let req = SignableRequest::from(&req);
 6762   8669   
        let settings = SigningSettings {
 6763   8670   
            session_token_mode: SessionTokenMode::Include,
 6764   8671   
            ..Default::default()
 6765   8672   
        };
 6766   8673   
        let identity = Credentials::for_tests_with_session_token().into();
 6767   8674   
        let mut signing_params = signing_params(&identity, settings);
 6768   8675   
 6769   8676   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6770   8677   
        assert_eq!(
 6771   8678   
            creq.values.signed_headers().as_str(),
 6772   8679   
            "host;x-amz-date;x-amz-security-token"
 6773   8680   
        );
 6774   8681   
        assert_eq!(
 6775   8682   
            creq.headers.get("x-amz-security-token").unwrap(),
 6776   8683   
            "notarealsessiontoken"
 6777   8684   
        );
 6778   8685   
 6779   8686   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 6780   8687   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6781   8688   
        assert_eq!(
 6782   8689   
            creq.headers.get("x-amz-security-token").unwrap(),
 6783   8690   
            "notarealsessiontoken"
 6784   8691   
        );
 6785   8692   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 6786   8693   
    }
 6787   8694   
 6788   8695   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 6789   8696   
    #[test]
 6790   8697   
    fn non_presigning_header_exclusion() {
 6791   8698   
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
 6792   8699   
index c4bbbee..30b4743 100644
 6793         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        8700  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 6794   8701   
@@ -478,436 +478,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 6795   8702   
        sensitive,
 6796   8703   
    });
 6797   8704   
}
 6798   8705   
 6799   8706   
// add signature to authorization header
 6800   8707   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 6801   8708   
fn build_authorization_header(
 6802   8709   
    access_key: &str,
 6803   8710   
    creq: &CanonicalRequest<'_>,
 6804   8711   
    sts: StringToSign<'_>,
 6805   8712   
    signature: &str,
 6806   8713   
    signature_version: SignatureVersion,
 6807   8714   
) -> String {
 6808   8715   
    let scope = match signature_version {
 6809   8716   
        SignatureVersion::V4 => sts.scope.to_string(),
 6810   8717   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 6811   8718   
    };
 6812   8719   
    format!(
 6813   8720   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 6814   8721   
        sts.algorithm,
 6815   8722   
        access_key,
 6816   8723   
        scope,
 6817   8724   
        creq.values.signed_headers().as_str(),
 6818   8725   
        signature
 6819   8726   
    )
 6820   8727   
}
 6821   8728   
#[cfg(test)]
 6822   8729   
mod tests {
 6823   8730   
    use crate::date_time::test_parsers::parse_date_time;
 6824   8731   
    use crate::http_request::sign::{add_header, SignableRequest};
        8732  +
    use crate::http_request::test::SigningSuiteTest;
 6825   8733   
    use crate::http_request::{
 6826         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        8734  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 6827   8735   
        SigningSettings,
 6828   8736   
    };
 6829   8737   
    use crate::sign::v4;
 6830   8738   
    use aws_credential_types::Credentials;
 6831   8739   
    use http0::{HeaderValue, Request};
 6832   8740   
    use pretty_assertions::assert_eq;
 6833   8741   
    use proptest::proptest;
 6834   8742   
    use std::borrow::Cow;
 6835   8743   
    use std::iter;
 6836         -
    use std::time::Duration;
 6837   8744   
 6838   8745   
    macro_rules! assert_req_eq {
 6839   8746   
        (http: $expected:expr, $actual:expr) => {
 6840   8747   
            let mut expected = ($expected).map(|_b|"body");
 6841   8748   
            let mut actual = ($actual).map(|_b|"body");
 6842   8749   
            make_headers_comparable(&mut expected);
 6843   8750   
            make_headers_comparable(&mut actual);
 6844   8751   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 6845   8752   
        };
 6846   8753   
        ($expected:tt, $actual:tt) => {
 6847   8754   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 6848   8755   
        };
 6849   8756   
    }
 6850   8757   
 6851   8758   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 6852   8759   
        for (_name, value) in request.headers_mut() {
 6853   8760   
            value.set_sensitive(false);
 6854   8761   
        }
 6855   8762   
    }
 6856   8763   
 6857         -
    #[test]
 6858         -
    fn test_sign_vanilla_with_headers() {
 6859         -
        let settings = SigningSettings::default();
 6860         -
        let identity = &Credentials::for_tests().into();
 6861         -
        let params = v4::SigningParams {
 6862         -
            identity,
 6863         -
            region: "us-east-1",
 6864         -
            name: "service",
 6865         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 6866         -
            settings,
 6867         -
        }
 6868         -
        .into();
 6869         -
 6870         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 6871         -
        let signable = SignableRequest::from(&original);
 6872         -
        let out = sign(signable, &params).unwrap();
 6873         -
        assert_eq!(
 6874         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 6875         -
            out.signature
 6876         -
        );
 6877         -
 6878         -
        let mut signed = original.as_http_request();
 6879         -
        out.output.apply_to_request_http0x(&mut signed);
 6880         -
 6881         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 6882         -
        assert_req_eq!(expected, signed);
 6883         -
    }
 6884         -
        8764  +
    // Sigv4A suite tests
 6885   8765   
    #[cfg(feature = "sigv4a")]
 6886         -
    mod sigv4a_tests {
 6887         -
        use super::*;
 6888         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 6889         -
        use crate::http_request::{sign, test, SigningParams};
 6890         -
        use crate::sign::v4a;
 6891         -
        use p256::ecdsa::signature::{Signature, Verifier};
 6892         -
        use p256::ecdsa::{DerSignature, SigningKey};
 6893         -
        use pretty_assertions::assert_eq;
 6894         -
 6895         -
        fn new_v4a_signing_params_from_context(
 6896         -
            test_context: &'_ test::v4a::TestContext,
 6897         -
            signature_location: SignatureLocation,
 6898         -
        ) -> SigningParams<'_> {
 6899         -
            let mut params = v4a::SigningParams::from(test_context);
 6900         -
            params.settings.signature_location = signature_location;
 6901         -
 6902         -
            params.into()
 6903         -
        }
 6904         -
 6905         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 6906         -
            let tc = test::v4a::test_context(test_name);
 6907         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 6908         -
 6909         -
            let req = test::v4a::test_request(test_name);
 6910         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 6911         -
            let signable_req = SignableRequest::from(&req);
 6912         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
 6913         -
 6914         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
 6915         -
 6916         -
            let expected_string_to_sign =
 6917         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 6918         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 6919         -
            let actual_string_to_sign = StringToSign::new_v4a(
 6920         -
                *params.time(),
 6921         -
                params.region_set().unwrap(),
 6922         -
                params.name(),
 6923         -
                hashed_creq,
 6924         -
            )
 6925         -
            .to_string();
 6926         -
 6927         -
            assert_eq!(
 6928         -
                expected_string_to_sign, actual_string_to_sign,
 6929         -
                "'string to sign' didn't match"
 6930         -
            );
        8766  +
    mod v4a_suite {
        8767  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 6931   8768   
 6932         -
            let out = sign(signable_req, &params).unwrap();
 6933         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 6934         -
            out.output
 6935         -
                .apply_to_request_http0x(&mut req.as_http_request());
 6936         -
 6937         -
            let creds = params.credentials().unwrap();
 6938         -
            let signing_key =
 6939         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 6940         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 6941         -
            let sig = sig
 6942         -
                .try_into()
 6943         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 6944         -
 6945         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 6946         -
            let peer_public_key = signing_key.verifying_key();
 6947         -
            let sts = actual_string_to_sign.as_bytes();
 6948         -
            peer_public_key.verify(sts, &sig).unwrap();
        8769  +
        #[test]
        8770  +
        fn test_get_header_key_duplicate() {
        8771  +
            run_test_suite_v4a("get-header-key-duplicate")
 6949   8772   
        }
 6950   8773   
 6951   8774   
        #[test]
 6952         -
        fn test_get_header_key_duplicate() {
 6953         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        8775  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        8776  +
        fn test_get_header_value_multiline() {
        8777  +
            run_test_suite_v4a("get-header-value-multiline")
 6954   8778   
        }
 6955   8779   
 6956   8780   
        #[test]
 6957   8781   
        fn test_get_header_value_order() {
 6958         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        8782  +
            run_test_suite_v4a("get-header-value-order")
 6959   8783   
        }
 6960   8784   
 6961   8785   
        #[test]
 6962   8786   
        fn test_get_header_value_trim() {
 6963         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        8787  +
            run_test_suite_v4a("get-header-value-trim");
 6964   8788   
        }
 6965   8789   
 6966   8790   
        #[test]
 6967   8791   
        fn test_get_relative_normalized() {
 6968         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        8792  +
            run_test_suite_v4a("get-relative-normalized");
 6969   8793   
        }
 6970   8794   
 6971   8795   
        #[test]
 6972   8796   
        fn test_get_relative_relative_normalized() {
 6973         -
            run_v4a_test_suite(
 6974         -
                "get-relative-relative-normalized",
 6975         -
                SignatureLocation::Headers,
 6976         -
            );
        8797  +
            run_test_suite_v4a("get-relative-relative-normalized");
 6977   8798   
        }
 6978   8799   
 6979   8800   
        #[test]
 6980   8801   
        fn test_get_relative_relative_unnormalized() {
 6981         -
            run_v4a_test_suite(
 6982         -
                "get-relative-relative-unnormalized",
 6983         -
                SignatureLocation::Headers,
 6984         -
            );
        8802  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 6985   8803   
        }
 6986   8804   
 6987   8805   
        #[test]
 6988   8806   
        fn test_get_relative_unnormalized() {
 6989         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        8807  +
            run_test_suite_v4a("get-relative-unnormalized");
 6990   8808   
        }
 6991   8809   
 6992   8810   
        #[test]
 6993   8811   
        fn test_get_slash_dot_slash_normalized() {
 6994         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        8812  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 6995   8813   
        }
 6996   8814   
 6997   8815   
        #[test]
 6998   8816   
        fn test_get_slash_dot_slash_unnormalized() {
 6999         -
            run_v4a_test_suite(
 7000         -
                "get-slash-dot-slash-unnormalized",
 7001         -
                SignatureLocation::Headers,
 7002         -
            );
        8817  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 7003   8818   
        }
 7004   8819   
 7005   8820   
        #[test]
 7006   8821   
        fn test_get_slash_normalized() {
 7007         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        8822  +
            run_test_suite_v4a("get-slash-normalized");
 7008   8823   
        }
 7009   8824   
 7010   8825   
        #[test]
 7011   8826   
        fn test_get_slash_pointless_dot_normalized() {
 7012         -
            run_v4a_test_suite(
 7013         -
                "get-slash-pointless-dot-normalized",
 7014         -
                SignatureLocation::Headers,
 7015         -
            );
        8827  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 7016   8828   
        }
 7017   8829   
 7018   8830   
        #[test]
 7019   8831   
        fn test_get_slash_pointless_dot_unnormalized() {
 7020         -
            run_v4a_test_suite(
 7021         -
                "get-slash-pointless-dot-unnormalized",
 7022         -
                SignatureLocation::Headers,
 7023         -
            );
        8832  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 7024   8833   
        }
 7025   8834   
 7026   8835   
        #[test]
 7027   8836   
        fn test_get_slash_unnormalized() {
 7028         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        8837  +
            run_test_suite_v4a("get-slash-unnormalized");
 7029   8838   
        }
 7030   8839   
 7031   8840   
        #[test]
 7032   8841   
        fn test_get_slashes_normalized() {
 7033         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        8842  +
            run_test_suite_v4a("get-slashes-normalized");
 7034   8843   
        }
 7035   8844   
 7036   8845   
        #[test]
 7037   8846   
        fn test_get_slashes_unnormalized() {
 7038         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        8847  +
            run_test_suite_v4a("get-slashes-unnormalized");
        8848  +
        }
        8849  +
        8850  +
        #[test]
        8851  +
        #[ignore = "relies on single encode of path segments"]
        8852  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        8853  +
        // skipped until we add control over double_uri_encode in context.json
        8854  +
        fn test_get_space_normalized() {
        8855  +
            run_test_suite_v4a("get-space-normalized");
        8856  +
        }
        8857  +
        8858  +
        #[test]
        8859  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        8860  +
        // the input request has unencoded space ' ' in the path which fails to parse
        8861  +
        fn test_get_space_unnormalized() {
        8862  +
            run_test_suite_v4a("get-space-unnormalized");
 7039   8863   
        }
 7040   8864   
 7041   8865   
        #[test]
 7042   8866   
        fn test_get_unreserved() {
 7043         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        8867  +
            run_test_suite_v4a("get-unreserved");
        8868  +
        }
        8869  +
        8870  +
        #[test]
        8871  +
        #[ignore = "httparse fails on invalid uri character"]
        8872  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8873  +
        fn test_get_utf8() {
        8874  +
            run_test_suite_v4a("get-utf8");
 7044   8875   
        }
 7045   8876   
 7046   8877   
        #[test]
 7047   8878   
        fn test_get_vanilla() {
 7048         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        8879  +
            run_test_suite_v4a("get-vanilla");
 7049   8880   
        }
 7050   8881   
 7051   8882   
        #[test]
 7052   8883   
        fn test_get_vanilla_empty_query_key() {
 7053         -
            run_v4a_test_suite(
 7054         -
                "get-vanilla-empty-query-key",
 7055         -
                SignatureLocation::QueryParams,
 7056         -
            );
        8884  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 7057   8885   
        }
 7058   8886   
 7059   8887   
        #[test]
 7060   8888   
        fn test_get_vanilla_query() {
 7061         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        8889  +
            run_test_suite_v4a("get-vanilla-query");
        8890  +
        }
        8891  +
        8892  +
        #[test]
        8893  +
        fn test_get_vanilla_query_order_encoded() {
        8894  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 7062   8895   
        }
 7063   8896   
 7064   8897   
        #[test]
 7065   8898   
        fn test_get_vanilla_query_order_key_case() {
 7066         -
            run_v4a_test_suite(
 7067         -
                "get-vanilla-query-order-key-case",
 7068         -
                SignatureLocation::QueryParams,
 7069         -
            );
        8899  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 7070   8900   
        }
 7071   8901   
 7072   8902   
        #[test]
 7073   8903   
        fn test_get_vanilla_query_unreserved() {
 7074         -
            run_v4a_test_suite(
 7075         -
                "get-vanilla-query-unreserved",
 7076         -
                SignatureLocation::QueryParams,
 7077         -
            );
        8904  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        8905  +
        }
        8906  +
        8907  +
        #[test]
        8908  +
        #[ignore = "httparse fails on invalid uri character"]
        8909  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8910  +
        fn test_get_vanilla_utf8_query() {
        8911  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 7078   8912   
        }
 7079   8913   
 7080   8914   
        #[test]
 7081   8915   
        fn test_get_vanilla_with_session_token() {
 7082         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        8916  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 7083   8917   
        }
 7084   8918   
 7085   8919   
        #[test]
 7086   8920   
        fn test_post_header_key_case() {
 7087         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        8921  +
            run_test_suite_v4a("post-header-key-case");
 7088   8922   
        }
 7089   8923   
 7090   8924   
        #[test]
 7091   8925   
        fn test_post_header_key_sort() {
 7092         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        8926  +
            run_test_suite_v4a("post-header-key-sort");
 7093   8927   
        }
 7094   8928   
 7095   8929   
        #[test]
 7096   8930   
        fn test_post_header_value_case() {
 7097         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        8931  +
            run_test_suite_v4a("post-header-value-case");
 7098   8932   
        }
 7099   8933   
 7100   8934   
        #[test]
 7101   8935   
        fn test_post_sts_header_after() {
 7102         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        8936  +
            run_test_suite_v4a("post-sts-header-after");
 7103   8937   
        }
 7104   8938   
 7105   8939   
        #[test]
 7106   8940   
        fn test_post_sts_header_before() {
 7107         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        8941  +
            run_test_suite_v4a("post-sts-header-before");
 7108   8942   
        }
 7109   8943   
 7110   8944   
        #[test]
 7111   8945   
        fn test_post_vanilla() {
 7112         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        8946  +
            run_test_suite_v4a("post-vanilla");
 7113   8947   
        }
 7114   8948   
 7115   8949   
        #[test]
 7116   8950   
        fn test_post_vanilla_empty_query_value() {
 7117         -
            run_v4a_test_suite(
 7118         -
                "post-vanilla-empty-query-value",
 7119         -
                SignatureLocation::QueryParams,
 7120         -
            );
        8951  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 7121   8952   
        }
 7122   8953   
 7123   8954   
        #[test]
 7124   8955   
        fn test_post_vanilla_query() {
 7125         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        8956  +
            run_test_suite_v4a("post-vanilla-query");
 7126   8957   
        }
 7127   8958   
 7128   8959   
        #[test]
 7129   8960   
        fn test_post_x_www_form_urlencoded() {
 7130         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        8961  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 7131   8962   
        }
 7132   8963   
 7133   8964   
        #[test]
 7134   8965   
        fn test_post_x_www_form_urlencoded_parameters() {
 7135         -
            run_v4a_test_suite(
 7136         -
                "post-x-www-form-urlencoded-parameters",
 7137         -
                SignatureLocation::QueryParams,
 7138         -
            );
        8966  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 7139   8967   
        }
 7140   8968   
    }
 7141   8969   
 7142   8970   
    #[test]
 7143   8971   
    fn test_sign_url_escape() {
 7144         -
        let test = "double-encode-path";
        8972  +
        let test = SigningSuiteTest::v4("double-encode-path");
 7145   8973   
        let settings = SigningSettings::default();
 7146   8974   
        let identity = &Credentials::for_tests().into();
 7147   8975   
        let params = v4::SigningParams {
 7148   8976   
            identity,
 7149   8977   
            region: "us-east-1",
 7150   8978   
            name: "service",
 7151   8979   
            time: parse_date_time("20150830T123600Z").unwrap(),
 7152   8980   
            settings,
 7153   8981   
        }
 7154   8982   
        .into();
 7155   8983   
 7156         -
        let original = test::v4::test_request(test);
        8984  +
        let original = test.request();
 7157   8985   
        let signable = SignableRequest::from(&original);
 7158   8986   
        let out = sign(signable, &params).unwrap();
 7159   8987   
        assert_eq!(
 7160   8988   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 7161   8989   
            out.signature
 7162   8990   
        );
 7163   8991   
 7164   8992   
        let mut signed = original.as_http_request();
 7165   8993   
        out.output.apply_to_request_http0x(&mut signed);
 7166   8994   
 7167         -
        let expected = test::v4::test_signed_request(test);
 7168         -
        assert_req_eq!(expected, signed);
 7169         -
    }
 7170         -
 7171         -
    #[test]
 7172         -
    fn test_sign_vanilla_with_query_params() {
 7173         -
        let settings = SigningSettings {
 7174         -
            signature_location: SignatureLocation::QueryParams,
 7175         -
            expires_in: Some(Duration::from_secs(35)),
 7176         -
            ..Default::default()
 7177         -
        };
 7178         -
        let identity = &Credentials::for_tests().into();
 7179         -
        let params = v4::SigningParams {
 7180         -
            identity,
 7181         -
            region: "us-east-1",
 7182         -
            name: "service",
 7183         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 7184         -
            settings,
 7185         -
        }
 7186         -
        .into();
 7187         -
 7188         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 7189         -
        let signable = SignableRequest::from(&original);
 7190         -
        let out = sign(signable, &params).unwrap();
 7191         -
        assert_eq!(
 7192         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 7193         -
            out.signature
 7194         -
        );
 7195         -
 7196         -
        let mut signed = original.as_http_request();
 7197         -
        out.output.apply_to_request_http0x(&mut signed);
 7198         -
 7199         -
        let expected =
 7200         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        8995  +
        let expected = test.signed_request(SignatureLocation::Headers);
 7201   8996   
        assert_req_eq!(expected, signed);
 7202   8997   
    }
 7203   8998   
 7204   8999   
    #[test]
 7205   9000   
    fn test_sign_headers_utf8() {
 7206   9001   
        let settings = SigningSettings::default();
 7207   9002   
        let identity = &Credentials::for_tests().into();
 7208   9003   
        let params = v4::SigningParams {
 7209   9004   
            identity,
 7210   9005   
            region: "us-east-1",
 7211   9006   
            name: "service",
 7212   9007   
            time: parse_date_time("20150830T123600Z").unwrap(),
 7213   9008   
            settings,
 7214   9009   
        }
 7215   9010   
        .into();
 7216   9011   
 7217   9012   
        let original = http0::Request::builder()
 7218   9013   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 7219   9014   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 7220   9015   
            .body("")
 7221   9016   
            .unwrap()
 7222   9017   
            .into();
 7223   9018   
        let signable = SignableRequest::from(&original);
 7224   9019   
        let out = sign(signable, &params).unwrap();
 7225   9020   
        assert_eq!(
 7226   9021   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 7227   9022   
            out.signature
 7228   9023   
        );
 7229   9024   
 7230   9025   
        let mut signed = original.as_http_request();
 7231   9026   
@@ -1138,31 +1026,236 @@ mod tests {
 7232   9027   
        let mut request = http::Request::builder()
 7233   9028   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 7234   9029   
            .body("")
 7235   9030   
            .unwrap();
 7236   9031   
 7237   9032   
        instructions.apply_to_request_http1x(&mut request);
 7238   9033   
 7239   9034   
        assert_eq!(
 7240   9035   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 7241   9036   
            request.uri().path_and_query().unwrap().to_string()
 7242   9037   
        );
 7243   9038   
    }
 7244   9039   
 7245   9040   
    #[test]
 7246   9041   
    fn test_debug_signable_body() {
 7247   9042   
        let sut = SignableBody::Bytes(b"hello signable body");
 7248   9043   
        assert_eq!(
 7249   9044   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 7250   9045   
            format!("{sut:?}")
 7251   9046   
        );
 7252   9047   
 7253   9048   
        let sut = SignableBody::UnsignedPayload;
 7254   9049   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 7255   9050   
 7256   9051   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 7257   9052   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 7258   9053   
 7259   9054   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 7260   9055   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 7261   9056   
    }
        9057  +
        9058  +
    // v4 test suite
        9059  +
    mod v4_suite {
        9060  +
        use crate::http_request::test::run_test_suite_v4;
        9061  +
        9062  +
        #[test]
        9063  +
        fn test_get_header_key_duplicate() {
        9064  +
            run_test_suite_v4("get-header-key-duplicate");
        9065  +
        }
        9066  +
        9067  +
        #[test]
        9068  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        9069  +
        fn test_get_header_value_multiline() {
        9070  +
            run_test_suite_v4("get-header-value-multiline");
        9071  +
        }
        9072  +
        9073  +
        #[test]
        9074  +
        fn test_get_header_value_order() {
        9075  +
            run_test_suite_v4("get-header-value-order");
        9076  +
        }
        9077  +
        9078  +
        #[test]
        9079  +
        fn test_get_header_value_trim() {
        9080  +
            run_test_suite_v4("get-header-value-trim");
        9081  +
        }
        9082  +
        9083  +
        #[test]
        9084  +
        fn test_get_relative_normalized() {
        9085  +
            run_test_suite_v4("get-relative-normalized");
        9086  +
        }
        9087  +
        9088  +
        #[test]
        9089  +
        fn test_get_relative_relative_normalized() {
        9090  +
            run_test_suite_v4("get-relative-relative-normalized");
        9091  +
        }
        9092  +
        9093  +
        #[test]
        9094  +
        fn test_get_relative_relative_unnormalized() {
        9095  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        9096  +
        }
        9097  +
        9098  +
        #[test]
        9099  +
        fn test_get_relative_unnormalized() {
        9100  +
            run_test_suite_v4("get-relative-unnormalized");
        9101  +
        }
        9102  +
        9103  +
        #[test]
        9104  +
        fn test_get_slash_dot_slash_normalized() {
        9105  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        9106  +
        }
        9107  +
        9108  +
        #[test]
        9109  +
        fn test_get_slash_dot_slash_unnormalized() {
        9110  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        9111  +
        }
        9112  +
        9113  +
        #[test]
        9114  +
        fn test_get_slash_normalized() {
        9115  +
            run_test_suite_v4("get-slash-normalized");
        9116  +
        }
        9117  +
        9118  +
        #[test]
        9119  +
        fn test_get_slash_pointless_dot_normalized() {
        9120  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        9121  +
        }
        9122  +
        9123  +
        #[test]
        9124  +
        fn test_get_slash_pointless_dot_unnormalized() {
        9125  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        9126  +
        }
        9127  +
        9128  +
        #[test]
        9129  +
        fn test_get_slash_unnormalized() {
        9130  +
            run_test_suite_v4("get-slash-unnormalized");
        9131  +
        }
        9132  +
        9133  +
        #[test]
        9134  +
        fn test_get_slashes_normalized() {
        9135  +
            run_test_suite_v4("get-slashes-normalized");
        9136  +
        }
        9137  +
        9138  +
        #[test]
        9139  +
        fn test_get_slashes_unnormalized() {
        9140  +
            run_test_suite_v4("get-slashes-unnormalized");
        9141  +
        }
        9142  +
        9143  +
        #[test]
        9144  +
        #[ignore = "relies on single encode of path segments"]
        9145  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        9146  +
        // skipped until we add control over double_uri_encode in context.json
        9147  +
        fn test_get_space_normalized() {
        9148  +
            run_test_suite_v4("get-space-normalized");
        9149  +
        }
        9150  +
        9151  +
        #[test]
        9152  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        9153  +
        // the input request has unencoded space ' ' in the path which fails to parse
        9154  +
        fn test_get_space_unnormalized() {
        9155  +
            run_test_suite_v4("get-space-unnormalized");
        9156  +
        }
        9157  +
        9158  +
        #[test]
        9159  +
        fn test_get_unreserved() {
        9160  +
            run_test_suite_v4("get-unreserved");
        9161  +
        }
        9162  +
        9163  +
        #[test]
        9164  +
        #[ignore = "httparse fails on invalid uri character"]
        9165  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9166  +
        fn test_get_utf8() {
        9167  +
            run_test_suite_v4("get-utf8");
        9168  +
        }
        9169  +
        9170  +
        #[test]
        9171  +
        fn test_get_vanilla() {
        9172  +
            run_test_suite_v4("get-vanilla");
        9173  +
        }
        9174  +
        9175  +
        #[test]
        9176  +
        fn test_get_vanilla_empty_query_key() {
        9177  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        9178  +
        }
        9179  +
        9180  +
        #[test]
        9181  +
        fn test_get_vanilla_query() {
        9182  +
            run_test_suite_v4("get-vanilla-query");
        9183  +
        }
        9184  +
        9185  +
        #[test]
        9186  +
        fn test_get_vanilla_query_order_encoded() {
        9187  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        9188  +
        }
        9189  +
        9190  +
        #[test]
        9191  +
        fn test_get_vanilla_query_order_key_case() {
        9192  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        9193  +
        }
        9194  +
        9195  +
        #[test]
        9196  +
        fn test_get_vanilla_query_unreserved() {
        9197  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        9198  +
        }
        9199  +
        9200  +
        #[test]
        9201  +
        #[ignore = "httparse fails on invalid uri character"]
        9202  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9203  +
        fn test_get_vanilla_utf8_query() {
        9204  +
            run_test_suite_v4("get-vanilla-utf8-query");
        9205  +
        }
        9206  +
        9207  +
        #[test]
        9208  +
        fn test_get_vanilla_with_session_token() {
        9209  +
            run_test_suite_v4("get-vanilla-with-session-token");
        9210  +
        }
        9211  +
        9212  +
        #[test]
        9213  +
        fn test_post_header_key_case() {
        9214  +
            run_test_suite_v4("post-header-key-case");
        9215  +
        }
        9216  +
        9217  +
        #[test]
        9218  +
        fn test_post_header_key_sort() {
        9219  +
            run_test_suite_v4("post-header-key-sort");
        9220  +
        }
        9221  +
        9222  +
        #[test]
        9223  +
        fn test_post_header_value_case() {
        9224  +
            run_test_suite_v4("post-header-value-case");
        9225  +
        }
        9226  +
        9227  +
        #[test]
        9228  +
        fn test_post_sts_header_after() {
        9229  +
            run_test_suite_v4("post-sts-header-after");
        9230  +
        }
        9231  +
        9232  +
        #[test]
        9233  +
        fn test_post_sts_header_before() {
        9234  +
            run_test_suite_v4("post-sts-header-before");
        9235  +
        }
        9236  +
        9237  +
        #[test]
        9238  +
        fn test_post_vanilla() {
        9239  +
            run_test_suite_v4("post-vanilla");
        9240  +
        }
        9241  +
        9242  +
        #[test]
        9243  +
        fn test_post_vanilla_empty_query_value() {
        9244  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        9245  +
        }
        9246  +
        9247  +
        #[test]
        9248  +
        fn test_post_vanilla_query() {
        9249  +
            run_test_suite_v4("post-vanilla-query");
        9250  +
        }
        9251  +
        9252  +
        #[test]
        9253  +
        fn test_post_x_www_form_urlencoded() {
        9254  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        9255  +
        }
        9256  +
        9257  +
        #[test]
        9258  +
        fn test_post_x_www_form_urlencoded_parameters() {
        9259  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        9260  +
        }
        9261  +
    }
 7262   9262   
}
 7263   9263   
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
 7264   9264   
index be6c496..86eec20 100644
 7265         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        9265  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 7266   9266   
@@ -1,242 +1,453 @@
 7267   9267   
/*
 7268   9268   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 7269   9269   
 * SPDX-License-Identifier: Apache-2.0
 7270   9270   
 */
 7271   9271   
 7272   9272   
//! Functions shared between the tests of several modules.
 7273   9273   
 7274         -
use crate::http_request::{SignableBody, SignableRequest};
        9274  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        9275  +
use crate::http_request::{
        9276  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        9277  +
    SigningSettings,
        9278  +
};
        9279  +
use aws_credential_types::Credentials;
        9280  +
use aws_smithy_runtime_api::client::identity::Identity;
 7275   9281   
use http0::{Method, Uri};
        9282  +
use std::borrow::Cow;
 7276   9283   
use std::error::Error as StdError;
        9284  +
use std::time::{Duration, SystemTime};
        9285  +
use time::format_description::well_known::Rfc3339;
        9286  +
use time::OffsetDateTime;
        9287  +
        9288  +
/// Common test suite collection
        9289  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        9290  +
enum Collection {
        9291  +
    V4,
        9292  +
    V4A,
        9293  +
}
 7277   9294   
 7278         -
pub(crate) mod v4 {
 7279         -
    use super::*;
        9295  +
/// A test from the common CRT test suite
        9296  +
#[derive(Debug, Clone)]
        9297  +
pub(crate) struct SigningSuiteTest {
        9298  +
    test_name: &'static str,
        9299  +
    collection: Collection,
        9300  +
}
 7280   9301   
 7281         -
    fn path(name: &str, ext: &str) -> String {
 7282         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        9302  +
impl SigningSuiteTest {
        9303  +
    /// Create a new test from the V4 test suite
        9304  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        9305  +
        Self {
        9306  +
            test_name,
        9307  +
            collection: Collection::V4,
        9308  +
        }
 7283   9309   
    }
 7284   9310   
 7285         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 7286         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 7287         -
        read(&path(name, "creq")).trim().to_string()
        9311  +
    /// Create a new test from the V4a test suite
        9312  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        9313  +
        Self {
        9314  +
            test_name,
        9315  +
            collection: Collection::V4A,
        9316  +
        }
 7288   9317   
    }
 7289   9318   
 7290         -
    pub(crate) fn test_sts(name: &str) -> String {
 7291         -
        read(&path(name, "sts"))
        9319  +
    /// Get the path to a file in this test suite directory
        9320  +
    fn path(&self, filename: &str) -> String {
        9321  +
        let dir = match self.collection {
        9322  +
            Collection::V4 => "v4",
        9323  +
            Collection::V4A => "v4a",
        9324  +
        };
        9325  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 7292   9326   
    }
 7293   9327   
 7294         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 7295         -
        test_parsed_request(name, "req")
        9328  +
    /// Get the HTTP request for the test
        9329  +
    pub(crate) fn request(&self) -> TestRequest {
        9330  +
        test_parsed_request(&self.path("request.txt"))
 7296   9331   
    }
 7297   9332   
 7298         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 7299         -
        test_parsed_request(name, "sreq")
        9333  +
    /// Get the signed HTTP request for the test
        9334  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        9335  +
        match signature_location {
        9336  +
            SignatureLocation::QueryParams => {
        9337  +
                test_parsed_request(&self.path("query-signed-request.txt"))
        9338  +
            }
        9339  +
            SignatureLocation::Headers => {
        9340  +
                test_parsed_request(&self.path("header-signed-request.txt"))
        9341  +
            }
        9342  +
        }
 7300   9343   
    }
 7301   9344   
 7302         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 7303         -
        test_parsed_request(name, "qpsreq")
        9345  +
    /// Get the canonical request for the test
        9346  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        9347  +
        match signature_location {
        9348  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        9349  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
        9350  +
        }
 7304   9351   
    }
 7305   9352   
 7306         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 7307         -
        let path = path(name, ext);
 7308         -
        match parse_request(read(&path).as_bytes()) {
 7309         -
            Ok(parsed) => parsed,
 7310         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        9353  +
    /// Get the string to sign for the test
        9354  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
        9355  +
        match signature_location {
        9356  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        9357  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 7311   9358   
        }
 7312   9359   
    }
 7313   9360   
 7314         -
    #[test]
 7315         -
    fn test_parse() {
 7316         -
        test_request("post-header-key-case");
        9361  +
    /// Get the signature for the test
        9362  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
        9363  +
        match signature_location {
        9364  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        9365  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        9366  +
        }
 7317   9367   
    }
 7318   9368   
 7319         -
    #[test]
 7320         -
    fn test_read_query_params() {
 7321         -
        test_request("get-vanilla-query-order-key-case");
        9369  +
    /// Get the test context for the test
        9370  +
    pub(crate) fn context(&self) -> TestContext {
        9371  +
        let context = read(&self.path("context.json"));
        9372  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        9373  +
        tc_builder.build()
 7322   9374   
    }
 7323   9375   
}
 7324   9376   
 7325         -
#[cfg(feature = "sigv4a")]
 7326         -
pub(crate) mod v4a {
 7327         -
    use super::*;
 7328         -
    use crate::http_request::{
 7329         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 7330         -
    };
 7331         -
    use aws_credential_types::Credentials;
 7332         -
    use aws_smithy_runtime_api::client::identity::Identity;
 7333         -
    use serde_derive::Deserialize;
 7334         -
    use std::time::{Duration, SystemTime};
 7335         -
    use time::format_description::well_known::Rfc3339;
 7336         -
    use time::OffsetDateTime;
 7337         -
 7338         -
    fn path(test_name: &str, definition_name: &str) -> String {
 7339         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        9377  +
fn test_parsed_request(path: &str) -> TestRequest {
        9378  +
    match parse_request(read(path).as_bytes()) {
        9379  +
        Ok(parsed) => parsed,
        9380  +
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 7340   9381   
    }
        9382  +
}
 7341   9383   
 7342         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 7343         -
        test_parsed_request(&path(name, "request"))
 7344         -
    }
        9384  +
fn new_v4_signing_params_from_context(
        9385  +
    test_context: &'_ TestContext,
        9386  +
    signature_location: SignatureLocation,
        9387  +
) -> crate::http_request::SigningParams<'_> {
        9388  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        9389  +
    params.settings.signature_location = signature_location;
        9390  +
    params.into()
        9391  +
}
 7345   9392   
 7346         -
    pub(crate) fn test_canonical_request(
 7347         -
        name: &str,
 7348         -
        signature_location: SignatureLocation,
 7349         -
    ) -> String {
 7350         -
        match signature_location {
 7351         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 7352         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        9393  +
/// Run the given test from the v4 suite for both header and query
        9394  +
/// signature locations
        9395  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        9396  +
    run_v4_test(test_name, SignatureLocation::Headers);
        9397  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        9398  +
}
        9399  +
        9400  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        9401  +
    assert_eq!(expected.scheme(), actual.scheme());
        9402  +
    assert_eq!(expected.authority(), actual.authority());
        9403  +
    assert_eq!(expected.path(), actual.path());
        9404  +
        9405  +
    // query params may be out of order
        9406  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        9407  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        9408  +
    expected_params.sort();
        9409  +
        9410  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        9411  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        9412  +
    actual_params.sort();
        9413  +
        9414  +
    assert_eq!(expected_params, actual_params);
        9415  +
}
        9416  +
        9417  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        9418  +
    let expected = expected.as_http_request();
        9419  +
    let actual = actual;
        9420  +
    assert_eq!(expected.method(), actual.method());
        9421  +
    assert_eq!(
        9422  +
        expected.headers().len(),
        9423  +
        actual.headers().len(),
        9424  +
        "extra or missing headers"
        9425  +
    );
        9426  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        9427  +
    assert_uri_eq(expected.uri(), actual.uri());
        9428  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        9429  +
}
        9430  +
        9431  +
/// Run the given test from the v4 suite for the given signature location
        9432  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        9433  +
    let test = SigningSuiteTest::v4(test_name);
        9434  +
    let tc = test.context();
        9435  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        9436  +
        9437  +
    let req = test.request();
        9438  +
    let expected_creq = test.canonical_request(signature_location);
        9439  +
    let signable_req = SignableRequest::from(&req);
        9440  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        9441  +
        9442  +
    // check canonical request
        9443  +
    assert_eq!(
        9444  +
        expected_creq,
        9445  +
        actual_creq.to_string(),
        9446  +
        "canonical request didn't match (signature location: {signature_location:?})"
        9447  +
    );
        9448  +
        9449  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        9450  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        9451  +
    let actual_string_to_sign = StringToSign::new_v4(
        9452  +
        *params.time(),
        9453  +
        params.region().unwrap(),
        9454  +
        params.name(),
        9455  +
        hashed_creq,
        9456  +
    )
        9457  +
    .to_string();
        9458  +
        9459  +
    // check string to sign
        9460  +
    assert_eq!(
        9461  +
        expected_string_to_sign, actual_string_to_sign,
        9462  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        9463  +
    );
        9464  +
        9465  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        9466  +
    let mut signed = req.as_http_request();
        9467  +
    out.output.apply_to_request_http0x(&mut signed);
        9468  +
        9469  +
    // check signature
        9470  +
    assert_eq!(
        9471  +
        test.signature(signature_location),
        9472  +
        out.signature,
        9473  +
        "signature didn't match (signature location: {signature_location:?})"
        9474  +
    );
        9475  +
        9476  +
    let expected = test.signed_request(signature_location);
        9477  +
    assert_requests_eq(expected, signed);
        9478  +
}
        9479  +
        9480  +
/// Test suite context.json
        9481  +
pub(crate) struct TestContext {
        9482  +
    pub(crate) identity: Identity,
        9483  +
    pub(crate) expiration_in_seconds: u64,
        9484  +
    pub(crate) normalize: bool,
        9485  +
    pub(crate) region: String,
        9486  +
    pub(crate) service: String,
        9487  +
    pub(crate) timestamp: String,
        9488  +
    pub(crate) omit_session_token: bool,
        9489  +
    pub(crate) sign_body: bool,
        9490  +
}
        9491  +
        9492  +
// Serde has limitations requiring this odd workaround.
        9493  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        9494  +
fn return_true() -> bool {
        9495  +
    true
        9496  +
}
        9497  +
        9498  +
#[derive(serde_derive::Deserialize)]
        9499  +
pub(crate) struct TestContextBuilder {
        9500  +
    credentials: TestContextCreds,
        9501  +
    expiration_in_seconds: u64,
        9502  +
    normalize: bool,
        9503  +
    region: String,
        9504  +
    service: String,
        9505  +
    timestamp: String,
        9506  +
    #[serde(default)]
        9507  +
    omit_session_token: bool,
        9508  +
    #[serde(default = "return_true")]
        9509  +
    sign_body: bool,
        9510  +
}
        9511  +
        9512  +
impl TestContextBuilder {
        9513  +
    pub(crate) fn build(self) -> TestContext {
        9514  +
        let identity = Identity::new(
        9515  +
            Credentials::from_keys(
        9516  +
                &self.credentials.access_key_id,
        9517  +
                &self.credentials.secret_access_key,
        9518  +
                self.credentials.token.clone(),
        9519  +
            ),
        9520  +
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
        9521  +
        );
        9522  +
        9523  +
        TestContext {
        9524  +
            identity,
        9525  +
            expiration_in_seconds: self.expiration_in_seconds,
        9526  +
            normalize: self.normalize,
        9527  +
            region: self.region,
        9528  +
            service: self.service,
        9529  +
            timestamp: self.timestamp,
        9530  +
            omit_session_token: self.omit_session_token,
        9531  +
            sign_body: self.sign_body,
 7353   9532   
        }
 7354   9533   
    }
        9534  +
}
 7355   9535   
 7356         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
 7357         -
        match signature_location {
 7358         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 7359         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        9536  +
#[derive(serde_derive::Deserialize)]
        9537  +
pub(crate) struct TestContextCreds {
        9538  +
    access_key_id: String,
        9539  +
    secret_access_key: String,
        9540  +
    token: Option<String>,
        9541  +
}
        9542  +
        9543  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        9544  +
    fn from(tc: &'a TestContext) -> Self {
        9545  +
        crate::sign::v4::SigningParams {
        9546  +
            identity: &tc.identity,
        9547  +
            region: &tc.region,
        9548  +
            name: &tc.service,
        9549  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        9550  +
                .unwrap()
        9551  +
                .into(),
        9552  +
            settings: SigningSettings {
        9553  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        9554  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        9555  +
                uri_path_normalization_mode: tc.normalize.into(),
        9556  +
                session_token_mode: if tc.omit_session_token {
        9557  +
                    SessionTokenMode::Exclude
        9558  +
                } else {
        9559  +
                    SessionTokenMode::Include
        9560  +
                },
        9561  +
                payload_checksum_kind: if tc.sign_body {
        9562  +
                    PayloadChecksumKind::XAmzSha256
        9563  +
                } else {
        9564  +
                    PayloadChecksumKind::NoHeader
        9565  +
                },
        9566  +
                ..Default::default()
        9567  +
            },
 7360   9568   
        }
 7361   9569   
    }
        9570  +
}
 7362   9571   
 7363         -
    fn test_parsed_request(path: &str) -> TestRequest {
 7364         -
        match parse_request(read(path).as_bytes()) {
 7365         -
            Ok(parsed) => parsed,
 7366         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
 7367         -
        }
        9572  +
#[cfg(feature = "sigv4a")]
        9573  +
pub(crate) mod v4a {
        9574  +
    use super::*;
        9575  +
    use crate::http_request::{
        9576  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        9577  +
    };
        9578  +
    use crate::sign::v4a;
        9579  +
    use p256::ecdsa::signature::{Signature, Verifier};
        9580  +
    use p256::ecdsa::{DerSignature, SigningKey};
        9581  +
    use std::time::Duration;
        9582  +
    use time::format_description::well_known::Rfc3339;
        9583  +
    use time::OffsetDateTime;
        9584  +
        9585  +
    fn new_v4a_signing_params_from_context(
        9586  +
        test_context: &'_ TestContext,
        9587  +
        signature_location: SignatureLocation,
        9588  +
    ) -> crate::http_request::SigningParams<'_> {
        9589  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        9590  +
        params.settings.signature_location = signature_location;
        9591  +
        params.into()
 7368   9592   
    }
 7369   9593   
 7370         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 7371         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 7372         -
        let context = read(&path);
 7373         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 7374         -
        tc_builder.build()
        9594  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        9595  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        9596  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
 7375   9597   
    }
 7376   9598   
 7377         -
    pub(crate) struct TestContext {
 7378         -
        pub(crate) identity: Identity,
 7379         -
        pub(crate) expiration_in_seconds: u64,
 7380         -
        pub(crate) normalize: bool,
 7381         -
        pub(crate) region: String,
 7382         -
        pub(crate) service: String,
 7383         -
        pub(crate) timestamp: String,
 7384         -
        pub(crate) omit_session_token: bool,
 7385         -
        pub(crate) sign_body: bool,
        9599  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        9600  +
        let test = SigningSuiteTest::v4a(test_name);
        9601  +
        let tc = test.context();
        9602  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        9603  +
        9604  +
        let req = test.request();
        9605  +
        let expected_creq = test.canonical_request(signature_location);
        9606  +
        let signable_req = SignableRequest::from(&req);
        9607  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        9608  +
        9609  +
        assert_eq!(
        9610  +
            expected_creq,
        9611  +
            actual_creq.to_string(),
        9612  +
            "canonical request didn't match (signature location: {signature_location:?})"
        9613  +
        );
        9614  +
        9615  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        9616  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        9617  +
        let actual_string_to_sign = StringToSign::new_v4a(
        9618  +
            *params.time(),
        9619  +
            params.region_set().unwrap(),
        9620  +
            params.name(),
        9621  +
            hashed_creq,
        9622  +
        )
        9623  +
        .to_string();
        9624  +
        9625  +
        assert_eq!(
        9626  +
            expected_string_to_sign, actual_string_to_sign,
        9627  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        9628  +
        );
        9629  +
        9630  +
        let out = sign(signable_req, &params).unwrap();
        9631  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        9632  +
        out.output
        9633  +
            .apply_to_request_http0x(&mut req.as_http_request());
        9634  +
        9635  +
        let creds = params.credentials().unwrap();
        9636  +
        let signing_key =
        9637  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        9638  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        9639  +
        let sig = sig
        9640  +
            .try_into()
        9641  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        9642  +
        9643  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        9644  +
        let peer_public_key = signing_key.verifying_key();
        9645  +
        let sts = actual_string_to_sign.as_bytes();
        9646  +
        peer_public_key.verify(sts, &sig).unwrap();
        9647  +
        // TODO(sigv4a) - use public.key.json as verifying key?
 7386   9648   
    }
 7387   9649   
 7388   9650   
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 7389   9651   
        fn from(tc: &'a TestContext) -> Self {
 7390   9652   
            crate::sign::v4a::SigningParams {
 7391   9653   
                identity: &tc.identity,
 7392   9654   
                region_set: &tc.region,
 7393   9655   
                name: &tc.service,
 7394   9656   
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 7395   9657   
                    .unwrap()
 7396   9658   
                    .into(),
 7397   9659   
                settings: SigningSettings {
 7398   9660   
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 7399   9661   
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 7400   9662   
                    uri_path_normalization_mode: tc.normalize.into(),
 7401   9663   
                    session_token_mode: if tc.omit_session_token {
 7402   9664   
                        SessionTokenMode::Exclude
 7403   9665   
                    } else {
 7404   9666   
                        SessionTokenMode::Include
 7405   9667   
                    },
 7406   9668   
                    payload_checksum_kind: if tc.sign_body {
 7407   9669   
                        PayloadChecksumKind::XAmzSha256
 7408   9670   
                    } else {
 7409   9671   
                        PayloadChecksumKind::NoHeader
 7410   9672   
                    },
 7411   9673   
                    ..Default::default()
 7412   9674   
                },
 7413   9675   
            }
 7414   9676   
        }
 7415   9677   
    }
 7416   9678   
 7417         -
    // Serde has limitations requiring this odd workaround.
 7418         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 7419         -
    fn return_true() -> bool {
 7420         -
        true
 7421         -
    }
 7422         -
 7423         -
    #[derive(Deserialize)]
 7424         -
    pub(crate) struct TestContextBuilder {
 7425         -
        credentials: TestContextCreds,
 7426         -
        expiration_in_seconds: u64,
 7427         -
        normalize: bool,
 7428         -
        region: String,
 7429         -
        service: String,
 7430         -
        timestamp: String,
 7431         -
        #[serde(default)]
 7432         -
        omit_session_token: bool,
 7433         -
        #[serde(default = "return_true")]
 7434         -
        sign_body: bool,
 7435         -
    }
 7436         -
 7437         -
    impl TestContextBuilder {
 7438         -
        pub(crate) fn build(self) -> TestContext {
 7439         -
            let identity = Identity::new(
 7440         -
                Credentials::from_keys(
 7441         -
                    &self.credentials.access_key_id,
 7442         -
                    &self.credentials.secret_access_key,
 7443         -
                    self.credentials.token.clone(),
 7444         -
                ),
 7445         -
                Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 7446         -
            );
 7447         -
 7448         -
            TestContext {
 7449         -
                identity,
 7450         -
                expiration_in_seconds: self.expiration_in_seconds,
 7451         -
                normalize: self.normalize,
 7452         -
                region: self.region,
 7453         -
                service: self.service,
 7454         -
                timestamp: self.timestamp,
 7455         -
                omit_session_token: self.omit_session_token,
 7456         -
                sign_body: self.sign_body,
 7457         -
            }
 7458         -
        }
 7459         -
    }
 7460         -
 7461         -
    #[derive(Deserialize)]
 7462         -
    pub(crate) struct TestContextCreds {
 7463         -
        access_key_id: String,
 7464         -
        secret_access_key: String,
 7465         -
        token: Option<String>,
 7466         -
    }
 7467         -
 7468   9679   
    #[test]
 7469   9680   
    fn test_parse() {
 7470         -
        let req = test_request("post-header-key-case");
        9681  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 7471   9682   
        assert_eq!(req.method, "POST");
 7472   9683   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 7473   9684   
        assert!(req.headers.is_empty());
 7474   9685   
    }
 7475   9686   
 7476   9687   
    #[test]
 7477   9688   
    fn test_read_query_params() {
 7478         -
        let req = test_request("get-header-value-trim");
        9689  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 7479   9690   
        assert_eq!(req.method, "GET");
 7480   9691   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 7481   9692   
        assert!(!req.headers.is_empty());
 7482   9693   
    }
 7483   9694   
}
 7484   9695   
 7485   9696   
fn read(path: &str) -> String {
 7486   9697   
    println!("Loading `{}` for test case...", path);
 7487   9698   
    let v = {
 7488   9699   
        match std::fs::read_to_string(path) {
 7489   9700   
            // This replacement is necessary for tests to pass on Windows, as reading the
 7490   9701   
            // test snapshots from the file system results in CRLF line endings being inserted.
 7491   9702   
            Ok(value) => value.replace("\r\n", "\n"),
 7492   9703   
            Err(err) => {
 7493   9704   
                panic!("failed to load test case `{}`: {}", path, err);
 7494   9705   
            }
 7495   9706   
        }
 7496   9707   
    };
 7497   9708   
 7498   9709   
    v.trim().to_string()
 7499   9710   
}
 7500   9711   
 7501   9712   
pub(crate) struct TestRequest {
 7502   9713   
    pub(crate) uri: String,
 7503   9714   
    pub(crate) method: String,
 7504   9715   
    pub(crate) headers: Vec<(String, String)>,
 7505   9716   
    pub(crate) body: TestSignedBody,
 7506   9717   
}
 7507   9718   
 7508   9719   
pub(crate) enum TestSignedBody {
 7509   9720   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 7510   9721   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 7511   9722   
                    )
 7512   9723   
                })
 7513   9724   
                .collect::<Vec<_>>(),
 7514   9725   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 7515   9726   
        }
 7516   9727   
    }
 7517   9728   
}
 7518   9729   
 7519   9730   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 7520   9731   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 7521   9732   
        SignableRequest::new(
 7522   9733   
            &request.method,
 7523   9734   
            &request.uri,
 7524   9735   
            request
 7525   9736   
                .headers
 7526   9737   
                .iter()
 7527   9738   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 7528   9739   
            request.body.as_signable_body(),
 7529   9740   
        )
 7530   9741   
        .expect("URI MUST be valid")
 7531   9742   
    }
 7532   9743   
}
 7533   9744   
 7534   9745   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 7535   9746   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 7536   9747   
    // httparse 1.5 requires two trailing newlines to head the header section.
 7537   9748   
    let mut with_newline = Vec::from(s);
 7538   9749   
    with_newline.push(b'\n');
 7539   9750   
    let mut req = httparse::Request::new(&mut headers);
 7540         -
    let _ = req.parse(&with_newline).unwrap();
        9751  +
    let status = req.parse(&with_newline).unwrap();
        9752  +
        9753  +
    let body = if status.is_complete() {
        9754  +
        let body_offset = status.unwrap();
        9755  +
        // ignore the newline we added, take from original
        9756  +
        &s[body_offset..]
        9757  +
    } else {
        9758  +
        &[]
        9759  +
    };
 7541   9760   
 7542   9761   
    let mut uri_builder = Uri::builder().scheme("https");
 7543   9762   
    if let Some(path) = req.path {
 7544   9763   
        uri_builder = uri_builder.path_and_query(path);
 7545   9764   
    }
 7546   9765   
 7547   9766   
    let mut headers = vec![];
 7548   9767   
    for header in req.headers {
 7549   9768   
        let name = header.name.to_lowercase();
 7550   9769   
        if name == "host" {
 7551   9770   
            uri_builder = uri_builder.authority(header.value);
 7552   9771   
        } else if !name.is_empty() {
 7553   9772   
            headers.push((
 7554   9773   
                header.name.to_string(),
 7555   9774   
                std::str::from_utf8(header.value)?.to_string(),
 7556   9775   
            ));
 7557   9776   
        }
 7558   9777   
    }
 7559   9778   
 7560   9779   
    Ok(TestRequest {
 7561   9780   
        uri: uri_builder.build()?.to_string(),
 7562   9781   
        method: req.method.unwrap().to_string(),
 7563   9782   
        headers,
 7564         -
        body: TestSignedBody::Bytes(vec![]),
        9783  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 7565   9784   
    })
 7566   9785   
}
 7567   9786   
 7568   9787   
#[test]
 7569   9788   
fn test_parse_headers() {
 7570   9789   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 7571   9790   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 7572   9791   
    assert_eq!(
 7573   9792   
        httparse::parse_headers(buf, &mut headers),
 7574   9793   
        Ok(httparse::Status::Complete((
 7575   9794   
            56,
 7576   9795   
            &[
 7577   9796   
                httparse::Header {
 7578   9797   
                    name: "Host",
 7579   9798   
                    value: b"example.amazonaws.com",
 7580   9799   
                },
 7581   9800   
                httparse::Header {
 7582   9801   
                    name: "X-Amz-Date",
 7583   9802   
                    value: b"20150830T123600Z",
 7584   9803   
                }
 7585   9804   
            ][..]
 7586   9805   
        )))
 7587   9806   
    );
 7588   9807   
}
 7589   9808   
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
 7590   9809   
index a208453..fc00249 100644
 7591         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        9810  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 7592   9811   
@@ -168,52 +168,54 @@ pub mod signing_params {
 7593   9812   
        );
 7594   9813   
 7595   9814   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 7596   9815   
        /// a required argument was not given.
 7597   9816   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 7598   9817   
            Ok(SigningParams {
 7599   9818   
                identity: self
 7600   9819   
                    .identity
 7601   9820   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 7602   9821   
                region: self
 7603   9822   
                    .region
 7604   9823   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 7605   9824   
                name: self
 7606   9825   
                    .name
 7607   9826   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 7608   9827   
                time: self
 7609   9828   
                    .time
 7610   9829   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 7611   9830   
                settings: self
 7612   9831   
                    .settings
 7613   9832   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 7614   9833   
            })
 7615   9834   
        }
 7616   9835   
    }
 7617   9836   
}
 7618   9837   
 7619   9838   
#[cfg(test)]
 7620   9839   
mod tests {
 7621   9840   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 7622   9841   
    use crate::date_time::test_parsers::parse_date_time;
 7623         -
    use crate::http_request::test;
 7624   9842   
 7625   9843   
    #[test]
 7626   9844   
    fn test_signature_calculation() {
 7627   9845   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 7628         -
        let creq = test::v4::test_canonical_request("iam");
        9846  +
        let creq = r#"AWS4-HMAC-SHA256
        9847  +
20150830T123600Z
        9848  +
20150830/us-east-1/iam/aws4_request
        9849  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 7629   9850   
        let time = parse_date_time("20150830T123600Z").unwrap();
 7630   9851   
 7631   9852   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 7632   9853   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 7633   9854   
 7634   9855   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 7635   9856   
        assert_eq!(expected, &signature);
 7636   9857   
    }
 7637   9858   
 7638   9859   
    #[test]
 7639   9860   
    fn sign_payload_empty_string() {
 7640   9861   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 7641   9862   
        let actual = sha256_hex_string([]);
 7642   9863   
        assert_eq!(expected, actual);
 7643   9864   
    }
 7644   9865   
}
 7645   9866   
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
 7646   9867   
index ce78c38..8c2f591 100644
 7647         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
        9868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 7648   9869   
@@ -1,43 +1,43 @@
 7649   9870   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7650   9871   
[package]
 7651   9872   
name = "aws-smithy-checksums"
 7652   9873   
version = "0.63.5"
 7653   9874   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 7654   9875   
description = "Checksum calculation and verification callbacks"
 7655   9876   
edition = "2021"
 7656   9877   
license = "Apache-2.0"
 7657   9878   
repository = "https://github.com/smithy-lang/smithy-rs"
 7658   9879   
[package.metadata.docs.rs]
 7659   9880   
all-features = true
 7660   9881   
targets = ["x86_64-unknown-linux-gnu"]
 7661   9882   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7662   9883   
rustdoc-args = ["--cfg", "docsrs"]
 7663   9884   
 7664   9885   
[dependencies]
 7665   9886   
bytes = "1.10.0"
 7666   9887   
crc-fast = "1.3.0"
 7667   9888   
hex = "0.4.3"
 7668   9889   
http = "0.2.9"
 7669   9890   
http-body = "0.4.5"
 7670   9891   
md-5 = "0.10"
 7671   9892   
pin-project-lite = "0.2.14"
 7672   9893   
sha1 = "0.10"
 7673   9894   
sha2 = "0.10"
 7674   9895   
tracing = "0.1.40"
 7675   9896   
 7676   9897   
[dependencies.aws-smithy-http]
 7677   9898   
path = "../aws-smithy-http"
 7678         -
version = "0.62.2"
        9899  +
version = "0.62.3"
 7679   9900   
 7680   9901   
[dependencies.aws-smithy-types]
 7681   9902   
path = "../aws-smithy-types"
 7682   9903   
version = "1.3.2"
 7683   9904   
 7684   9905   
[dev-dependencies]
 7685   9906   
bytes-utils = "0.1.2"
 7686   9907   
pretty_assertions = "1.3"
 7687   9908   
tracing-test = "0.2.1"
 7688   9909   
 7689   9910   
[dev-dependencies.tokio]
 7690   9911   
version = "1.23.1"
 7691   9912   
features = ["macros", "rt"]
 7692   9913   
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
 7693   9914   
index 970c99e..d3c7a49 100644
 7694         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
        9915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 7695   9916   
@@ -1,34 +1,34 @@
 7696   9917   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7697   9918   
[package]
 7698   9919   
name = "aws-smithy-http"
 7699         -
version = "0.62.2"
        9920  +
version = "0.62.3"
 7700   9921   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7701   9922   
description = "Smithy HTTP logic for smithy-rs."
 7702   9923   
edition = "2021"
 7703   9924   
license = "Apache-2.0"
 7704   9925   
repository = "https://github.com/smithy-lang/smithy-rs"
 7705   9926   
[package.metadata.docs.rs]
 7706   9927   
all-features = true
 7707   9928   
targets = ["x86_64-unknown-linux-gnu"]
 7708   9929   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7709   9930   
rustdoc-args = ["--cfg", "docsrs"]
 7710   9931   
 7711   9932   
[features]
 7712   9933   
event-stream = ["aws-smithy-eventstream"]
 7713   9934   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 7714   9935   
 7715   9936   
[dependencies]
 7716   9937   
bytes = "1.10.0"
 7717   9938   
bytes-utils = "0.1"
 7718   9939   
percent-encoding = "2.3.1"
 7719   9940   
pin-project-lite = "0.2.14"
 7720   9941   
pin-utils = "0.1.0"
 7721   9942   
tracing = "0.1.40"
 7722   9943   
futures-core = "0.3.31"
 7723   9944   
 7724   9945   
[dependencies.aws-smithy-eventstream]
 7725   9946   
path = "../aws-smithy-eventstream"
 7726   9947   
optional = true
 7727   9948   
version = "0.60.10"
 7728   9949   
 7729   9950   
[dependencies.aws-smithy-runtime-api]
 7730   9951   
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
 7731   9952   
index 508f7a2..361545e 100644
 7732         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
        9953  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 7733   9954   
@@ -1,27 +1,27 @@
 7734   9955   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7735   9956   
[[bin]]
 7736   9957   
name = "read_many_from_str"
 7737   9958   
path = "fuzz_targets/read_many_from_str.rs"
 7738   9959   
test = false
 7739   9960   
doc = false
 7740   9961   
 7741   9962   
[package]
 7742   9963   
name = "aws-smithy-http-fuzz"
 7743   9964   
version = "0.0.0"
 7744   9965   
authors = ["Automatically generated"]
 7745   9966   
publish = false
 7746   9967   
edition = "2021"
 7747   9968   
 7748   9969   
[package.metadata]
 7749   9970   
cargo-fuzz = true
 7750   9971   
 7751   9972   
[dependencies]
 7752   9973   
libfuzzer-sys = "=0.4.7"
 7753   9974   
http = "0.2.3"
 7754   9975   
 7755   9976   
[dependencies.aws-smithy-http]
 7756   9977   
path = ".."
 7757         -
version = "0.62.2"
        9978  +
version = "0.62.3"
 7758   9979   
 7759   9980   
[workspace]
 7760   9981   
members = ["."]
 7761   9982   
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
 7762   9983   
index fef41d0..2792229 100644
 7763         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
        9984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 7764   9985   
@@ -25,68 +25,74 @@ impl QueryWriter {
 7765   9986   
    pub fn new(uri: &Uri) -> Self {
 7766   9987   
        let new_path_and_query = uri
 7767   9988   
            .path_and_query()
 7768   9989   
            .map(|pq| pq.to_string())
 7769   9990   
            .unwrap_or_default();
 7770   9991   
        let prefix = if uri.query().is_none() {
 7771   9992   
            Some('?')
 7772   9993   
        } else if !uri.query().unwrap_or_default().is_empty() {
 7773   9994   
            Some('&')
 7774   9995   
        } else {
 7775   9996   
            None
 7776   9997   
        };
 7777   9998   
        QueryWriter {
 7778   9999   
            base_uri: uri.clone(),
 7779  10000   
            new_path_and_query,
 7780  10001   
            prefix,
 7781  10002   
        }
 7782  10003   
    }
 7783  10004   
 7784  10005   
    /// Clears all query parameters.
 7785  10006   
    pub fn clear_params(&mut self) {
 7786  10007   
        if let Some(index) = self.new_path_and_query.find('?') {
 7787  10008   
            self.new_path_and_query.truncate(index);
 7788  10009   
            self.prefix = Some('?');
 7789  10010   
        }
 7790  10011   
    }
 7791  10012   
 7792  10013   
    /// Inserts a new query parameter. The key and value are percent encoded
 7793  10014   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 7794  10015   
    pub fn insert(&mut self, k: &str, v: &str) {
       10016  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
       10017  +
    }
       10018  +
    
       10019  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
       10020  +
    /// as is.
       10021  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 7795  10022   
        if let Some(prefix) = self.prefix {
 7796  10023   
            self.new_path_and_query.push(prefix);
 7797  10024   
        }
 7798  10025   
        self.prefix = Some('&');
 7799         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
       10026  +
        self.new_path_and_query.push_str(encoded_k);
 7800  10027   
        self.new_path_and_query.push('=');
 7801         -
 7802         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
       10028  +
        self.new_path_and_query.push_str(encoded_v)
       10029  +
        
 7803  10030   
    }
 7804  10031   
 7805  10032   
    /// Returns just the built query string.
 7806  10033   
    pub fn build_query(self) -> String {
 7807  10034   
        self.build_uri().query().unwrap_or_default().to_string()
 7808  10035   
    }
 7809  10036   
 7810  10037   
    /// Returns a full [`Uri`] with the query string updated.
 7811  10038   
    pub fn build_uri(self) -> Uri {
 7812  10039   
        let mut parts = self.base_uri.into_parts();
 7813  10040   
        parts.path_and_query = Some(
 7814  10041   
            self.new_path_and_query
 7815  10042   
                .parse()
 7816  10043   
                .expect("adding query should not invalidate URI"),
 7817  10044   
        );
 7818  10045   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 7819  10046   
    }
 7820  10047   
}
 7821  10048   
 7822  10049   
#[cfg(test)]
 7823  10050   
mod test {
 7824  10051   
    use super::QueryWriter;
 7825  10052   
    use http_02x::Uri;
 7826  10053   
 7827  10054   
    #[test]
 7828  10055   
    fn empty_uri() {
 7829  10056   
        let uri = Uri::from_static("http://www.example.com");
 7830  10057   
        let mut query_writer = QueryWriter::new(&uri);
 7831  10058   
        query_writer.insert("key", "val%ue");
 7832  10059   
        query_writer.insert("another", "value");
 7833  10060   
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
 7834  10061   
index f108978..df7a9fe 100644
 7835         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
       10062  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 7836  10063   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 7837  10064   
 7838  10065   
[package.metadata.smithy-rs-release-tooling]
 7839  10066   
stable = true
 7840  10067   
[package.metadata.cargo-udeps.ignore]
 7841  10068   
normal = ["aws-smithy-http"]
 7842  10069   
 7843  10070   
[features]
 7844  10071   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 7845  10072   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 7846  10073   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 7847  10074   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 7848  10075   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 7849  10076   
rt-tokio = ["tokio/rt"]
 7850  10077   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 7851  10078   
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"]
 7852  10079   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 7853  10080   
 7854  10081   
[dependencies]
 7855  10082   
bytes = "1.10.0"
 7856  10083   
fastrand = "2.3.0"
 7857  10084   
pin-project-lite = "0.2.14"
 7858  10085   
pin-utils = "0.1.0"
 7859  10086   
tracing = "0.1.40"
 7860  10087   
 7861  10088   
[dependencies.aws-smithy-async]
 7862  10089   
path = "../aws-smithy-async"
 7863  10090   
version = "1.2.5"
 7864  10091   
 7865  10092   
[dependencies.aws-smithy-http]
 7866  10093   
path = "../aws-smithy-http"
 7867         -
version = "0.62.2"
       10094  +
version = "0.62.3"
 7868  10095   
 7869  10096   
[dependencies.aws-smithy-observability]
 7870  10097   
path = "../aws-smithy-observability"
 7871  10098   
version = "0.1.3"
 7872  10099   
 7873  10100   
[dependencies.aws-smithy-runtime-api]
 7874  10101   
path = "../aws-smithy-runtime-api"
 7875  10102   
version = "1.8.5"
 7876  10103   
 7877  10104   
[dependencies.aws-smithy-types]
 7878  10105   
path = "../aws-smithy-types"
 7879  10106   
features = ["http-body-0-4-x"]
 7880  10107   
version = "1.3.2"
 7881  10108   
 7882  10109   
[dependencies.aws-smithy-http-client]
 7883  10110   
path = "../aws-smithy-http-client"
 7884  10111   
optional = true
 7885  10112   
version = "1.0.6"
 7886  10113   
 7887  10114   
[dependencies.http-02x]
 7888  10115   
package = "http"
 7889  10116   
version = "0.2.9"
 7890  10117   
 7891  10118   
[dependencies.http-1x]
 7892  10119   
package = "http"
 7893  10120   
version = "1"
 7894  10121   
 7895  10122   
[dependencies.http-body-04x]
 7896  10123   
package = "http-body"
 7897  10124   
version = "0.4.5"
 7898  10125   
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
 7899  10126   
index 4e050c6..f58eb1c 100644
 7900         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
       10127  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 7901  10128   
@@ -1,33 +1,33 @@
 7902  10129   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7903  10130   
[package]
 7904  10131   
name = "aws-smithy-wasm"
 7905  10132   
version = "0.1.4"
 7906  10133   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 7907  10134   
description = "Smithy WebAssembly configuration for smithy-rs."
 7908  10135   
edition = "2021"
 7909  10136   
license = "Apache-2.0"
 7910  10137   
repository = "https://github.com/awslabs/smithy-rs"
 7911  10138   
[package.metadata.docs.rs]
 7912  10139   
all-features = true
 7913  10140   
targets = ["x86_64-unknown-linux-gnu"]
 7914  10141   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7915  10142   
rustdoc-args = ["--cfg", "docsrs"]
 7916  10143   
 7917  10144   
[dependencies]
 7918  10145   
bytes = "1.10.0"
 7919  10146   
http = "1.0.0"
 7920  10147   
tracing = "0.1.40"
 7921  10148   
wasi = "0.12.1"
 7922  10149   
 7923  10150   
[dependencies.aws-smithy-runtime-api]
 7924  10151   
path = "../aws-smithy-runtime-api"
 7925  10152   
features = ["http-1x"]
 7926  10153   
version = "1.8.5"
 7927  10154   
 7928  10155   
[dependencies.aws-smithy-http]
 7929  10156   
path = "../aws-smithy-http"
 7930         -
version = "0.62.2"
       10157  +
version = "0.62.3"
 7931  10158   
 7932  10159   
[dependencies.aws-smithy-types]
 7933  10160   
path = "../aws-smithy-types"
 7934  10161   
version = "1.3.2"
 7935  10162   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 7936  10163   
index a880648..139e808 100644
 7937         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
       10164  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 7938  10165   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 7939  10166   
edition = "2021"
 7940  10167   
license = "Apache-2.0"
 7941  10168   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7942  10169   
rust-version = "1.86.0"
 7943  10170   
readme = "README.md"
 7944  10171   
[package.metadata.smithy]
 7945  10172   
codegen-version = "ci"
 7946  10173   
[package.metadata.docs.rs]
 7947  10174   
all-features = true
 7948  10175   
targets = ["x86_64-unknown-linux-gnu"]
 7949  10176   
[dependencies.aws-credential-types]
 7950  10177   
path = "../aws-credential-types"
 7951  10178   
version = "1.2.4"
 7952  10179   
 7953  10180   
[dependencies.aws-runtime]
 7954  10181   
path = "../aws-runtime"
 7955  10182   
features = ["event-stream"]
 7956  10183   
version = "1.5.9"
 7957  10184   
 7958  10185   
[dependencies.aws-smithy-async]
 7959  10186   
path = "../aws-smithy-async"
 7960  10187   
version = "1.2.5"
 7961  10188   
 7962  10189   
[dependencies.aws-smithy-eventstream]
 7963  10190   
path = "../aws-smithy-eventstream"
 7964  10191   
version = "0.60.10"
 7965  10192   
 7966  10193   
[dependencies.aws-smithy-http]
 7967  10194   
path = "../aws-smithy-http"
 7968  10195   
features = ["event-stream"]
 7969         -
version = "0.62.2"
       10196  +
version = "0.62.3"
 7970  10197   
 7971  10198   
[dependencies.aws-smithy-json]
 7972  10199   
path = "../aws-smithy-json"
 7973  10200   
version = "0.61.4"
 7974  10201   
 7975  10202   
[dependencies.aws-smithy-runtime]
 7976  10203   
path = "../aws-smithy-runtime"
 7977  10204   
features = ["client"]
 7978  10205   
version = "1.8.5"
 7979  10206   
 7980  10207   
[dependencies.aws-smithy-runtime-api]
 7981  10208   
path = "../aws-smithy-runtime-api"
 7982  10209   
features = ["client", "http-02x"]
 7983  10210   
version = "1.8.5"
 7984  10211   
 7985  10212   
[dependencies.aws-smithy-types]
 7986  10213   
path = "../aws-smithy-types"
 7987  10214   
version = "1.3.2"
 7988  10215   
 7989  10216   
[dependencies.aws-types]
 7990  10217   
path = "../aws-types"
 7991  10218   
version = "1.3.8"
 7992  10219   
 7993  10220   
[dependencies.bytes]
 7994  10221   
version = "1.4.0"
 7995  10222   
 7996  10223   
[dependencies.fastrand]
 7997  10224   
version = "2.0.0"
 7998  10225   
 7999  10226   
[dependencies.http]
 8000  10227   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 8001  10228   
index 415ecc9..667d12b 100644
 8002         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
       10229  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 8003  10230   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 8004  10231   
edition = "2021"
 8005  10232   
license = "Apache-2.0"
 8006  10233   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8007  10234   
rust-version = "1.86.0"
 8008  10235   
readme = "README.md"
 8009  10236   
[package.metadata.smithy]
 8010  10237   
codegen-version = "ci"
 8011  10238   
[package.metadata.docs.rs]
 8012  10239   
all-features = true
 8013  10240   
targets = ["x86_64-unknown-linux-gnu"]
 8014  10241   
[dependencies.aws-credential-types]
 8015  10242   
path = "../aws-credential-types"
 8016  10243   
version = "1.2.4"
 8017  10244   
 8018  10245   
[dependencies.aws-runtime]
 8019  10246   
path = "../aws-runtime"
 8020  10247   
features = ["event-stream"]
 8021  10248   
version = "1.5.9"
 8022  10249   
 8023  10250   
[dependencies.aws-smithy-async]
 8024  10251   
path = "../aws-smithy-async"
 8025  10252   
version = "1.2.5"
 8026  10253   
 8027  10254   
[dependencies.aws-smithy-eventstream]
 8028  10255   
path = "../aws-smithy-eventstream"
 8029  10256   
version = "0.60.10"
 8030  10257   
 8031  10258   
[dependencies.aws-smithy-http]
 8032  10259   
path = "../aws-smithy-http"
 8033  10260   
features = ["event-stream"]
 8034         -
version = "0.62.2"
       10261  +
version = "0.62.3"
 8035  10262   
 8036  10263   
[dependencies.aws-smithy-json]
 8037  10264   
path = "../aws-smithy-json"
 8038  10265   
version = "0.61.4"
 8039  10266   
 8040  10267   
[dependencies.aws-smithy-runtime]
 8041  10268   
path = "../aws-smithy-runtime"
 8042  10269   
features = ["client"]
 8043  10270   
version = "1.8.5"
 8044  10271   
 8045  10272   
[dependencies.aws-smithy-runtime-api]
 8046  10273   
path = "../aws-smithy-runtime-api"
 8047  10274   
features = ["client", "http-02x"]
 8048  10275   
version = "1.8.5"
 8049  10276   
 8050  10277   
[dependencies.aws-smithy-types]
 8051  10278   
path = "../aws-smithy-types"
 8052  10279   
version = "1.3.2"
 8053  10280   
 8054  10281   
[dependencies.aws-types]
 8055  10282   
path = "../aws-types"
 8056  10283   
version = "1.3.8"
 8057  10284   
 8058  10285   
[dependencies.bytes]
 8059  10286   
version = "1.4.0"
 8060  10287   
 8061  10288   
[dependencies.fastrand]
 8062  10289   
version = "2.0.0"
 8063  10290   
 8064  10291   
[dependencies.http]
 8065  10292   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 8066  10293   
index 8871cab..ed88de6 100644
 8067         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
       10294  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 8068  10295   
@@ -1,61 +1,61 @@
 8069  10296   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8070  10297   
[package]
 8071  10298   
name = "aws-sdk-codecatalyst"
 8072  10299   
version = "0.0.0-local"
 8073  10300   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8074  10301   
description = "AWS SDK for Amazon CodeCatalyst"
 8075  10302   
edition = "2021"
 8076  10303   
license = "Apache-2.0"
 8077  10304   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8078  10305   
rust-version = "1.86.0"
 8079  10306   
readme = "README.md"
 8080  10307   
[package.metadata.smithy]
 8081  10308   
codegen-version = "ci"
 8082  10309   
[package.metadata.docs.rs]
 8083  10310   
all-features = true
 8084  10311   
targets = ["x86_64-unknown-linux-gnu"]
 8085  10312   
[dependencies.aws-credential-types]
 8086  10313   
path = "../aws-credential-types"
 8087  10314   
version = "1.2.4"
 8088  10315   
 8089  10316   
[dependencies.aws-runtime]
 8090  10317   
path = "../aws-runtime"
 8091  10318   
version = "1.5.9"
 8092  10319   
 8093  10320   
[dependencies.aws-smithy-async]
 8094  10321   
path = "../aws-smithy-async"
 8095  10322   
version = "1.2.5"
 8096  10323   
 8097  10324   
[dependencies.aws-smithy-http]
 8098  10325   
path = "../aws-smithy-http"
 8099         -
version = "0.62.2"
       10326  +
version = "0.62.3"
 8100  10327   
 8101  10328   
[dependencies.aws-smithy-json]
 8102  10329   
path = "../aws-smithy-json"
 8103  10330   
version = "0.61.4"
 8104  10331   
 8105  10332   
[dependencies.aws-smithy-runtime]
 8106  10333   
path = "../aws-smithy-runtime"
 8107  10334   
features = ["client", "http-auth"]
 8108  10335   
version = "1.8.5"
 8109  10336   
 8110  10337   
[dependencies.aws-smithy-runtime-api]
 8111  10338   
path = "../aws-smithy-runtime-api"
 8112  10339   
features = ["client", "http-02x", "http-auth"]
 8113  10340   
version = "1.8.5"
 8114  10341   
 8115  10342   
[dependencies.aws-smithy-types]
 8116  10343   
path = "../aws-smithy-types"
 8117  10344   
version = "1.3.2"
 8118  10345   
 8119  10346   
[dependencies.aws-types]
 8120  10347   
path = "../aws-types"
 8121  10348   
version = "1.3.8"
 8122  10349   
 8123  10350   
[dependencies.bytes]
 8124  10351   
version = "1.4.0"
 8125  10352   
 8126  10353   
[dependencies.fastrand]
 8127  10354   
version = "2.0.0"
 8128  10355   
 8129  10356   
[dependencies.http]
 8130  10357   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 8131  10358   
index 89573ff..05238af 100644
 8132         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
       10359  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 8133  10360   
@@ -1,61 +1,61 @@
 8134  10361   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8135  10362   
[package]
 8136  10363   
name = "aws-sdk-config"
 8137  10364   
version = "0.0.0-local"
 8138  10365   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8139  10366   
description = "AWS SDK for AWS Config"
 8140  10367   
edition = "2021"
 8141  10368   
license = "Apache-2.0"
 8142  10369   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8143  10370   
rust-version = "1.86.0"
 8144  10371   
readme = "README.md"
 8145  10372   
[package.metadata.smithy]
 8146  10373   
codegen-version = "ci"
 8147  10374   
[package.metadata.docs.rs]
 8148  10375   
all-features = true
 8149  10376   
targets = ["x86_64-unknown-linux-gnu"]
 8150  10377   
[dependencies.aws-credential-types]
 8151  10378   
path = "../aws-credential-types"
 8152  10379   
version = "1.2.4"
 8153  10380   
 8154  10381   
[dependencies.aws-runtime]
 8155  10382   
path = "../aws-runtime"
 8156  10383   
version = "1.5.9"
 8157  10384   
 8158  10385   
[dependencies.aws-smithy-async]
 8159  10386   
path = "../aws-smithy-async"
 8160  10387   
version = "1.2.5"
 8161  10388   
 8162  10389   
[dependencies.aws-smithy-http]
 8163  10390   
path = "../aws-smithy-http"
 8164         -
version = "0.62.2"
       10391  +
version = "0.62.3"
 8165  10392   
 8166  10393   
[dependencies.aws-smithy-json]
 8167  10394   
path = "../aws-smithy-json"
 8168  10395   
version = "0.61.4"
 8169  10396   
 8170  10397   
[dependencies.aws-smithy-runtime]
 8171  10398   
path = "../aws-smithy-runtime"
 8172  10399   
features = ["client"]
 8173  10400   
version = "1.8.5"
 8174  10401   
 8175  10402   
[dependencies.aws-smithy-runtime-api]
 8176  10403   
path = "../aws-smithy-runtime-api"
 8177  10404   
features = ["client", "http-02x"]
 8178  10405   
version = "1.8.5"
 8179  10406   
 8180  10407   
[dependencies.aws-smithy-types]
 8181  10408   
path = "../aws-smithy-types"
 8182  10409   
version = "1.3.2"
 8183  10410   
 8184  10411   
[dependencies.aws-types]
 8185  10412   
path = "../aws-types"
 8186  10413   
version = "1.3.8"
 8187  10414   
 8188  10415   
[dependencies.bytes]
 8189  10416   
version = "1.4.0"
 8190  10417   
 8191  10418   
[dependencies.fastrand]
 8192  10419   
version = "2.0.0"
 8193  10420   
 8194  10421   
[dependencies.http]
 8195  10422   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 8196  10423   
index d397c58..2c1062b 100644
 8197         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
       10424  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 8198  10425   
@@ -1,61 +1,61 @@
 8199  10426   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8200  10427   
[package]
 8201  10428   
name = "aws-sdk-dynamodb"
 8202  10429   
version = "0.0.0-local"
 8203  10430   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8204  10431   
description = "AWS SDK for Amazon DynamoDB"
 8205  10432   
edition = "2021"
 8206  10433   
license = "Apache-2.0"
 8207  10434   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8208  10435   
rust-version = "1.86.0"
 8209  10436   
readme = "README.md"
 8210  10437   
[package.metadata.smithy]
 8211  10438   
codegen-version = "ci"
 8212  10439   
[package.metadata.docs.rs]
 8213  10440   
all-features = true
 8214  10441   
targets = ["x86_64-unknown-linux-gnu"]
 8215  10442   
[dependencies.aws-credential-types]
 8216  10443   
path = "../aws-credential-types"
 8217  10444   
version = "1.2.4"
 8218  10445   
 8219  10446   
[dependencies.aws-runtime]
 8220  10447   
path = "../aws-runtime"
 8221  10448   
version = "1.5.9"
 8222  10449   
 8223  10450   
[dependencies.aws-smithy-async]
 8224  10451   
path = "../aws-smithy-async"
 8225  10452   
version = "1.2.5"
 8226  10453   
 8227  10454   
[dependencies.aws-smithy-http]
 8228  10455   
path = "../aws-smithy-http"
 8229         -
version = "0.62.2"
       10456  +
version = "0.62.3"
 8230  10457   
 8231  10458   
[dependencies.aws-smithy-json]
 8232  10459   
path = "../aws-smithy-json"
 8233  10460   
version = "0.61.4"
 8234  10461   
 8235  10462   
[dependencies.aws-smithy-runtime]
 8236  10463   
path = "../aws-smithy-runtime"
 8237  10464   
features = ["client"]
 8238  10465   
version = "1.8.5"
 8239  10466   
 8240  10467   
[dependencies.aws-smithy-runtime-api]
 8241  10468   
path = "../aws-smithy-runtime-api"
 8242  10469   
features = ["client", "http-02x"]
 8243  10470   
version = "1.8.5"
 8244  10471   
 8245  10472   
[dependencies.aws-smithy-types]
 8246  10473   
path = "../aws-smithy-types"
 8247  10474   
version = "1.3.2"
 8248  10475   
 8249  10476   
[dependencies.aws-types]
 8250  10477   
path = "../aws-types"
 8251  10478   
version = "1.3.8"
 8252  10479   
 8253  10480   
[dependencies.bytes]
 8254  10481   
version = "1.4.0"
 8255  10482   
 8256  10483   
[dependencies.fastrand]
 8257  10484   
version = "2.0.0"
 8258  10485   
 8259  10486   
[dependencies.http]
 8260  10487   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 8261  10488   
index c0ba315..46168af 100644
 8262         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
       10489  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 8263  10490   
@@ -1,61 +1,61 @@
 8264  10491   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8265  10492   
[package]
 8266  10493   
name = "aws-sdk-ec2"
 8267  10494   
version = "0.0.0-local"
 8268  10495   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8269  10496   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 8270  10497   
edition = "2021"
 8271  10498   
license = "Apache-2.0"
 8272  10499   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8273  10500   
rust-version = "1.86.0"
 8274  10501   
readme = "README.md"
 8275  10502   
[package.metadata.smithy]
 8276  10503   
codegen-version = "ci"
 8277  10504   
[package.metadata.docs.rs]
 8278  10505   
all-features = true
 8279  10506   
targets = ["x86_64-unknown-linux-gnu"]
 8280  10507   
[dependencies.aws-credential-types]
 8281  10508   
path = "../aws-credential-types"
 8282  10509   
version = "1.2.4"
 8283  10510   
 8284  10511   
[dependencies.aws-runtime]
 8285  10512   
path = "../aws-runtime"
 8286  10513   
version = "1.5.9"
 8287  10514   
 8288  10515   
[dependencies.aws-smithy-async]
 8289  10516   
path = "../aws-smithy-async"
 8290  10517   
version = "1.2.5"
 8291  10518   
 8292  10519   
[dependencies.aws-smithy-http]
 8293  10520   
path = "../aws-smithy-http"
 8294         -
version = "0.62.2"
       10521  +
version = "0.62.3"
 8295  10522   
 8296  10523   
[dependencies.aws-smithy-json]
 8297  10524   
path = "../aws-smithy-json"
 8298  10525   
version = "0.61.4"
 8299  10526   
 8300  10527   
[dependencies.aws-smithy-query]
 8301  10528   
path = "../aws-smithy-query"
 8302  10529   
version = "0.60.7"
 8303  10530   
 8304  10531   
[dependencies.aws-smithy-runtime]
 8305  10532   
path = "../aws-smithy-runtime"
 8306  10533   
features = ["client"]
 8307  10534   
version = "1.8.5"
 8308  10535   
 8309  10536   
[dependencies.aws-smithy-runtime-api]
 8310  10537   
path = "../aws-smithy-runtime-api"
 8311  10538   
features = ["client", "http-02x"]
 8312  10539   
version = "1.8.5"
 8313  10540   
 8314  10541   
[dependencies.aws-smithy-types]
 8315  10542   
path = "../aws-smithy-types"
 8316  10543   
version = "1.3.2"
 8317  10544   
 8318  10545   
[dependencies.aws-smithy-xml]
 8319  10546   
path = "../aws-smithy-xml"
 8320  10547   
version = "0.60.10"
 8321  10548   
 8322  10549   
[dependencies.aws-types]
 8323  10550   
path = "../aws-types"
 8324  10551   
version = "1.3.8"
 8325  10552   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 8326  10553   
index 4474d17..095d40e 100644
 8327         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
       10554  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 8328  10555   
@@ -1,61 +1,61 @@
 8329  10556   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8330  10557   
[package]
 8331  10558   
name = "aws-sdk-ecs"
 8332  10559   
version = "0.0.0-local"
 8333  10560   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8334  10561   
description = "AWS SDK for Amazon EC2 Container Service"
 8335  10562   
edition = "2021"
 8336  10563   
license = "Apache-2.0"
 8337  10564   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8338  10565   
rust-version = "1.86.0"
 8339  10566   
readme = "README.md"
 8340  10567   
[package.metadata.smithy]
 8341  10568   
codegen-version = "ci"
 8342  10569   
[package.metadata.docs.rs]
 8343  10570   
all-features = true
 8344  10571   
targets = ["x86_64-unknown-linux-gnu"]
 8345  10572   
[dependencies.aws-credential-types]
 8346  10573   
path = "../aws-credential-types"
 8347  10574   
version = "1.2.4"
 8348  10575   
 8349  10576   
[dependencies.aws-runtime]
 8350  10577   
path = "../aws-runtime"
 8351  10578   
version = "1.5.9"
 8352  10579   
 8353  10580   
[dependencies.aws-smithy-async]
 8354  10581   
path = "../aws-smithy-async"
 8355  10582   
version = "1.2.5"
 8356  10583   
 8357  10584   
[dependencies.aws-smithy-http]
 8358  10585   
path = "../aws-smithy-http"
 8359         -
version = "0.62.2"
       10586  +
version = "0.62.3"
 8360  10587   
 8361  10588   
[dependencies.aws-smithy-json]
 8362  10589   
path = "../aws-smithy-json"
 8363  10590   
version = "0.61.4"
 8364  10591   
 8365  10592   
[dependencies.aws-smithy-runtime]
 8366  10593   
path = "../aws-smithy-runtime"
 8367  10594   
features = ["client"]
 8368  10595   
version = "1.8.5"
 8369  10596   
 8370  10597   
[dependencies.aws-smithy-runtime-api]
 8371  10598   
path = "../aws-smithy-runtime-api"
 8372  10599   
features = ["client", "http-02x"]
 8373  10600   
version = "1.8.5"
 8374  10601   
 8375  10602   
[dependencies.aws-smithy-types]
 8376  10603   
path = "../aws-smithy-types"
 8377  10604   
version = "1.3.2"
 8378  10605   
 8379  10606   
[dependencies.aws-types]
 8380  10607   
path = "../aws-types"
 8381  10608   
version = "1.3.8"
 8382  10609   
 8383  10610   
[dependencies.bytes]
 8384  10611   
version = "1.4.0"
 8385  10612   
 8386  10613   
[dependencies.fastrand]
 8387  10614   
version = "2.0.0"
 8388  10615   
 8389  10616   
[dependencies.http]
 8390  10617   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 8391  10618   
index 15b1d77..16d7d89 100644
 8392         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
       10619  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 8393  10620   
@@ -1,65 +1,65 @@
 8394  10621   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8395  10622   
[package]
 8396  10623   
name = "aws-sdk-glacier"
 8397  10624   
version = "0.0.0-local"
 8398  10625   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8399  10626   
description = "AWS SDK for Amazon Glacier"
 8400  10627   
edition = "2021"
 8401  10628   
license = "Apache-2.0"
 8402  10629   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8403  10630   
rust-version = "1.86.0"
 8404  10631   
readme = "README.md"
 8405  10632   
[package.metadata.smithy]
 8406  10633   
codegen-version = "ci"
 8407  10634   
[package.metadata.docs.rs]
 8408  10635   
all-features = true
 8409  10636   
targets = ["x86_64-unknown-linux-gnu"]
 8410  10637   
[dependencies.aws-credential-types]
 8411  10638   
path = "../aws-credential-types"
 8412  10639   
version = "1.2.4"
 8413  10640   
 8414  10641   
[dependencies.aws-runtime]
 8415  10642   
path = "../aws-runtime"
 8416  10643   
version = "1.5.9"
 8417  10644   
 8418  10645   
[dependencies.aws-sigv4]
 8419  10646   
path = "../aws-sigv4"
 8420         -
version = "1.3.3"
       10647  +
version = "1.3.4"
 8421  10648   
 8422  10649   
[dependencies.aws-smithy-async]
 8423  10650   
path = "../aws-smithy-async"
 8424  10651   
version = "1.2.5"
 8425  10652   
 8426  10653   
[dependencies.aws-smithy-http]
 8427  10654   
path = "../aws-smithy-http"
 8428         -
version = "0.62.2"
       10655  +
version = "0.62.3"
 8429  10656   
 8430  10657   
[dependencies.aws-smithy-json]
 8431  10658   
path = "../aws-smithy-json"
 8432  10659   
version = "0.61.4"
 8433  10660   
 8434  10661   
[dependencies.aws-smithy-runtime]
 8435  10662   
path = "../aws-smithy-runtime"
 8436  10663   
features = ["client"]
 8437  10664   
version = "1.8.5"
 8438  10665   
 8439  10666   
[dependencies.aws-smithy-runtime-api]
 8440  10667   
path = "../aws-smithy-runtime-api"
 8441  10668   
features = ["client", "http-02x"]
 8442  10669   
version = "1.8.5"
 8443  10670   
 8444  10671   
[dependencies.aws-smithy-types]
 8445  10672   
path = "../aws-smithy-types"
 8446  10673   
version = "1.3.2"
 8447  10674   
 8448  10675   
[dependencies.aws-types]
 8449  10676   
path = "../aws-types"
 8450  10677   
version = "1.3.8"
 8451  10678   
 8452  10679   
[dependencies.bytes]
 8453  10680   
version = "1.4.0"
 8454  10681   
 8455  10682   
[dependencies.fastrand]
 8456  10683   
version = "2.0.0"
 8457  10684   
 8458  10685   
[dependencies.hex]
 8459  10686   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 8460  10687   
index d718a3a..65e6f24 100644
 8461         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
       10688  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 8462  10689   
@@ -1,61 +1,61 @@
 8463  10690   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8464  10691   
[package]
 8465  10692   
name = "aws-sdk-iam"
 8466  10693   
version = "0.0.0-local"
 8467  10694   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8468  10695   
description = "AWS SDK for AWS Identity and Access Management"
 8469  10696   
edition = "2021"
 8470  10697   
license = "Apache-2.0"
 8471  10698   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8472  10699   
rust-version = "1.86.0"
 8473  10700   
readme = "README.md"
 8474  10701   
[package.metadata.smithy]
 8475  10702   
codegen-version = "ci"
 8476  10703   
[package.metadata.docs.rs]
 8477  10704   
all-features = true
 8478  10705   
targets = ["x86_64-unknown-linux-gnu"]
 8479  10706   
[dependencies.aws-credential-types]
 8480  10707   
path = "../aws-credential-types"
 8481  10708   
version = "1.2.4"
 8482  10709   
 8483  10710   
[dependencies.aws-runtime]
 8484  10711   
path = "../aws-runtime"
 8485  10712   
version = "1.5.9"
 8486  10713   
 8487  10714   
[dependencies.aws-smithy-async]
 8488  10715   
path = "../aws-smithy-async"
 8489  10716   
version = "1.2.5"
 8490  10717   
 8491  10718   
[dependencies.aws-smithy-http]
 8492  10719   
path = "../aws-smithy-http"
 8493         -
version = "0.62.2"
       10720  +
version = "0.62.3"
 8494  10721   
 8495  10722   
[dependencies.aws-smithy-json]
 8496  10723   
path = "../aws-smithy-json"
 8497  10724   
version = "0.61.4"
 8498  10725   
 8499  10726   
[dependencies.aws-smithy-query]
 8500  10727   
path = "../aws-smithy-query"
 8501  10728   
version = "0.60.7"
 8502  10729   
 8503  10730   
[dependencies.aws-smithy-runtime]
 8504  10731   
path = "../aws-smithy-runtime"
 8505  10732   
features = ["client"]
 8506  10733   
version = "1.8.5"
 8507  10734   
 8508  10735   
[dependencies.aws-smithy-runtime-api]
 8509  10736   
path = "../aws-smithy-runtime-api"
 8510  10737   
features = ["client", "http-02x"]
 8511  10738   
version = "1.8.5"
 8512  10739   
 8513  10740   
[dependencies.aws-smithy-types]
 8514  10741   
path = "../aws-smithy-types"
 8515  10742   
version = "1.3.2"
 8516  10743   
 8517  10744   
[dependencies.aws-smithy-xml]
 8518  10745   
path = "../aws-smithy-xml"
 8519  10746   
version = "0.60.10"
 8520  10747   
 8521  10748   
[dependencies.aws-types]
 8522  10749   
path = "../aws-types"
 8523  10750   
version = "1.3.8"
 8524  10751   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 8525  10752   
index 0ed4302..3d828a5 100644
 8526         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
       10753  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 8527  10754   
@@ -1,61 +1,61 @@
 8528  10755   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8529  10756   
[package]
 8530  10757   
name = "aws-sdk-kms"
 8531  10758   
version = "0.0.0-local"
 8532  10759   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8533  10760   
description = "AWS SDK for AWS Key Management Service"
 8534  10761   
edition = "2021"
 8535  10762   
license = "Apache-2.0"
 8536  10763   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8537  10764   
rust-version = "1.86.0"
 8538  10765   
readme = "README.md"
 8539  10766   
[package.metadata.smithy]
 8540  10767   
codegen-version = "ci"
 8541  10768   
[package.metadata.docs.rs]
 8542  10769   
all-features = true
 8543  10770   
targets = ["x86_64-unknown-linux-gnu"]
 8544  10771   
[dependencies.aws-credential-types]
 8545  10772   
path = "../aws-credential-types"
 8546  10773   
version = "1.2.4"
 8547  10774   
 8548  10775   
[dependencies.aws-runtime]
 8549  10776   
path = "../aws-runtime"
 8550  10777   
version = "1.5.9"
 8551  10778   
 8552  10779   
[dependencies.aws-smithy-async]
 8553  10780   
path = "../aws-smithy-async"
 8554  10781   
version = "1.2.5"
 8555  10782   
 8556  10783   
[dependencies.aws-smithy-http]
 8557  10784   
path = "../aws-smithy-http"
 8558         -
version = "0.62.2"
       10785  +
version = "0.62.3"
 8559  10786   
 8560  10787   
[dependencies.aws-smithy-json]
 8561  10788   
path = "../aws-smithy-json"
 8562  10789   
version = "0.61.4"
 8563  10790   
 8564  10791   
[dependencies.aws-smithy-runtime]
 8565  10792   
path = "../aws-smithy-runtime"
 8566  10793   
features = ["client"]
 8567  10794   
version = "1.8.5"
 8568  10795   
 8569  10796   
[dependencies.aws-smithy-runtime-api]
 8570  10797   
path = "../aws-smithy-runtime-api"
 8571  10798   
features = ["client", "http-02x"]
 8572  10799   
version = "1.8.5"
 8573  10800   
 8574  10801   
[dependencies.aws-smithy-types]
 8575  10802   
path = "../aws-smithy-types"
 8576  10803   
version = "1.3.2"
 8577  10804   
 8578  10805   
[dependencies.aws-types]
 8579  10806   
path = "../aws-types"
 8580  10807   
version = "1.3.8"
 8581  10808   
 8582  10809   
[dependencies.bytes]
 8583  10810   
version = "1.4.0"
 8584  10811   
 8585  10812   
[dependencies.fastrand]
 8586  10813   
version = "2.0.0"
 8587  10814   
 8588  10815   
[dependencies.http]
 8589  10816   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 8590  10817   
index 6518dfc..6b94752 100644
 8591         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
       10818  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 8592  10819   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 8593  10820   
edition = "2021"
 8594  10821   
license = "Apache-2.0"
 8595  10822   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8596  10823   
rust-version = "1.86.0"
 8597  10824   
readme = "README.md"
 8598  10825   
[package.metadata.smithy]
 8599  10826   
codegen-version = "ci"
 8600  10827   
[package.metadata.docs.rs]
 8601  10828   
all-features = true
 8602  10829   
targets = ["x86_64-unknown-linux-gnu"]
 8603  10830   
[dependencies.aws-credential-types]
 8604  10831   
path = "../aws-credential-types"
 8605  10832   
version = "1.2.4"
 8606  10833   
 8607  10834   
[dependencies.aws-runtime]
 8608  10835   
path = "../aws-runtime"
 8609  10836   
features = ["event-stream"]
 8610  10837   
version = "1.5.9"
 8611  10838   
 8612  10839   
[dependencies.aws-smithy-async]
 8613  10840   
path = "../aws-smithy-async"
 8614  10841   
version = "1.2.5"
 8615  10842   
 8616  10843   
[dependencies.aws-smithy-eventstream]
 8617  10844   
path = "../aws-smithy-eventstream"
 8618  10845   
version = "0.60.10"
 8619  10846   
 8620  10847   
[dependencies.aws-smithy-http]
 8621  10848   
path = "../aws-smithy-http"
 8622  10849   
features = ["event-stream"]
 8623         -
version = "0.62.2"
       10850  +
version = "0.62.3"
 8624  10851   
 8625  10852   
[dependencies.aws-smithy-json]
 8626  10853   
path = "../aws-smithy-json"
 8627  10854   
version = "0.61.4"
 8628  10855   
 8629  10856   
[dependencies.aws-smithy-runtime]
 8630  10857   
path = "../aws-smithy-runtime"
 8631  10858   
features = ["client"]
 8632  10859   
version = "1.8.5"
 8633  10860   
 8634  10861   
[dependencies.aws-smithy-runtime-api]
 8635  10862   
path = "../aws-smithy-runtime-api"
 8636  10863   
features = ["client", "http-02x"]
 8637  10864   
version = "1.8.5"
 8638  10865   
 8639  10866   
[dependencies.aws-smithy-types]
 8640  10867   
path = "../aws-smithy-types"
 8641  10868   
version = "1.3.2"
 8642  10869   
 8643  10870   
[dependencies.aws-types]
 8644  10871   
path = "../aws-types"
 8645  10872   
version = "1.3.8"
 8646  10873   
 8647  10874   
[dependencies.bytes]
 8648  10875   
version = "1.4.0"
 8649  10876   
 8650  10877   
[dependencies.fastrand]
 8651  10878   
version = "2.0.0"
 8652  10879   
 8653  10880   
[dependencies.http]
 8654  10881   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 8655  10882   
index dabb0e0..34cbc15 100644
 8656         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
       10883  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 8657  10884   
@@ -1,65 +1,65 @@
 8658  10885   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8659  10886   
[package]
 8660  10887   
name = "aws-sdk-polly"
 8661  10888   
version = "0.0.0-local"
 8662  10889   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8663  10890   
description = "AWS SDK for Amazon Polly"
 8664  10891   
edition = "2021"
 8665  10892   
license = "Apache-2.0"
 8666  10893   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8667  10894   
rust-version = "1.86.0"
 8668  10895   
readme = "README.md"
 8669  10896   
[package.metadata.smithy]
 8670  10897   
codegen-version = "ci"
 8671  10898   
[package.metadata.docs.rs]
 8672  10899   
all-features = true
 8673  10900   
targets = ["x86_64-unknown-linux-gnu"]
 8674  10901   
[dependencies.aws-credential-types]
 8675  10902   
path = "../aws-credential-types"
 8676  10903   
version = "1.2.4"
 8677  10904   
 8678  10905   
[dependencies.aws-runtime]
 8679  10906   
path = "../aws-runtime"
 8680  10907   
version = "1.5.9"
 8681  10908   
 8682  10909   
[dependencies.aws-sigv4]
 8683  10910   
path = "../aws-sigv4"
 8684         -
version = "1.3.3"
       10911  +
version = "1.3.4"
 8685  10912   
 8686  10913   
[dependencies.aws-smithy-async]
 8687  10914   
path = "../aws-smithy-async"
 8688  10915   
version = "1.2.5"
 8689  10916   
 8690  10917   
[dependencies.aws-smithy-http]
 8691  10918   
path = "../aws-smithy-http"
 8692         -
version = "0.62.2"
       10919  +
version = "0.62.3"
 8693  10920   
 8694  10921   
[dependencies.aws-smithy-json]
 8695  10922   
path = "../aws-smithy-json"
 8696  10923   
version = "0.61.4"
 8697  10924   
 8698  10925   
[dependencies.aws-smithy-runtime]
 8699  10926   
path = "../aws-smithy-runtime"
 8700  10927   
features = ["client"]
 8701  10928   
version = "1.8.5"
 8702  10929   
 8703  10930   
[dependencies.aws-smithy-runtime-api]
 8704  10931   
path = "../aws-smithy-runtime-api"
 8705  10932   
features = ["client", "http-02x"]
 8706  10933   
version = "1.8.5"
 8707  10934   
 8708  10935   
[dependencies.aws-smithy-types]
 8709  10936   
path = "../aws-smithy-types"
 8710  10937   
version = "1.3.2"
 8711  10938   
 8712  10939   
[dependencies.aws-types]
 8713  10940   
path = "../aws-types"
 8714  10941   
version = "1.3.8"
 8715  10942   
 8716  10943   
[dependencies.bytes]
 8717  10944   
version = "1.4.0"
 8718  10945   
 8719  10946   
[dependencies.fastrand]
 8720  10947   
version = "2.0.0"
 8721  10948   
 8722  10949   
[dependencies.http]
 8723  10950   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 8724  10951   
index a884716..f3d8713 100644
 8725         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
       10952  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 8726  10953   
@@ -1,61 +1,61 @@
 8727  10954   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8728  10955   
[package]
 8729  10956   
name = "aws-sdk-qldbsession"
 8730  10957   
version = "0.0.0-local"
 8731  10958   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8732  10959   
description = "AWS SDK for Amazon QLDB Session"
 8733  10960   
edition = "2021"
 8734  10961   
license = "Apache-2.0"
 8735  10962   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8736  10963   
rust-version = "1.86.0"
 8737  10964   
readme = "README.md"
 8738  10965   
[package.metadata.smithy]
 8739  10966   
codegen-version = "ci"
 8740  10967   
[package.metadata.docs.rs]
 8741  10968   
all-features = true
 8742  10969   
targets = ["x86_64-unknown-linux-gnu"]
 8743  10970   
[dependencies.aws-credential-types]
 8744  10971   
path = "../aws-credential-types"
 8745  10972   
version = "1.2.4"
 8746  10973   
 8747  10974   
[dependencies.aws-runtime]
 8748  10975   
path = "../aws-runtime"
 8749  10976   
version = "1.5.9"
 8750  10977   
 8751  10978   
[dependencies.aws-smithy-async]
 8752  10979   
path = "../aws-smithy-async"
 8753  10980   
version = "1.2.5"
 8754  10981   
 8755  10982   
[dependencies.aws-smithy-http]
 8756  10983   
path = "../aws-smithy-http"
 8757         -
version = "0.62.2"
       10984  +
version = "0.62.3"
 8758  10985   
 8759  10986   
[dependencies.aws-smithy-json]
 8760  10987   
path = "../aws-smithy-json"
 8761  10988   
version = "0.61.4"
 8762  10989   
 8763  10990   
[dependencies.aws-smithy-runtime]
 8764  10991   
path = "../aws-smithy-runtime"
 8765  10992   
features = ["client"]
 8766  10993   
version = "1.8.5"
 8767  10994   
 8768  10995   
[dependencies.aws-smithy-runtime-api]
 8769  10996   
path = "../aws-smithy-runtime-api"
 8770  10997   
features = ["client", "http-02x"]
 8771  10998   
version = "1.8.5"
 8772  10999   
 8773  11000   
[dependencies.aws-smithy-types]
 8774  11001   
path = "../aws-smithy-types"
 8775  11002   
version = "1.3.2"
 8776  11003   
 8777  11004   
[dependencies.aws-types]
 8778  11005   
path = "../aws-types"
 8779  11006   
version = "1.3.8"
 8780  11007   
 8781  11008   
[dependencies.bytes]
 8782  11009   
version = "1.4.0"
 8783  11010   
 8784  11011   
[dependencies.fastrand]
 8785  11012   
version = "2.0.0"
 8786  11013   
 8787  11014   
[dependencies.http]
 8788  11015   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 8789  11016   
index 32a7dc9..a2c752d 100644
 8790         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
       11017  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 8791  11018   
@@ -1,61 +1,61 @@
 8792  11019   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8793  11020   
[package]
 8794  11021   
name = "aws-sdk-route53"
 8795  11022   
version = "0.0.0-local"
 8796  11023   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8797  11024   
description = "AWS SDK for Amazon Route 53"
 8798  11025   
edition = "2021"
 8799  11026   
license = "Apache-2.0"
 8800  11027   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8801  11028   
rust-version = "1.86.0"
 8802  11029   
readme = "README.md"
 8803  11030   
[package.metadata.smithy]
 8804  11031   
codegen-version = "ci"
 8805  11032   
[package.metadata.docs.rs]
 8806  11033   
all-features = true
 8807  11034   
targets = ["x86_64-unknown-linux-gnu"]
 8808  11035   
[dependencies.aws-credential-types]
 8809  11036   
path = "../aws-credential-types"
 8810  11037   
version = "1.2.4"
 8811  11038   
 8812  11039   
[dependencies.aws-runtime]
 8813  11040   
path = "../aws-runtime"
 8814  11041   
version = "1.5.9"
 8815  11042   
 8816  11043   
[dependencies.aws-smithy-async]
 8817  11044   
path = "../aws-smithy-async"
 8818  11045   
version = "1.2.5"
 8819  11046   
 8820  11047   
[dependencies.aws-smithy-http]
 8821  11048   
path = "../aws-smithy-http"
 8822         -
version = "0.62.2"
       11049  +
version = "0.62.3"
 8823  11050   
 8824  11051   
[dependencies.aws-smithy-json]
 8825  11052   
path = "../aws-smithy-json"
 8826  11053   
version = "0.61.4"
 8827  11054   
 8828  11055   
[dependencies.aws-smithy-runtime]
 8829  11056   
path = "../aws-smithy-runtime"
 8830  11057   
features = ["client"]
 8831  11058   
version = "1.8.5"
 8832  11059   
 8833  11060   
[dependencies.aws-smithy-runtime-api]
 8834  11061   
path = "../aws-smithy-runtime-api"
 8835  11062   
features = ["client", "http-02x"]
 8836  11063   
version = "1.8.5"
 8837  11064   
 8838  11065   
[dependencies.aws-smithy-types]
 8839  11066   
path = "../aws-smithy-types"
 8840  11067   
version = "1.3.2"
 8841  11068   
 8842  11069   
[dependencies.aws-smithy-xml]
 8843  11070   
path = "../aws-smithy-xml"
 8844  11071   
version = "0.60.10"
 8845  11072   
 8846  11073   
[dependencies.aws-types]
 8847  11074   
path = "../aws-types"
 8848  11075   
version = "1.3.8"
 8849  11076   
 8850  11077   
[dependencies.fastrand]
 8851  11078   
version = "2.0.0"
 8852  11079   
 8853  11080   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 8854  11081   
index f65e261..2f6bec0 100644
 8855         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
       11082  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 8856  11083   
@@ -1,75 +1,75 @@
 8857  11084   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8858  11085   
[package]
 8859  11086   
name = "aws-sdk-s3"
 8860  11087   
version = "0.0.0-local"
 8861  11088   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8862  11089   
description = "AWS SDK for Amazon Simple Storage Service"
 8863  11090   
edition = "2021"
 8864  11091   
license = "Apache-2.0"
 8865  11092   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8866  11093   
rust-version = "1.86.0"
 8867  11094   
readme = "README.md"
 8868  11095   
[package.metadata.smithy]
 8869  11096   
codegen-version = "ci"
 8870  11097   
[package.metadata.docs.rs]
 8871  11098   
all-features = true
 8872  11099   
targets = ["x86_64-unknown-linux-gnu"]
 8873  11100   
[dependencies.aws-credential-types]
 8874  11101   
path = "../aws-credential-types"
 8875  11102   
version = "1.2.4"
 8876  11103   
 8877  11104   
[dependencies.aws-runtime]
 8878  11105   
path = "../aws-runtime"
 8879  11106   
features = ["event-stream", "http-02x"]
 8880  11107   
version = "1.5.9"
 8881  11108   
 8882  11109   
[dependencies.aws-sigv4]
 8883  11110   
path = "../aws-sigv4"
 8884         -
version = "1.3.3"
       11111  +
version = "1.3.4"
 8885  11112   
 8886  11113   
[dependencies.aws-smithy-async]
 8887  11114   
path = "../aws-smithy-async"
 8888  11115   
version = "1.2.5"
 8889  11116   
 8890  11117   
[dependencies.aws-smithy-checksums]
 8891  11118   
path = "../aws-smithy-checksums"
 8892  11119   
version = "0.63.5"
 8893  11120   
 8894  11121   
[dependencies.aws-smithy-eventstream]
 8895  11122   
path = "../aws-smithy-eventstream"
 8896  11123   
version = "0.60.10"
 8897  11124   
 8898  11125   
[dependencies.aws-smithy-http]
 8899  11126   
path = "../aws-smithy-http"
 8900  11127   
features = ["event-stream"]
 8901         -
version = "0.62.2"
       11128  +
version = "0.62.3"
 8902  11129   
 8903  11130   
[dependencies.aws-smithy-json]
 8904  11131   
path = "../aws-smithy-json"
 8905  11132   
version = "0.61.4"
 8906  11133   
 8907  11134   
[dependencies.aws-smithy-runtime]
 8908  11135   
path = "../aws-smithy-runtime"
 8909  11136   
features = ["client"]
 8910  11137   
version = "1.8.5"
 8911  11138   
 8912  11139   
[dependencies.aws-smithy-runtime-api]
 8913  11140   
path = "../aws-smithy-runtime-api"
 8914  11141   
features = ["client", "http-02x"]
 8915  11142   
version = "1.8.5"
 8916  11143   
 8917  11144   
[dependencies.aws-smithy-types]
 8918  11145   
path = "../aws-smithy-types"
 8919  11146   
version = "1.3.2"
 8920  11147   
 8921  11148   
[dependencies.aws-smithy-xml]
 8922  11149   
path = "../aws-smithy-xml"
 8923  11150   
version = "0.60.10"
 8924  11151   
 8925  11152   
[dependencies.aws-types]
 8926  11153   
path = "../aws-types"
 8927  11154   
version = "1.3.8"
 8928  11155   
 8929  11156   
[dependencies.bytes]
 8930  11157   
version = "1.4.0"
 8931  11158   
 8932  11159   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 8933  11160   
index b4d1cdd..861c0cc 100644
 8934         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
       11161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 8935  11162   
@@ -1,61 +1,61 @@
 8936  11163   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8937  11164   
[package]
 8938  11165   
name = "aws-sdk-s3control"
 8939  11166   
version = "0.0.0-local"
 8940  11167   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8941  11168   
description = "AWS SDK for AWS S3 Control"
 8942  11169   
edition = "2021"
 8943  11170   
license = "Apache-2.0"
 8944  11171   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8945  11172   
rust-version = "1.86.0"
 8946  11173   
readme = "README.md"
 8947  11174   
[package.metadata.smithy]
 8948  11175   
codegen-version = "ci"
 8949  11176   
[package.metadata.docs.rs]
 8950  11177   
all-features = true
 8951  11178   
targets = ["x86_64-unknown-linux-gnu"]
 8952  11179   
[dependencies.aws-credential-types]
 8953  11180   
path = "../aws-credential-types"
 8954  11181   
version = "1.2.4"
 8955  11182   
 8956  11183   
[dependencies.aws-runtime]
 8957  11184   
path = "../aws-runtime"
 8958  11185   
version = "1.5.9"
 8959  11186   
 8960  11187   
[dependencies.aws-smithy-async]
 8961  11188   
path = "../aws-smithy-async"
 8962  11189   
version = "1.2.5"
 8963  11190   
 8964  11191   
[dependencies.aws-smithy-http]
 8965  11192   
path = "../aws-smithy-http"
 8966         -
version = "0.62.2"
       11193  +
version = "0.62.3"
 8967  11194   
 8968  11195   
[dependencies.aws-smithy-json]
 8969  11196   
path = "../aws-smithy-json"
 8970  11197   
version = "0.61.4"
 8971  11198   
 8972  11199   
[dependencies.aws-smithy-runtime]
 8973  11200   
path = "../aws-smithy-runtime"
 8974  11201   
features = ["client"]
 8975  11202   
version = "1.8.5"
 8976  11203   
 8977  11204   
[dependencies.aws-smithy-runtime-api]
 8978  11205   
path = "../aws-smithy-runtime-api"
 8979  11206   
features = ["client", "http-02x"]
 8980  11207   
version = "1.8.5"
 8981  11208   
 8982  11209   
[dependencies.aws-smithy-types]
 8983  11210   
path = "../aws-smithy-types"
 8984  11211   
version = "1.3.2"
 8985  11212   
 8986  11213   
[dependencies.aws-smithy-xml]
 8987  11214   
path = "../aws-smithy-xml"
 8988  11215   
version = "0.60.10"
 8989  11216   
 8990  11217   
[dependencies.aws-types]
 8991  11218   
path = "../aws-types"
 8992  11219   
version = "1.3.8"
 8993  11220   
 8994  11221   
[dependencies.fastrand]
 8995  11222   
version = "2.0.0"
 8996  11223   
 8997  11224   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 8998  11225   
index 2cde182..fc367f4 100644
 8999         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
       11226  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 9000  11227   
@@ -1,61 +1,61 @@
 9001  11228   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9002  11229   
[package]
 9003  11230   
name = "aws-sdk-sso"
 9004  11231   
version = "0.0.0-local"
 9005  11232   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9006  11233   
description = "AWS SDK for AWS Single Sign-On"
 9007  11234   
edition = "2021"
 9008  11235   
license = "Apache-2.0"
 9009  11236   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9010  11237   
rust-version = "1.86.0"
 9011  11238   
readme = "README.md"
 9012  11239   
[package.metadata.smithy]
 9013  11240   
codegen-version = "ci"
 9014  11241   
[package.metadata.docs.rs]
 9015  11242   
all-features = true
 9016  11243   
targets = ["x86_64-unknown-linux-gnu"]
 9017  11244   
[dependencies.aws-credential-types]
 9018  11245   
path = "../aws-credential-types"
 9019  11246   
version = "1.2.4"
 9020  11247   
 9021  11248   
[dependencies.aws-runtime]
 9022  11249   
path = "../aws-runtime"
 9023  11250   
version = "1.5.9"
 9024  11251   
 9025  11252   
[dependencies.aws-smithy-async]
 9026  11253   
path = "../aws-smithy-async"
 9027  11254   
version = "1.2.5"
 9028  11255   
 9029  11256   
[dependencies.aws-smithy-http]
 9030  11257   
path = "../aws-smithy-http"
 9031         -
version = "0.62.2"
       11258  +
version = "0.62.3"
 9032  11259   
 9033  11260   
[dependencies.aws-smithy-json]
 9034  11261   
path = "../aws-smithy-json"
 9035  11262   
version = "0.61.4"
 9036  11263   
 9037  11264   
[dependencies.aws-smithy-runtime]
 9038  11265   
path = "../aws-smithy-runtime"
 9039  11266   
features = ["client"]
 9040  11267   
version = "1.8.5"
 9041  11268   
 9042  11269   
[dependencies.aws-smithy-runtime-api]
 9043  11270   
path = "../aws-smithy-runtime-api"
 9044  11271   
features = ["client", "http-02x"]
 9045  11272   
version = "1.8.5"
 9046  11273   
 9047  11274   
[dependencies.aws-smithy-types]
 9048  11275   
path = "../aws-smithy-types"
 9049  11276   
version = "1.3.2"
 9050  11277   
 9051  11278   
[dependencies.aws-types]
 9052  11279   
path = "../aws-types"
 9053  11280   
version = "1.3.8"
 9054  11281   
 9055  11282   
[dependencies.bytes]
 9056  11283   
version = "1.4.0"
 9057  11284   
 9058  11285   
[dependencies.fastrand]
 9059  11286   
version = "2.0.0"
 9060  11287   
 9061  11288   
[dependencies.http]
 9062  11289   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 9063  11290   
index 7a34c16..588d0bd 100644
 9064         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
       11291  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 9065  11292   
@@ -1,61 +1,61 @@
 9066  11293   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9067  11294   
[package]
 9068  11295   
name = "aws-sdk-ssooidc"
 9069  11296   
version = "0.0.0-local"
 9070  11297   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9071  11298   
description = "AWS SDK for AWS SSO OIDC"
 9072  11299   
edition = "2021"
 9073  11300   
license = "Apache-2.0"
 9074  11301   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9075  11302   
rust-version = "1.86.0"
 9076  11303   
readme = "README.md"
 9077  11304   
[package.metadata.smithy]
 9078  11305   
codegen-version = "ci"
 9079  11306   
[package.metadata.docs.rs]
 9080  11307   
all-features = true
 9081  11308   
targets = ["x86_64-unknown-linux-gnu"]
 9082  11309   
[dependencies.aws-credential-types]
 9083  11310   
path = "../aws-credential-types"
 9084  11311   
version = "1.2.4"
 9085  11312   
 9086  11313   
[dependencies.aws-runtime]
 9087  11314   
path = "../aws-runtime"
 9088  11315   
version = "1.5.9"
 9089  11316   
 9090  11317   
[dependencies.aws-smithy-async]
 9091  11318   
path = "../aws-smithy-async"
 9092  11319   
version = "1.2.5"
 9093  11320   
 9094  11321   
[dependencies.aws-smithy-http]
 9095  11322   
path = "../aws-smithy-http"
 9096         -
version = "0.62.2"
       11323  +
version = "0.62.3"
 9097  11324   
 9098  11325   
[dependencies.aws-smithy-json]
 9099  11326   
path = "../aws-smithy-json"
 9100  11327   
version = "0.61.4"
 9101  11328   
 9102  11329   
[dependencies.aws-smithy-runtime]
 9103  11330   
path = "../aws-smithy-runtime"
 9104  11331   
features = ["client"]
 9105  11332   
version = "1.8.5"
 9106  11333   
 9107  11334   
[dependencies.aws-smithy-runtime-api]
 9108  11335   
path = "../aws-smithy-runtime-api"
 9109  11336   
features = ["client", "http-02x"]
 9110  11337   
version = "1.8.5"
 9111  11338   
 9112  11339   
[dependencies.aws-smithy-types]
 9113  11340   
path = "../aws-smithy-types"
 9114  11341   
version = "1.3.2"
 9115  11342   
 9116  11343   
[dependencies.aws-types]
 9117  11344   
path = "../aws-types"
 9118  11345   
version = "1.3.8"
 9119  11346   
 9120  11347   
[dependencies.bytes]
 9121  11348   
version = "1.4.0"
 9122  11349   
 9123  11350   
[dependencies.fastrand]
 9124  11351   
version = "2.0.0"
 9125  11352   
 9126  11353   
[dependencies.http]
 9127  11354   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 9128  11355   
index 895dfb3..f2ce34e 100644
 9129         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
       11356  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 9130  11357   
@@ -1,61 +1,61 @@
 9131  11358   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9132  11359   
[package]
 9133  11360   
name = "aws-sdk-sts"
 9134  11361   
version = "0.0.0-local"
 9135  11362   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9136  11363   
description = "AWS SDK for AWS Security Token Service"
 9137  11364   
edition = "2021"
 9138  11365   
license = "Apache-2.0"
 9139  11366   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9140  11367   
rust-version = "1.86.0"
 9141  11368   
readme = "README.md"
 9142  11369   
[package.metadata.smithy]
 9143  11370   
codegen-version = "ci"
 9144  11371   
[package.metadata.docs.rs]
 9145  11372   
all-features = true
 9146  11373   
targets = ["x86_64-unknown-linux-gnu"]
 9147  11374   
[dependencies.aws-credential-types]
 9148  11375   
path = "../aws-credential-types"
 9149  11376   
version = "1.2.4"
 9150  11377   
 9151  11378   
[dependencies.aws-runtime]
 9152  11379   
path = "../aws-runtime"
 9153  11380   
version = "1.5.9"
 9154  11381   
 9155  11382   
[dependencies.aws-smithy-async]
 9156  11383   
path = "../aws-smithy-async"
 9157  11384   
version = "1.2.5"
 9158  11385   
 9159  11386   
[dependencies.aws-smithy-http]
 9160  11387   
path = "../aws-smithy-http"
 9161         -
version = "0.62.2"
       11388  +
version = "0.62.3"
 9162  11389   
 9163  11390   
[dependencies.aws-smithy-json]
 9164  11391   
path = "../aws-smithy-json"
 9165  11392   
version = "0.61.4"
 9166  11393   
 9167  11394   
[dependencies.aws-smithy-query]
 9168  11395   
path = "../aws-smithy-query"
 9169  11396   
version = "0.60.7"
 9170  11397   
 9171  11398   
[dependencies.aws-smithy-runtime]
 9172  11399   
path = "../aws-smithy-runtime"
 9173  11400   
features = ["client"]
 9174  11401   
version = "1.8.5"
 9175  11402   
 9176  11403   
[dependencies.aws-smithy-runtime-api]
 9177  11404   
path = "../aws-smithy-runtime-api"
 9178  11405   
features = ["client", "http-02x"]
 9179  11406   
version = "1.8.5"
 9180  11407   
 9181  11408   
[dependencies.aws-smithy-types]
 9182  11409   
path = "../aws-smithy-types"
 9183  11410   
version = "1.3.2"
 9184  11411   
 9185  11412   
[dependencies.aws-smithy-xml]
 9186  11413   
path = "../aws-smithy-xml"
 9187  11414   
version = "0.60.10"
 9188  11415   
 9189  11416   
[dependencies.aws-types]
 9190  11417   
path = "../aws-types"
 9191  11418   
version = "1.3.8"
 9192  11419   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 9193  11420   
index d556561..91178b6 100644
 9194         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
       11421  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 9195  11422   
@@ -1,61 +1,61 @@
 9196  11423   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9197  11424   
[package]
 9198  11425   
name = "aws-sdk-timestreamquery"
 9199  11426   
version = "0.0.0-local"
 9200  11427   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9201  11428   
description = "AWS SDK for Amazon Timestream Query"
 9202  11429   
edition = "2021"
 9203  11430   
license = "Apache-2.0"
 9204  11431   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9205  11432   
rust-version = "1.86.0"
 9206  11433   
readme = "README.md"
 9207  11434   
[package.metadata.smithy]
 9208  11435   
codegen-version = "ci"
 9209  11436   
[package.metadata.docs.rs]
 9210  11437   
all-features = true
 9211  11438   
targets = ["x86_64-unknown-linux-gnu"]
 9212  11439   
[dependencies.aws-credential-types]
 9213  11440   
path = "../aws-credential-types"
 9214  11441   
version = "1.2.4"
 9215  11442   
 9216  11443   
[dependencies.aws-runtime]
 9217  11444   
path = "../aws-runtime"
 9218  11445   
version = "1.5.9"
 9219  11446   
 9220  11447   
[dependencies.aws-smithy-async]
 9221  11448   
path = "../aws-smithy-async"
 9222  11449   
version = "1.2.5"
 9223  11450   
 9224  11451   
[dependencies.aws-smithy-http]
 9225  11452   
path = "../aws-smithy-http"
 9226         -
version = "0.62.2"
       11453  +
version = "0.62.3"
 9227  11454   
 9228  11455   
[dependencies.aws-smithy-json]
 9229  11456   
path = "../aws-smithy-json"
 9230  11457   
version = "0.61.4"
 9231  11458   
 9232  11459   
[dependencies.aws-smithy-runtime]
 9233  11460   
path = "../aws-smithy-runtime"
 9234  11461   
features = ["client"]
 9235  11462   
version = "1.8.5"
 9236  11463   
 9237  11464   
[dependencies.aws-smithy-runtime-api]
 9238  11465   
path = "../aws-smithy-runtime-api"
 9239  11466   
features = ["client", "http-02x"]
 9240  11467   
version = "1.8.5"
 9241  11468   
 9242  11469   
[dependencies.aws-smithy-types]
 9243  11470   
path = "../aws-smithy-types"
 9244  11471   
version = "1.3.2"
 9245  11472   
 9246  11473   
[dependencies.aws-types]
 9247  11474   
path = "../aws-types"
 9248  11475   
version = "1.3.8"
 9249  11476   
 9250  11477   
[dependencies.bytes]
 9251  11478   
version = "1.4.0"
 9252  11479   
 9253  11480   
[dependencies.fastrand]
 9254  11481   
version = "2.0.0"
 9255  11482   
 9256  11483   
[dependencies.http]
 9257  11484   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 9258  11485   
index 0c56e4c..95731e3 100644
 9259         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
       11486  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 9260  11487   
@@ -1,61 +1,61 @@
 9261  11488   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9262  11489   
[package]
 9263  11490   
name = "aws-sdk-timestreamwrite"
 9264  11491   
version = "0.0.0-local"
 9265  11492   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9266  11493   
description = "AWS SDK for Amazon Timestream Write"
 9267  11494   
edition = "2021"
 9268  11495   
license = "Apache-2.0"
 9269  11496   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9270  11497   
rust-version = "1.86.0"
 9271  11498   
readme = "README.md"
 9272  11499   
[package.metadata.smithy]
 9273  11500   
codegen-version = "ci"
 9274  11501   
[package.metadata.docs.rs]
 9275  11502   
all-features = true
 9276  11503   
targets = ["x86_64-unknown-linux-gnu"]
 9277  11504   
[dependencies.aws-credential-types]
 9278  11505   
path = "../aws-credential-types"
 9279  11506   
version = "1.2.4"
 9280  11507   
 9281  11508   
[dependencies.aws-runtime]
 9282  11509   
path = "../aws-runtime"
 9283  11510   
version = "1.5.9"
 9284  11511   
 9285  11512   
[dependencies.aws-smithy-async]
 9286  11513   
path = "../aws-smithy-async"
 9287  11514   
version = "1.2.5"
 9288  11515   
 9289  11516   
[dependencies.aws-smithy-http]
 9290  11517   
path = "../aws-smithy-http"
 9291         -
version = "0.62.2"
       11518  +
version = "0.62.3"
 9292  11519   
 9293  11520   
[dependencies.aws-smithy-json]
 9294  11521   
path = "../aws-smithy-json"
 9295  11522   
version = "0.61.4"
 9296  11523   
 9297  11524   
[dependencies.aws-smithy-runtime]
 9298  11525   
path = "../aws-smithy-runtime"
 9299  11526   
features = ["client"]
 9300  11527   
version = "1.8.5"
 9301  11528   
 9302  11529   
[dependencies.aws-smithy-runtime-api]
 9303  11530   
path = "../aws-smithy-runtime-api"
 9304  11531   
features = ["client", "http-02x"]
 9305  11532   
version = "1.8.5"
 9306  11533   
 9307  11534   
[dependencies.aws-smithy-types]
 9308  11535   
path = "../aws-smithy-types"
 9309  11536   
version = "1.3.2"
 9310  11537   
 9311  11538   
[dependencies.aws-types]
 9312  11539   
path = "../aws-types"
 9313  11540   
version = "1.3.8"
 9314  11541   
 9315  11542   
[dependencies.bytes]
 9316  11543   
version = "1.4.0"
 9317  11544   
 9318  11545   
[dependencies.fastrand]
 9319  11546   
version = "2.0.0"
 9320  11547   
 9321  11548   
[dependencies.http]
 9322  11549   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 9323  11550   
index 5b35037..9fb220a 100644
 9324         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       11551  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 9325  11552   
@@ -1,71 +1,71 @@
 9326  11553   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9327  11554   
[package]
 9328  11555   
name = "aws-sdk-transcribestreaming"
 9329  11556   
version = "0.0.0-local"
 9330  11557   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9331  11558   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 9332  11559   
edition = "2021"
 9333  11560   
license = "Apache-2.0"
 9334  11561   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9335  11562   
rust-version = "1.86.0"
 9336  11563   
readme = "README.md"
 9337  11564   
[package.metadata.smithy]
 9338  11565   
codegen-version = "ci"
 9339  11566   
[package.metadata.docs.rs]
 9340  11567   
all-features = true
 9341  11568   
targets = ["x86_64-unknown-linux-gnu"]
 9342  11569   
[dependencies.aws-credential-types]
 9343  11570   
path = "../aws-credential-types"
 9344  11571   
version = "1.2.4"
 9345  11572   
 9346  11573   
[dependencies.aws-runtime]
 9347  11574   
path = "../aws-runtime"
 9348  11575   
features = ["event-stream"]
 9349  11576   
version = "1.5.9"
 9350  11577   
 9351  11578   
[dependencies.aws-sigv4]
 9352  11579   
path = "../aws-sigv4"
 9353         -
version = "1.3.3"
       11580  +
version = "1.3.4"
 9354  11581   
 9355  11582   
[dependencies.aws-smithy-async]
 9356  11583   
path = "../aws-smithy-async"
 9357  11584   
version = "1.2.5"
 9358  11585   
 9359  11586   
[dependencies.aws-smithy-eventstream]
 9360  11587   
path = "../aws-smithy-eventstream"
 9361  11588   
version = "0.60.10"
 9362  11589   
 9363  11590   
[dependencies.aws-smithy-http]
 9364  11591   
path = "../aws-smithy-http"
 9365  11592   
features = ["event-stream"]
 9366         -
version = "0.62.2"
       11593  +
version = "0.62.3"
 9367  11594   
 9368  11595   
[dependencies.aws-smithy-json]
 9369  11596   
path = "../aws-smithy-json"
 9370  11597   
version = "0.61.4"
 9371  11598   
 9372  11599   
[dependencies.aws-smithy-runtime]
 9373  11600   
path = "../aws-smithy-runtime"
 9374  11601   
features = ["client"]
 9375  11602   
version = "1.8.5"
 9376  11603