AWS SDK

AWS SDK

rev. 628eeeeeed390f5efdbfe607c18848c033debd3e

Files changed:

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

@@ -1,0 +3,0 @@
    1         -
GET /?Param1=value2&Param1=value1 HTTP/1.1
    2         -
Host:example.amazonaws.com
    3         -
X-Amz-Date:20150830T123600Z

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

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

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

@@ -1,0 +9412,11656 @@
    1         -
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
    2      0   
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
    3      1   
deleted file mode 100644
    4      2   
index 551c027..0000000
    5         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.authz
           3  +
++ /dev/null
    6      4   
@@ -1 +0,0 @@
    7         -
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
    8      5   
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
    9      6   
deleted file mode 100644
   10      7   
index d739b01..0000000
   11         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sreq
           8  +
++ /dev/null
   12      9   
@@ -1,4 +0,0 @@
   13         -
GET / HTTP/1.1
   14         -
Host:example.amazonaws.com
   15         -
X-Amz-Date:20150830T123600Z
   16         -
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
   17     10   
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
   18     11   
deleted file mode 100644
   19     12   
index e016c3d..0000000
   20         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.authz
          13  +
++ /dev/null
   21     14   
@@ -1 +0,0 @@
   22         -
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
   23     15   
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
   24     16   
deleted file mode 100644
   25     17   
index 7baf4c8..0000000
   26         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sreq
          18  +
++ /dev/null
   27     19   
@@ -1,4 +0,0 @@
   28         -
GET /?ሴ=bar HTTP/1.1
   29         -
Host:example.amazonaws.com
   30         -
X-Amz-Date:20150830T123600Z
   31         -
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
   32     20   
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
   33     21   
deleted file mode 100644
   34     22   
index 551c027..0000000
   35         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.authz
          23  +
++ /dev/null
   36     24   
@@ -1 +0,0 @@
   37         -
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
   38     25   
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
   39     26   
deleted file mode 100644
   40     27   
index d739b01..0000000
   41         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sreq
          28  +
++ /dev/null
   42     29   
@@ -1,4 +0,0 @@
   43         -
GET / HTTP/1.1
   44         -
Host:example.amazonaws.com
   45         -
X-Amz-Date:20150830T123600Z
   46         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
   47     30   
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
   48     31   
deleted file mode 100644
   49     32   
index 1336241..0000000
   50         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/iam/iam.creq
          33  +
++ /dev/null
   51     34   
@@ -1,4 +0,0 @@
   52         -
AWS4-HMAC-SHA256
   53         -
20150830T123600Z
   54         -
20150830/us-east-1/iam/aws4_request
   55         -
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59
   56     35   
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
   57     36   
deleted file mode 100644
   58     37   
index 551c027..0000000
   59         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.authz
          38  +
++ /dev/null
   60     39   
@@ -1 +0,0 @@
   61         -
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
   62     40   
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
   63     41   
deleted file mode 100644
   64     42   
index cbdebe2..0000000
   65         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sreq
          43  +
++ /dev/null
   66     44   
@@ -1,4 +0,0 @@
   67         -
GET /example1/example2/../.. HTTP/1.1
   68         -
Host:example.amazonaws.com
   69         -
X-Amz-Date:20150830T123600Z
   70         -
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
   71     45   
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
   72     46   
deleted file mode 100644
   73     47   
index 551c027..0000000
   74         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.authz
          48  +
++ /dev/null
   75     49   
@@ -1 +0,0 @@
   76         -
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
   77     50   
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
   78     51   
deleted file mode 100644
   79     52   
index 4f59e7d..0000000
   80         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sreq
          53  +
++ /dev/null
   81     54   
@@ -1,4 +0,0 @@
   82         -
GET /example/.. HTTP/1.1
   83         -
Host:example.amazonaws.com
   84         -
X-Amz-Date:20150830T123600Z
   85         -
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
   86     55   
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
   87     56   
deleted file mode 100644
   88     57   
index 551c027..0000000
   89         -
-- 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
          58  +
++ /dev/null
   90     59   
@@ -1 +0,0 @@
   91         -
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
   92     60   
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
   93     61   
deleted file mode 100644
   94     62   
index 23a2b41..0000000
   95         -
-- 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
          63  +
++ /dev/null
   96     64   
@@ -1,4 +0,0 @@
   97         -
GET /./ HTTP/1.1
   98         -
Host:example.amazonaws.com
   99         -
X-Amz-Date:20150830T123600Z
  100         -
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
  101     65   
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
  102     66   
deleted file mode 100644
  103     67   
index b76ca1e..0000000
  104         -
-- 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
          68  +
++ /dev/null
  105     69   
@@ -1 +0,0 @@
  106         -
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
  107     70   
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
  108     71   
deleted file mode 100644
  109     72   
index 8096609..0000000
  110         -
-- 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
          73  +
++ /dev/null
  111     74   
@@ -1,4 +0,0 @@
  112         -
GET /./example HTTP/1.1
  113         -
Host:example.amazonaws.com
  114         -
X-Amz-Date:20150830T123600Z
  115         -
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
  116     75   
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
  117     76   
deleted file mode 100644
  118     77   
index 551c027..0000000
  119         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.authz
          78  +
++ /dev/null
  120     79   
@@ -1 +0,0 @@
  121         -
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
  122     80   
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
  123     81   
deleted file mode 100644
  124     82   
index cde31b4..0000000
  125         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sreq
          83  +
++ /dev/null
  126     84   
@@ -1,4 +0,0 @@
  127         -
GET // HTTP/1.1
  128         -
Host:example.amazonaws.com
  129         -
X-Amz-Date:20150830T123600Z
  130         -
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
  131     85   
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
  132     86   
deleted file mode 100644
  133     87   
index 307c105..0000000
  134         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.authz
          88  +
++ /dev/null
  135     89   
@@ -1 +0,0 @@
  136         -
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
  137     90   
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
  138     91   
deleted file mode 100644
  139     92   
index c84a80d..0000000
  140         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sreq
          93  +
++ /dev/null
  141     94   
@@ -1,4 +0,0 @@
  142         -
GET //example// HTTP/1.1
  143         -
Host:example.amazonaws.com
  144         -
X-Amz-Date:20150830T123600Z
  145         -
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
  146     95   
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
  147     96   
deleted file mode 100644
  148     97   
index 832d8a5..0000000
  149         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.authz
          98  +
++ /dev/null
  150     99   
@@ -1 +0,0 @@
  151         -
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
  152    100   
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
  153    101   
deleted file mode 100644
  154    102   
index eefa20c..0000000
  155         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sreq
         103  +
++ /dev/null
  156    104   
@@ -1,4 +0,0 @@
  157         -
GET /example space/ HTTP/1.1
  158         -
Host:example.amazonaws.com
  159         -
X-Amz-Date:20150830T123600Z
  160         -
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
  161    105   
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
  162    106   
deleted file mode 100644
  163    107   
index c2fcb27..0000000
  164         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/normalize-path.txt
         108  +
++ /dev/null
  165    109   
@@ -1,3 +0,0 @@
  166         -
A note about signing requests to Amazon S3:
  167         -

  168         -
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
  169    110   
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
  170    111   
deleted file mode 100644
  171    112   
index 89e572e..0000000
  172         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.authz
         113  +
++ /dev/null
  173    114   
@@ -1 +0,0 @@
  174         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
  175    115   
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
  176    116   
deleted file mode 100644
  177    117   
index fcf23ce..0000000
  178         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sreq
         118  +
++ /dev/null
  179    119   
@@ -1,4 +0,0 @@
  180         -
POST / HTTP/1.1
  181         -
Host:example.amazonaws.com
  182         -
X-Amz-Date:20150830T123600Z
  183         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
  184    120   
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
  185    121   
deleted file mode 100644
  186    122   
index a62589f..0000000
  187         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.authz
         123  +
++ /dev/null
  188    124   
@@ -1 +0,0 @@
  189         -
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
  190    125   
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
  191    126   
deleted file mode 100644
  192    127   
index b4b78a1..0000000
  193         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq
         128  +
++ /dev/null
  194    129   
@@ -1,5 +0,0 @@
  195         -
POST / HTTP/1.1
  196         -
Host:example.amazonaws.com
  197         -
My-Header1:value1
  198         -
X-Amz-Date:20150830T123600Z
  199         -
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
  200    130   
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
  201    131   
deleted file mode 100644
  202    132   
index d9e52a3..0000000
  203         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz
         133  +
++ /dev/null
  204    134   
@@ -1 +0,0 @@
  205         -
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
  206    135   
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
  207    136   
deleted file mode 100644
  208    137   
index 99c3210..0000000
  209         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq
         138  +
++ /dev/null
  210    139   
@@ -1,5 +0,0 @@
  211         -
POST / HTTP/1.1
  212         -
Host:example.amazonaws.com
  213         -
My-Header1:VALUE1
  214         -
X-Amz-Date:20150830T123600Z
  215         -
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
  216    140   
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
  217    141   
deleted file mode 100644
  218    142   
index 89e572e..0000000
  219         -
-- 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
         143  +
++ /dev/null
  220    144   
@@ -1 +0,0 @@
  221         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
  222    145   
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
  223    146   
deleted file mode 100644
  224    147   
index 64aa046..0000000
  225         -
-- 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
         148  +
++ /dev/null
  226    149   
@@ -1 +0,0 @@
  227         -
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
  228    150   
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
  229    151   
deleted file mode 100644
  230    152   
index cc34282..0000000
  231         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt
         153  +
++ /dev/null
  232    154   
@@ -1,15 +0,0 @@
  233         -
A note about using temporary security credentials:
  234         -

  235         -
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).
  236         -

  237         -
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.
  238         -

  239         -
The test suite has 2 examples:
  240         -

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

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

  245         -
The test suite uses this example value for X-Amz-Security-Token:
  246         -

  247         -
AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
  248    155   
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
  249    156   
deleted file mode 100644
  250    157   
index 44280cd..0000000
  251         -
-- 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
         158  +
++ /dev/null
  252    159   
@@ -1 +0,0 @@
  253         -
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
  254    160   
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
  255    161   
deleted file mode 100644
  256    162   
index 82af150..0000000
  257         -
-- 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
         163  +
++ /dev/null
  258    164   
@@ -1,4 +0,0 @@
  259         -
POST /?Param1=value1 HTTP/1.1
  260         -
Host:example.amazonaws.com
  261         -
X-Amz-Date:20150830T123600Z
  262         -
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
  263    165   
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
  264    166   
deleted file mode 100644
  265    167   
index 44280cd..0000000
  266         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz
         168  +
++ /dev/null
  267    169   
@@ -1 +0,0 @@
  268         -
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
  269    170   
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
  270    171   
deleted file mode 100644
  271    172   
index 82af150..0000000
  272         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq
         173  +
++ /dev/null
  273    174   
@@ -1,4 +0,0 @@
  274         -
POST /?Param1=value1 HTTP/1.1
  275         -
Host:example.amazonaws.com
  276         -
X-Amz-Date:20150830T123600Z
  277         -
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
  278    175   
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
  279    176   
deleted file mode 100644
  280    177   
index 89e572e..0000000
  281         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
         178  +
++ /dev/null
  282    179   
@@ -1 +0,0 @@
  283         -
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
  284    180   
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
  285    181   
deleted file mode 100644
  286    182   
index a5ada0d..0000000
  287         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq
         183  +
++ /dev/null
  288    184   
@@ -1,4 +0,0 @@
  289         -
POST / HTTP/1.1
  290         -
Host:example.amazonaws.com
  291         -
X-Amz-Date:20150830T123600Z
  292         -
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
  293    185   
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
  294    186   
deleted file mode 100644
  295    187   
index df90ca3..0000000
  296         -
-- 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
         188  +
++ /dev/null
  297    189   
@@ -1 +0,0 @@
  298         -
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
  299    190   
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
  300    191   
deleted file mode 100644
  301    192   
index 457b0d5..0000000
  302         -
-- 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
         193  +
++ /dev/null
  303    194   
@@ -1,9 +0,0 @@
  304         -
POST
  305         -
/
  306         -
Param1=value1
  307         -
content-type:application/x-www-form-urlencoded; charset=utf-8
  308         -
host:example.amazonaws.com
  309         -
x-amz-date:20150830T123600Z
  310         -
  311         -
content-type;host;x-amz-date
  312         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  313    195   
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
  314    196   
deleted file mode 100644
  315    197   
index b8ecb89..0000000
  316         -
-- 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
         198  +
++ /dev/null
  317    199   
@@ -1,7 +0,0 @@
  318         -
POST / HTTP/1.1
  319         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  320         -
Host:example.amazonaws.com
  321         -
X-Amz-Date:20150830T123600Z
  322         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ad1ac0c5fa1793b9b9d23894903b9ce84044d014533a633091e12c840473b393
  323         -
  324         -
Param1=value1
              \
 No newline at end of file
  325    200   
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
  326    201   
deleted file mode 100644
  327    202   
index 79077d2..0000000
  328         -
-- 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
         203  +
++ /dev/null
  329    204   
@@ -1 +0,0 @@
  330         -
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
  331    205   
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
  332    206   
deleted file mode 100644
  333    207   
index 7852617..0000000
  334         -
-- 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
         208  +
++ /dev/null
  335    209   
@@ -1,4 +0,0 @@
  336         -
POST / HTTP/1.1
  337         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  338         -
Host:example.amazonaws.com
  339         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  340    210   
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
  341    211   
deleted file mode 100644
  342    212   
index 3e2e571..0000000
  343         -
-- 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
         213  +
++ /dev/null
  344    214   
@@ -1,4 +0,0 @@
  345         -
POST / HTTP/1.1
  346         -
Host:example.amazonaws.com
  347         -
X-Amz-Date:20150830T123600Z
  348         -
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
  349    215   
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
  350    216   
deleted file mode 100644
  351    217   
index 89ceae8..0000000
  352         -
-- 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
         218  +
++ /dev/null
  353    219   
@@ -1,4 +0,0 @@
  354         -
AWS4-HMAC-SHA256
  355         -
20150830T123600Z
  356         -
20150830/us-east-1/service/aws4_request
  357         -
6a42edc18395dd67cc71407d4307ff29ab1646b08c1a0107edb319e08e2bc584
              \
 No newline at end of file
  358    220   
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
  359    221   
deleted file mode 100755
  360    222   
index d645695..0000000
  361         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE
         223  +
++ /dev/null
  362    224   
@@ -1,202 +0,0 @@
  363         -
  364         -
                                 Apache License
  365         -
                           Version 2.0, January 2004
  366         -
                        http://www.apache.org/licenses/
  367         -
  368         -
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
  369         -
  370         -
   1. Definitions.
  371         -
  372         -
      "License" shall mean the terms and conditions for use, reproduction,
  373         -
      and distribution as defined by Sections 1 through 9 of this document.
  374         -
  375         -
      "Licensor" shall mean the copyright owner or entity authorized by
  376         -
      the copyright owner that is granting the License.
  377         -
  378         -
      "Legal Entity" shall mean the union of the acting entity and all
  379         -
      other entities that control, are controlled by, or are under common
  380         -
      control with that entity. For the purposes of this definition,
  381         -
      "control" means (i) the power, direct or indirect, to cause the
  382         -
      direction or management of such entity, whether by contract or
  383         -
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
  384         -
      outstanding shares, or (iii) beneficial ownership of such entity.
  385         -
  386         -
      "You" (or "Your") shall mean an individual or Legal Entity
  387         -
      exercising permissions granted by this License.
  388         -
  389         -
      "Source" form shall mean the preferred form for making modifications,
  390         -
      including but not limited to software source code, documentation
  391         -
      source, and configuration files.
  392         -
  393         -
      "Object" form shall mean any form resulting from mechanical
  394         -
      transformation or translation of a Source form, including but
  395         -
      not limited to compiled object code, generated documentation,
  396         -
      and conversions to other media types.
  397         -
  398         -
      "Work" shall mean the work of authorship, whether in Source or
  399         -
      Object form, made available under the License, as indicated by a
  400         -
      copyright notice that is included in or attached to the work
  401         -
      (an example is provided in the Appendix below).
  402         -
  403         -
      "Derivative Works" shall mean any work, whether in Source or Object
  404         -
      form, that is based on (or derived from) the Work and for which the
  405         -
      editorial revisions, annotations, elaborations, or other modifications
  406         -
      represent, as a whole, an original work of authorship. For the purposes
  407         -
      of this License, Derivative Works shall not include works that remain
  408         -
      separable from, or merely link (or bind by name) to the interfaces of,
  409         -
      the Work and Derivative Works thereof.
  410         -
  411         -
      "Contribution" shall mean any work of authorship, including
  412         -
      the original version of the Work and any modifications or additions
  413         -
      to that Work or Derivative Works thereof, that is intentionally
  414         -
      submitted to Licensor for inclusion in the Work by the copyright owner
  415         -
      or by an individual or Legal Entity authorized to submit on behalf of
  416         -
      the copyright owner. For the purposes of this definition, "submitted"
  417         -
      means any form of electronic, verbal, or written communication sent
  418         -
      to the Licensor or its representatives, including but not limited to
  419         -
      communication on electronic mailing lists, source code control systems,
  420         -
      and issue tracking systems that are managed by, or on behalf of, the
  421         -
      Licensor for the purpose of discussing and improving the Work, but
  422         -
      excluding communication that is conspicuously marked or otherwise
  423         -
      designated in writing by the copyright owner as "Not a Contribution."
  424         -
  425         -
      "Contributor" shall mean Licensor and any individual or Legal Entity
  426         -
      on behalf of whom a Contribution has been received by Licensor and
  427         -
      subsequently incorporated within the Work.
  428         -
  429         -
   2. Grant of Copyright License. Subject to the terms and conditions of
  430         -
      this License, each Contributor hereby grants to You a perpetual,
  431         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  432         -
      copyright license to reproduce, prepare Derivative Works of,
  433         -
      publicly display, publicly perform, sublicense, and distribute the
  434         -
      Work and such Derivative Works in Source or Object form.
  435         -
  436         -
   3. Grant of Patent License. Subject to the terms and conditions of
  437         -
      this License, each Contributor hereby grants to You a perpetual,
  438         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  439         -
      (except as stated in this section) patent license to make, have made,
  440         -
      use, offer to sell, sell, import, and otherwise transfer the Work,
  441         -
      where such license applies only to those patent claims licensable
  442         -
      by such Contributor that are necessarily infringed by their
  443         -
      Contribution(s) alone or by combination of their Contribution(s)
  444         -
      with the Work to which such Contribution(s) was submitted. If You
  445         -
      institute patent litigation against any entity (including a
  446         -
      cross-claim or counterclaim in a lawsuit) alleging that the Work
  447         -
      or a Contribution incorporated within the Work constitutes direct
  448         -
      or contributory patent infringement, then any patent licenses
  449         -
      granted to You under this License for that Work shall terminate
  450         -
      as of the date such litigation is filed.
  451         -
  452         -
   4. Redistribution. You may reproduce and distribute copies of the
  453         -
      Work or Derivative Works thereof in any medium, with or without
  454         -
      modifications, and in Source or Object form, provided that You
  455         -
      meet the following conditions:
  456         -
  457         -
      (a) You must give any other recipients of the Work or
  458         -
          Derivative Works a copy of this License; and
  459         -
  460         -
      (b) You must cause any modified files to carry prominent notices
  461         -
          stating that You changed the files; and
  462         -
  463         -
      (c) You must retain, in the Source form of any Derivative Works
  464         -
          that You distribute, all copyright, patent, trademark, and
  465         -
          attribution notices from the Source form of the Work,
  466         -
          excluding those notices that do not pertain to any part of
  467         -
          the Derivative Works; and
  468         -
  469         -
      (d) If the Work includes a "NOTICE" text file as part of its
  470         -
          distribution, then any Derivative Works that You distribute must
  471         -
          include a readable copy of the attribution notices contained
  472         -
          within such NOTICE file, excluding those notices that do not
  473         -
          pertain to any part of the Derivative Works, in at least one
  474         -
          of the following places: within a NOTICE text file distributed
  475         -
          as part of the Derivative Works; within the Source form or
  476         -
          documentation, if provided along with the Derivative Works; or,
  477         -
          within a display generated by the Derivative Works, if and
  478         -
          wherever such third-party notices normally appear. The contents
  479         -
          of the NOTICE file are for informational purposes only and
  480         -
          do not modify the License. You may add Your own attribution
  481         -
          notices within Derivative Works that You distribute, alongside
  482         -
          or as an addendum to the NOTICE text from the Work, provided
  483         -
          that such additional attribution notices cannot be construed
  484         -
          as modifying the License.
  485         -
  486         -
      You may add Your own copyright statement to Your modifications and
  487         -
      may provide additional or different license terms and conditions
  488         -
      for use, reproduction, or distribution of Your modifications, or
  489         -
      for any such Derivative Works as a whole, provided Your use,
  490         -
      reproduction, and distribution of the Work otherwise complies with
  491         -
      the conditions stated in this License.
  492         -
  493         -
   5. Submission of Contributions. Unless You explicitly state otherwise,
  494         -
      any Contribution intentionally submitted for inclusion in the Work
  495         -
      by You to the Licensor shall be under the terms and conditions of
  496         -
      this License, without any additional terms or conditions.
  497         -
      Notwithstanding the above, nothing herein shall supersede or modify
  498         -
      the terms of any separate license agreement you may have executed
  499         -
      with Licensor regarding such Contributions.
  500         -
  501         -
   6. Trademarks. This License does not grant permission to use the trade
  502         -
      names, trademarks, service marks, or product names of the Licensor,
  503         -
      except as required for reasonable and customary use in describing the
  504         -
      origin of the Work and reproducing the content of the NOTICE file.
  505         -
  506         -
   7. Disclaimer of Warranty. Unless required by applicable law or
  507         -
      agreed to in writing, Licensor provides the Work (and each
  508         -
      Contributor provides its Contributions) on an "AS IS" BASIS,
  509         -
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
  510         -
      implied, including, without limitation, any warranties or conditions
  511         -
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
  512         -
      PARTICULAR PURPOSE. You are solely responsible for determining the
  513         -
      appropriateness of using or redistributing the Work and assume any
  514         -
      risks associated with Your exercise of permissions under this License.
  515         -
  516         -
   8. Limitation of Liability. In no event and under no legal theory,
  517         -
      whether in tort (including negligence), contract, or otherwise,
  518         -
      unless required by applicable law (such as deliberate and grossly
  519         -
      negligent acts) or agreed to in writing, shall any Contributor be
  520         -
      liable to You for damages, including any direct, indirect, special,
  521         -
      incidental, or consequential damages of any character arising as a
  522         -
      result of this License or out of the use or inability to use the
  523         -
      Work (including but not limited to damages for loss of goodwill,
  524         -
      work stoppage, computer failure or malfunction, or any and all
  525         -
      other commercial damages or losses), even if such Contributor
  526         -
      has been advised of the possibility of such damages.
  527         -
  528         -
   9. Accepting Warranty or Additional Liability. While redistributing
  529         -
      the Work or Derivative Works thereof, You may choose to offer,
  530         -
      and charge a fee for, acceptance of support, warranty, indemnity,
  531         -
      or other liability obligations and/or rights consistent with this
  532         -
      License. However, in accepting such obligations, You may act only
  533         -
      on Your own behalf and on Your sole responsibility, not on behalf
  534         -
      of any other Contributor, and only if You agree to indemnify,
  535         -
      defend, and hold each Contributor harmless for any liability
  536         -
      incurred by, or claims asserted against, such Contributor by reason
  537         -
      of your accepting any such warranty or additional liability.
  538         -
  539         -
   END OF TERMS AND CONDITIONS
  540         -
  541         -
   APPENDIX: How to apply the Apache License to your work.
  542         -
  543         -
      To apply the Apache License to your work, attach the following
  544         -
      boilerplate notice, with the fields enclosed by brackets "[]"
  545         -
      replaced with your own identifying information. (Don't include
  546         -
      the brackets!)  The text should be enclosed in the appropriate
  547         -
      comment syntax for the file format. We also recommend that a
  548         -
      file or class name and description of purpose be included on the
  549         -
      same "printed page" as the copyright notice for easier
  550         -
      identification within third-party archives.
  551         -
  552         -
   Copyright [yyyy] [name of copyright owner]
  553         -
  554         -
   Licensed under the Apache License, Version 2.0 (the "License");
  555         -
   you may not use this file except in compliance with the License.
  556         -
   You may obtain a copy of the License at
  557         -
  558         -
       http://www.apache.org/licenses/LICENSE-2.0
  559         -
  560         -
   Unless required by applicable law or agreed to in writing, software
  561         -
   distributed under the License is distributed on an "AS IS" BASIS,
  562         -
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  563         -
   See the License for the specific language governing permissions and
  564         -
   limitations under the License.
  565    225   
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
  566    226   
deleted file mode 100755
  567    227   
index d85f69e..0000000
  568         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE
         228  +
++ /dev/null
  569    229   
@@ -1,2 +0,0 @@
  570         -
AWS Signature Version 4a Test Suite
  571         -
Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  572    230   
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
  573    231   
deleted file mode 100644
  574    232   
index c716622..0000000
  575         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md
         233  +
++ /dev/null
  576    234   
@@ -1,24 +0,0 @@
  577         -
Where did the files in this directory come from?
  578         -
================================================
  579         -
  580         -
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.
  581         -
  582         -
Signature Version 4A Test Suite
  583         -
------------------------------
  584         -
  585         -
To assist you in the development of an AWS client that supports Signature Version 4A, you can use the
  586         -
files in the test suite to ensure your code is performing each step of the signing process correctly.
  587         -
  588         -
Each test group contains several files that you can use to validate most of the tasks described in
  589         -
Signature Version 4A Signing Process. The following list describes the contents of each file.
  590         -
  591         -
- context.json - Credentials and signer options to use when signing test requests
  592         -
- request.txt - The web request to be signed.
  593         -
- header-canonical-request.txt - The resulting canonical request in header-signature mode.
  594         -
- header-string-to-sign.txt - The resulting string to sign in header-signature mode.
  595         -
- query-canonical-request.txt - The resulting canonical request in query-signature mode.
  596         -
- query-string-to-sign.txt - The resulting string to sign in header-query mode.
  597         -
  598         -
Sigv4A signature generation isn't deterministic, so generated signatures can't be tested against known good ones.
  599         -
Instead, tests generate a signature, derive a verification key from the signing key, and verify the signature and
  600         -
the string to sign. This mirrors what AWS services do when verifying Sigv4A-signed requests.
  601    235   
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
  602    236   
deleted file mode 100644
  603    237   
index 45771c7..0000000
  604         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json
         238  +
++ /dev/null
  605    239   
@@ -1,12 +0,0 @@
  606         -
{
  607         -
    "credentials": {
  608         -
        "access_key_id": "AKIDEXAMPLE",
  609         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  610         -
    },
  611         -
    "expiration_in_seconds": 3600,
  612         -
    "normalize": true,
  613         -
    "region": "us-east-1",
  614         -
    "service": "service",
  615         -
    "sign_body": false,
  616         -
    "timestamp": "2015-08-30T12:36:00Z"
  617         -
}
  618    240   
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
  619    241   
deleted file mode 100644
  620    242   
index 45771c7..0000000
  621         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json
         243  +
++ /dev/null
  622    244   
@@ -1,12 +0,0 @@
  623         -
{
  624         -
    "credentials": {
  625         -
        "access_key_id": "AKIDEXAMPLE",
  626         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  627         -
    },
  628         -
    "expiration_in_seconds": 3600,
  629         -
    "normalize": true,
  630         -
    "region": "us-east-1",
  631         -
    "service": "service",
  632         -
    "sign_body": false,
  633         -
    "timestamp": "2015-08-30T12:36:00Z"
  634         -
}
  635    245   
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
  636    246   
deleted file mode 100644
  637    247   
index 45771c7..0000000
  638         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json
         248  +
++ /dev/null
  639    249   
@@ -1,12 +0,0 @@
  640         -
{
  641         -
    "credentials": {
  642         -
        "access_key_id": "AKIDEXAMPLE",
  643         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  644         -
    },
  645         -
    "expiration_in_seconds": 3600,
  646         -
    "normalize": true,
  647         -
    "region": "us-east-1",
  648         -
    "service": "service",
  649         -
    "sign_body": false,
  650         -
    "timestamp": "2015-08-30T12:36:00Z"
  651         -
}
  652    250   
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
  653    251   
deleted file mode 100644
  654    252   
index 45771c7..0000000
  655         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json
         253  +
++ /dev/null
  656    254   
@@ -1,12 +0,0 @@
  657         -
{
  658         -
    "credentials": {
  659         -
        "access_key_id": "AKIDEXAMPLE",
  660         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  661         -
    },
  662         -
    "expiration_in_seconds": 3600,
  663         -
    "normalize": true,
  664         -
    "region": "us-east-1",
  665         -
    "service": "service",
  666         -
    "sign_body": false,
  667         -
    "timestamp": "2015-08-30T12:36:00Z"
  668         -
}
  669    255   
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
  670    256   
deleted file mode 100644
  671    257   
index afe367b..0000000
  672         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json
         258  +
++ /dev/null
  673    259   
@@ -1,12 +0,0 @@
  674         -
{
  675         -
    "credentials": {
  676         -
        "access_key_id": "AKIDEXAMPLE",
  677         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  678         -
    },
  679         -
    "expiration_in_seconds": 3600,
  680         -
    "normalize": false,
  681         -
    "region": "us-east-1",
  682         -
    "service": "service",
  683         -
    "sign_body": false,
  684         -
    "timestamp": "2015-08-30T12:36:00Z"
  685         -
}
  686    260   
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
  687    261   
deleted file mode 100644
  688    262   
index 45771c7..0000000
  689         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json
         263  +
++ /dev/null
  690    264   
@@ -1,12 +0,0 @@
  691         -
{
  692         -
    "credentials": {
  693         -
        "access_key_id": "AKIDEXAMPLE",
  694         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  695         -
    },
  696         -
    "expiration_in_seconds": 3600,
  697         -
    "normalize": true,
  698         -
    "region": "us-east-1",
  699         -
    "service": "service",
  700         -
    "sign_body": false,
  701         -
    "timestamp": "2015-08-30T12:36:00Z"
  702         -
}
  703    265   
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
  704    266   
deleted file mode 100644
  705    267   
index afe367b..0000000
  706         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json
         268  +
++ /dev/null
  707    269   
@@ -1,12 +0,0 @@
  708         -
{
  709         -
    "credentials": {
  710         -
        "access_key_id": "AKIDEXAMPLE",
  711         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  712         -
    },
  713         -
    "expiration_in_seconds": 3600,
  714         -
    "normalize": false,
  715         -
    "region": "us-east-1",
  716         -
    "service": "service",
  717         -
    "sign_body": false,
  718         -
    "timestamp": "2015-08-30T12:36:00Z"
  719         -
}
  720    270   
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
  721    271   
deleted file mode 100644
  722    272   
index 45771c7..0000000
  723         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json
         273  +
++ /dev/null
  724    274   
@@ -1,12 +0,0 @@
  725         -
{
  726         -
    "credentials": {
  727         -
        "access_key_id": "AKIDEXAMPLE",
  728         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  729         -
    },
  730         -
    "expiration_in_seconds": 3600,
  731         -
    "normalize": true,
  732         -
    "region": "us-east-1",
  733         -
    "service": "service",
  734         -
    "sign_body": false,
  735         -
    "timestamp": "2015-08-30T12:36:00Z"
  736         -
}
  737    275   
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
  738    276   
deleted file mode 100644
  739    277   
index 45771c7..0000000
  740         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json
         278  +
++ /dev/null
  741    279   
@@ -1,12 +0,0 @@
  742         -
{
  743         -
    "credentials": {
  744         -
        "access_key_id": "AKIDEXAMPLE",
  745         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  746         -
    },
  747         -
    "expiration_in_seconds": 3600,
  748         -
    "normalize": true,
  749         -
    "region": "us-east-1",
  750         -
    "service": "service",
  751         -
    "sign_body": false,
  752         -
    "timestamp": "2015-08-30T12:36:00Z"
  753         -
}
  754    280   
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
  755    281   
deleted file mode 100644
  756    282   
index 45771c7..0000000
  757         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json
         283  +
++ /dev/null
  758    284   
@@ -1,12 +0,0 @@
  759         -
{
  760         -
    "credentials": {
  761         -
        "access_key_id": "AKIDEXAMPLE",
  762         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  763         -
    },
  764         -
    "expiration_in_seconds": 3600,
  765         -
    "normalize": true,
  766         -
    "region": "us-east-1",
  767         -
    "service": "service",
  768         -
    "sign_body": false,
  769         -
    "timestamp": "2015-08-30T12:36:00Z"
  770         -
}
  771    285   
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
  772    286   
deleted file mode 100644
  773    287   
index 45771c7..0000000
  774         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json
         288  +
++ /dev/null
  775    289   
@@ -1,12 +0,0 @@
  776         -
{
  777         -
    "credentials": {
  778         -
        "access_key_id": "AKIDEXAMPLE",
  779         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  780         -
    },
  781         -
    "expiration_in_seconds": 3600,
  782         -
    "normalize": true,
  783         -
    "region": "us-east-1",
  784         -
    "service": "service",
  785         -
    "sign_body": false,
  786         -
    "timestamp": "2015-08-30T12:36:00Z"
  787         -
}
  788    290   
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
  789    291   
deleted file mode 100644
  790    292   
index 45771c7..0000000
  791         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json
         293  +
++ /dev/null
  792    294   
@@ -1,12 +0,0 @@
  793         -
{
  794         -
    "credentials": {
  795         -
        "access_key_id": "AKIDEXAMPLE",
  796         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  797         -
    },
  798         -
    "expiration_in_seconds": 3600,
  799         -
    "normalize": true,
  800         -
    "region": "us-east-1",
  801         -
    "service": "service",
  802         -
    "sign_body": false,
  803         -
    "timestamp": "2015-08-30T12:36:00Z"
  804         -
}
  805    295   
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
  806    296   
deleted file mode 100644
  807    297   
index 47e7128..0000000
  808         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt
         298  +
++ /dev/null
  809    299   
@@ -1,9 +0,0 @@
  810         -
GET
  811         -
/
  812         -
  813         -
host:example.amazonaws.com
  814         -
x-amz-date:20150830T123600Z
  815         -
x-amz-region-set:us-east-1
  816         -
  817         -
host;x-amz-date;x-amz-region-set
  818         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  819    300   
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
  820    301   
deleted file mode 100644
  821    302   
index 95d7219..0000000
  822         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt
         303  +
++ /dev/null
  823    304   
@@ -1,4 +0,0 @@
  824         -
AWS4-ECDSA-P256-SHA256
  825         -
20150830T123600Z
  826         -
20150830/service/aws4_request
  827         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  828    305   
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
  829    306   
deleted file mode 100644
  830    307   
index a34ea26..0000000
  831         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt
         308  +
++ /dev/null
  832    309   
@@ -1,7 +0,0 @@
  833         -
GET
  834         -
/
  835         -
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
  836         -
host:example.amazonaws.com
  837         -
  838         -
host
  839         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  840    310   
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
  841    311   
deleted file mode 100644
  842    312   
index 48f855c..0000000
  843         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt
         313  +
++ /dev/null
  844    314   
@@ -1,4 +0,0 @@
  845         -
AWS4-ECDSA-P256-SHA256
  846         -
20150830T123600Z
  847         -
20150830/service/aws4_request
  848         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  849    315   
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
  850    316   
deleted file mode 100644
  851    317   
index 45771c7..0000000
  852         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json
         318  +
++ /dev/null
  853    319   
@@ -1,12 +0,0 @@
  854         -
{
  855         -
    "credentials": {
  856         -
        "access_key_id": "AKIDEXAMPLE",
  857         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  858         -
    },
  859         -
    "expiration_in_seconds": 3600,
  860         -
    "normalize": true,
  861         -
    "region": "us-east-1",
  862         -
    "service": "service",
  863         -
    "sign_body": false,
  864         -
    "timestamp": "2015-08-30T12:36:00Z"
  865         -
}
  866    320   
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
  867    321   
deleted file mode 100644
  868    322   
index 47e7128..0000000
  869         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt
         323  +
++ /dev/null
  870    324   
@@ -1,9 +0,0 @@
  871         -
GET
  872         -
/
  873         -
  874         -
host:example.amazonaws.com
  875         -
x-amz-date:20150830T123600Z
  876         -
x-amz-region-set:us-east-1
  877         -
  878         -
host;x-amz-date;x-amz-region-set
  879         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  880    325   
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
  881    326   
deleted file mode 100644
  882    327   
index 95d7219..0000000
  883         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt
         328  +
++ /dev/null
  884    329   
@@ -1,4 +0,0 @@
  885         -
AWS4-ECDSA-P256-SHA256
  886         -
20150830T123600Z
  887         -
20150830/service/aws4_request
  888         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  889    330   
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
  890    331   
deleted file mode 100644
  891    332   
index a34ea26..0000000
  892         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt
         333  +
++ /dev/null
  893    334   
@@ -1,7 +0,0 @@
  894         -
GET
  895         -
/
  896         -
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
  897         -
host:example.amazonaws.com
  898         -
  899         -
host
  900         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  901    335   
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
  902    336   
deleted file mode 100644
  903    337   
index 48f855c..0000000
  904         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt
         338  +
++ /dev/null
  905    339   
@@ -1,4 +0,0 @@
  906         -
AWS4-ECDSA-P256-SHA256
  907         -
20150830T123600Z
  908         -
20150830/service/aws4_request
  909         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  910    340   
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
  911    341   
deleted file mode 100644
  912    342   
index 45771c7..0000000
  913         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json
         343  +
++ /dev/null
  914    344   
@@ -1,12 +0,0 @@
  915         -
{
  916         -
    "credentials": {
  917         -
        "access_key_id": "AKIDEXAMPLE",
  918         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  919         -
    },
  920         -
    "expiration_in_seconds": 3600,
  921         -
    "normalize": true,
  922         -
    "region": "us-east-1",
  923         -
    "service": "service",
  924         -
    "sign_body": false,
  925         -
    "timestamp": "2015-08-30T12:36:00Z"
  926         -
}
  927    345   
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
  928    346   
deleted file mode 100644
  929    347   
index 45771c7..0000000
  930         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json
         348  +
++ /dev/null
  931    349   
@@ -1,12 +0,0 @@
  932         -
{
  933         -
    "credentials": {
  934         -
        "access_key_id": "AKIDEXAMPLE",
  935         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  936         -
    },
  937         -
    "expiration_in_seconds": 3600,
  938         -
    "normalize": true,
  939         -
    "region": "us-east-1",
  940         -
    "service": "service",
  941         -
    "sign_body": false,
  942         -
    "timestamp": "2015-08-30T12:36:00Z"
  943         -
}
  944    350   
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
  945    351   
deleted file mode 100644
  946    352   
index 45771c7..0000000
  947         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json
         353  +
++ /dev/null
  948    354   
@@ -1,12 +0,0 @@
  949         -
{
  950         -
    "credentials": {
  951         -
        "access_key_id": "AKIDEXAMPLE",
  952         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  953         -
    },
  954         -
    "expiration_in_seconds": 3600,
  955         -
    "normalize": true,
  956         -
    "region": "us-east-1",
  957         -
    "service": "service",
  958         -
    "sign_body": false,
  959         -
    "timestamp": "2015-08-30T12:36:00Z"
  960         -
}
  961    355   
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
  962    356   
deleted file mode 100644
  963    357   
index 45771c7..0000000
  964         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json
         358  +
++ /dev/null
  965    359   
@@ -1,12 +0,0 @@
  966         -
{
  967         -
    "credentials": {
  968         -
        "access_key_id": "AKIDEXAMPLE",
  969         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  970         -
    },
  971         -
    "expiration_in_seconds": 3600,
  972         -
    "normalize": true,
  973         -
    "region": "us-east-1",
  974         -
    "service": "service",
  975         -
    "sign_body": false,
  976         -
    "timestamp": "2015-08-30T12:36:00Z"
  977         -
}
  978    360   
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
  979    361   
deleted file mode 100644
  980    362   
index 45771c7..0000000
  981         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json
         363  +
++ /dev/null
  982    364   
@@ -1,12 +0,0 @@
  983         -
{
  984         -
    "credentials": {
  985         -
        "access_key_id": "AKIDEXAMPLE",
  986         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  987         -
    },
  988         -
    "expiration_in_seconds": 3600,
  989         -
    "normalize": true,
  990         -
    "region": "us-east-1",
  991         -
    "service": "service",
  992         -
    "sign_body": false,
  993         -
    "timestamp": "2015-08-30T12:36:00Z"
  994         -
}
  995    365   
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
  996    366   
deleted file mode 100644
  997    367   
index 45771c7..0000000
  998         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json
         368  +
++ /dev/null
  999    369   
@@ -1,12 +0,0 @@
 1000         -
{
 1001         -
    "credentials": {
 1002         -
        "access_key_id": "AKIDEXAMPLE",
 1003         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1004         -
    },
 1005         -
    "expiration_in_seconds": 3600,
 1006         -
    "normalize": true,
 1007         -
    "region": "us-east-1",
 1008         -
    "service": "service",
 1009         -
    "sign_body": false,
 1010         -
    "timestamp": "2015-08-30T12:36:00Z"
 1011         -
}
 1012    370   
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
 1013    371   
deleted file mode 100644
 1014    372   
index b6fdecf..0000000
 1015         -
-- 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
         373  +
++ /dev/null
 1016    374   
@@ -1,4 +0,0 @@
 1017         -
AWS4-ECDSA-P256-SHA256
 1018         -
20150830T123600Z
 1019         -
20150830/service/aws4_request
 1020         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
 1021    375   
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
 1022    376   
deleted file mode 100644
 1023    377   
index a300bea..0000000
 1024         -
-- 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
         378  +
++ /dev/null
 1025    379   
@@ -1,4 +0,0 @@
 1026         -
AWS4-ECDSA-P256-SHA256
 1027         -
20150830T123600Z
 1028         -
20150830/service/aws4_request
 1029         -
ab426c74406d082ad98929df8969624e6ed5cb7f4e8501fbbe7d8c20e9c3b417
 1030    380   
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
 1031    381   
deleted file mode 100644
 1032    382   
index b6fdecf..0000000
 1033         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt
         383  +
++ /dev/null
 1034    384   
@@ -1,4 +0,0 @@
 1035         -
AWS4-ECDSA-P256-SHA256
 1036         -
20150830T123600Z
 1037         -
20150830/service/aws4_request
 1038         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
 1039    385   
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
 1040    386   
new file mode 100644
 1041    387   
index 0000000..a674243
 1042         -
-- /dev/null
         388  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md
 1043    389   
@@ -0,0 +1,7 @@
         390  +
# AWS SigV4 and SigV4A Signing Test Suite
         391  +
         392  +
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).
         393  +
         394  +
We added the following changes:
         395  +
         396  +
* 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
 1044    397   
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
 1045    398   
similarity index 100%
 1046    399   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.creq
 1047    400   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-canonical-request.txt
 1048    401   
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
 1049    402   
similarity index 100%
 1050    403   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.sreq
 1051    404   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-signed-request.txt
 1052    405   
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
 1053    406   
similarity index 100%
 1054    407   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.req
 1055    408   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/request.txt
 1056    409   
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
 1057    410   
similarity index 100%
 1058    411   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.creq
 1059    412   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-canonical-request.txt
 1060    413   
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
 1061    414   
similarity index 100%
 1062    415   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sreq
 1063    416   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-signed-request.txt
 1064    417   
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
 1065    418   
similarity index 100%
 1066    419   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sts
 1067    420   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-string-to-sign.txt
 1068    421   
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
 1069    422   
similarity index 100%
 1070    423   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.req
 1071    424   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/request.txt
 1072    425   
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
 1073    426   
similarity index 99%
 1074    427   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
 1075    428   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
 1076    429   
index 45771c7..0468d80 100644
 1077         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
         430  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
 1078    431   
@@ -1,12 +1,12 @@
 1079    432   
{
 1080    433   
    "credentials": {
 1081    434   
        "access_key_id": "AKIDEXAMPLE",
 1082    435   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1083    436   
    },
 1084    437   
    "expiration_in_seconds": 3600,
 1085    438   
    "normalize": true,
 1086    439   
    "region": "us-east-1",
 1087    440   
    "service": "service",
 1088    441   
    "sign_body": false,
 1089    442   
    "timestamp": "2015-08-30T12:36:00Z"
 1090         -
}
         443  +
}
              \
 No newline at end of file
 1091    444   
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
 1092    445   
similarity index 100%
 1093    446   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq
 1094    447   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
 1095    448   
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
 1096    449   
new file mode 100644
 1097    450   
index 0000000..7fc5d7a
 1098         -
-- /dev/null
         451  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
 1099    452   
@@ -0,0 +1 @@
         453  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
 1100    454   
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
 1101    455   
new file mode 100644
 1102    456   
index 0000000..36a1205
 1103         -
-- /dev/null
         457  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
 1104    458   
@@ -0,0 +1,8 @@
         459  +
GET / HTTP/1.1
         460  +
Host:example.amazonaws.com
         461  +
My-Header1:value2
         462  +
My-Header1:value2
         463  +
My-Header1:value1
         464  +
X-Amz-Date:20150830T123600Z
         465  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
         466  +
 1105    467   
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
 1106    468   
similarity index 100%
 1107    469   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
 1108    470   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
 1109    471   
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
 1110    472   
new file mode 100644
 1111    473   
index 0000000..f9f4190
 1112         -
-- /dev/null
         474  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
 1113    475   
@@ -0,0 +1,8 @@
         476  +
GET
         477  +
/
         478  +
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
         479  +
host:example.amazonaws.com
         480  +
my-header1:value2,value2,value1
         481  +
         482  +
host;my-header1
         483  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1114    484   
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
 1115    485   
new file mode 100644
 1116    486   
index 0000000..5d0d87f
 1117         -
-- /dev/null
         487  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
 1118    488   
@@ -0,0 +1 @@
         489  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
 1119    490   
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
 1120    491   
new file mode 100644
 1121    492   
index 0000000..c1dfcf4
 1122         -
-- /dev/null
         493  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
 1123    494   
@@ -0,0 +1,6 @@
         495  +
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
         496  +
Host:example.amazonaws.com
         497  +
My-Header1:value2
         498  +
My-Header1:value2
         499  +
My-Header1:value1
         500  +
 1124    501   
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
 1125    502   
similarity index 53%
 1126    503   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
 1127    504   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1128    505   
index 0a3350a..077c1bb 100644
 1129         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
         506  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1130    507   
@@ -1,4 +1,4 @@
 1131    508   
AWS4-HMAC-SHA256
 1132    509   
20150830T123600Z
 1133    510   
20150830/us-east-1/service/aws4_request
 1134         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
         511  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
 1135    512   
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
 1136    513   
similarity index 100%
 1137    514   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
 1138    515   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
 1139    516   
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
 1140    517   
similarity index 99%
 1141    518   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
 1142    519   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1143    520   
index 45771c7..0468d80 100644
 1144         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
         521  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1145    522   
@@ -1,12 +1,12 @@
 1146    523   
{
 1147    524   
    "credentials": {
 1148    525   
        "access_key_id": "AKIDEXAMPLE",
 1149    526   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1150    527   
    },
 1151    528   
    "expiration_in_seconds": 3600,
 1152    529   
    "normalize": true,
 1153    530   
    "region": "us-east-1",
 1154    531   
    "service": "service",
 1155    532   
    "sign_body": false,
 1156    533   
    "timestamp": "2015-08-30T12:36:00Z"
 1157         -
}
         534  +
}
              \
 No newline at end of file
 1158    535   
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
 1159    536   
similarity index 82%
 1160    537   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
 1161    538   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1162    539   
index 721a39f..8cb5476 100644
 1163         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
         540  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1164    541   
@@ -1,9 +1,9 @@
 1165    542   
GET
 1166    543   
/
 1167    544   
 1168    545   
host:example.amazonaws.com
 1169         -
my-header1:value1,value2,value3
         546  +
my-header1:value1 value2 value3
 1170    547   
x-amz-date:20150830T123600Z
 1171    548   
 1172    549   
host;my-header1;x-amz-date
 1173    550   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1174    551   
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
 1175    552   
new file mode 100644
 1176    553   
index 0000000..e6ff7a9
 1177         -
-- /dev/null
         554  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
 1178    555   
@@ -0,0 +1 @@
         556  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
 1179    557   
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
 1180    558   
new file mode 100644
 1181    559   
index 0000000..b5ef6a0
 1182         -
-- /dev/null
         560  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
 1183    561   
@@ -0,0 +1,8 @@
         562  +
GET / HTTP/1.1
         563  +
Host:example.amazonaws.com
         564  +
My-Header1:value1
         565  +
  value2
         566  +
     value3
         567  +
X-Amz-Date:20150830T123600Z
         568  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         569  +
 1184    570   
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
 1185    571   
similarity index 53%
 1186    572   
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
 1187    573   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1188    574   
index fd43a41..97c7430 100644
 1189         -
-- 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
         575  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1190    576   
@@ -1,4 +1,4 @@
 1191    577   
AWS4-HMAC-SHA256
 1192    578   
20150830T123600Z
 1193    579   
20150830/us-east-1/service/aws4_request
 1194         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         580  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
 1195    581   
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
 1196    582   
new file mode 100644
 1197    583   
index 0000000..aac46de
 1198         -
-- /dev/null
         584  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
 1199    585   
@@ -0,0 +1,8 @@
         586  +
GET
         587  +
/
         588  +
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
         589  +
host:example.amazonaws.com
         590  +
my-header1:value1 value2 value3
         591  +
         592  +
host;my-header1
         593  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1200    594   
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
 1201    595   
new file mode 100644
 1202    596   
index 0000000..205732d
 1203         -
-- /dev/null
         597  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
 1204    598   
@@ -0,0 +1 @@
         599  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
 1205    600   
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
 1206    601   
new file mode 100644
 1207    602   
index 0000000..a891b87
 1208         -
-- /dev/null
         603  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
 1209    604   
@@ -0,0 +1,6 @@
         605  +
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
         606  +
Host:example.amazonaws.com
         607  +
My-Header1:value1
         608  +
  value2
         609  +
     value3
         610  +
 1210    611   
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
 1211    612   
similarity index 53%
 1212    613   
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
 1213    614   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1214    615   
index 90e66b8..ec3fe45 100644
 1215         -
-- 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
         616  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1216    617   
@@ -1,4 +1,4 @@
 1217    618   
AWS4-HMAC-SHA256
 1218    619   
20150830T123600Z
 1219    620   
20150830/us-east-1/service/aws4_request
 1220         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         621  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
 1221    622   
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
 1222    623   
similarity index 75%
 1223    624   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
 1224    625   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1225    626   
index 7caa6ac..b5026cd 100644
 1226         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1227    628   
@@ -1,6 +1,5 @@
 1228    629   
GET / HTTP/1.1
 1229    630   
Host:example.amazonaws.com
 1230    631   
My-Header1:value1
 1231    632   
  value2
 1232    633   
     value3
 1233         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1234    634   
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
 1235    635   
similarity index 99%
 1236    636   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
 1237    637   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1238    638   
index 45771c7..0468d80 100644
 1239         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
         639  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1240    640   
@@ -1,12 +1,12 @@
 1241    641   
{
 1242    642   
    "credentials": {
 1243    643   
        "access_key_id": "AKIDEXAMPLE",
 1244    644   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1245    645   
    },
 1246    646   
    "expiration_in_seconds": 3600,
 1247    647   
    "normalize": true,
 1248    648   
    "region": "us-east-1",
 1249    649   
    "service": "service",
 1250    650   
    "sign_body": false,
 1251    651   
    "timestamp": "2015-08-30T12:36:00Z"
 1252         -
}
         652  +
}
              \
 No newline at end of file
 1253    653   
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
 1254    654   
similarity index 100%
 1255    655   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
 1256    656   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1257    657   
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
 1258    658   
new file mode 100644
 1259    659   
index 0000000..8ef0494
 1260         -
-- /dev/null
         660  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1261    661   
@@ -0,0 +1 @@
         662  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
 1262    663   
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
 1263    664   
new file mode 100644
 1264    665   
index 0000000..b786dc9
 1265         -
-- /dev/null
         666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1266    667   
@@ -0,0 +1,9 @@
         668  +
GET / HTTP/1.1
         669  +
Host:example.amazonaws.com
         670  +
My-Header1:value4
         671  +
My-Header1:value1
         672  +
My-Header1:value3
         673  +
My-Header1:value2
         674  +
X-Amz-Date:20150830T123600Z
         675  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         676  +
 1267    677   
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
 1268    678   
similarity index 100%
 1269    679   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
 1270    680   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1271    681   
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
 1272    682   
new file mode 100644
 1273    683   
index 0000000..a211cc5
 1274         -
-- /dev/null
         684  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1275    685   
@@ -0,0 +1,8 @@
         686  +
GET
         687  +
/
         688  +
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
         689  +
host:example.amazonaws.com
         690  +
my-header1:value4,value1,value3,value2
         691  +
         692  +
host;my-header1
         693  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1276    694   
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
 1277    695   
new file mode 100644
 1278    696   
index 0000000..417b0fa
 1279         -
-- /dev/null
         697  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1280    698   
@@ -0,0 +1 @@
         699  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
 1281    700   
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
 1282    701   
new file mode 100644
 1283    702   
index 0000000..b615e5d
 1284         -
-- /dev/null
         703  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1285    704   
@@ -0,0 +1,7 @@
         705  +
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
         706  +
Host:example.amazonaws.com
         707  +
My-Header1:value4
         708  +
My-Header1:value1
         709  +
My-Header1:value3
         710  +
My-Header1:value2
         711  +
 1286    712   
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
 1287    713   
similarity index 53%
 1288    714   
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
 1289    715   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1290    716   
index f7e615e..dcaaa1b 100644
 1291         -
-- 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
         717  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1292    718   
@@ -1,4 +1,4 @@
 1293    719   
AWS4-HMAC-SHA256
 1294    720   
20150830T123600Z
 1295    721   
20150830/us-east-1/service/aws4_request
 1296         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         722  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
 1297    723   
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
 1298    724   
similarity index 100%
 1299    725   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
 1300    726   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1301    727   
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
 1302    728   
similarity index 99%
 1303    729   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
 1304    730   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1305    731   
index 45771c7..0468d80 100644
 1306         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
         732  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1307    733   
@@ -1,12 +1,12 @@
 1308    734   
{
 1309    735   
    "credentials": {
 1310    736   
        "access_key_id": "AKIDEXAMPLE",
 1311    737   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1312    738   
    },
 1313    739   
    "expiration_in_seconds": 3600,
 1314    740   
    "normalize": true,
 1315    741   
    "region": "us-east-1",
 1316    742   
    "service": "service",
 1317    743   
    "sign_body": false,
 1318    744   
    "timestamp": "2015-08-30T12:36:00Z"
 1319         -
}
         745  +
}
              \
 No newline at end of file
 1320    746   
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
 1321    747   
similarity index 100%
 1322    748   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
 1323    749   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1324    750   
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
 1325    751   
new file mode 100644
 1326    752   
index 0000000..36081a9
 1327         -
-- /dev/null
         753  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1328    754   
@@ -0,0 +1 @@
         755  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
 1329    756   
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
 1330    757   
new file mode 100644
 1331    758   
index 0000000..6331d16
 1332         -
-- /dev/null
         759  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1333    760   
@@ -0,0 +1,7 @@
         761  +
GET / HTTP/1.1
         762  +
Host:example.amazonaws.com
         763  +
My-Header1: value1
         764  +
My-Header2: "a   b   c"
         765  +
X-Amz-Date:20150830T123600Z
         766  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         767  +
 1334    768   
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
 1335    769   
similarity index 100%
 1336    770   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
 1337    771   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1338    772   
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
 1339    773   
new file mode 100644
 1340    774   
index 0000000..125c1f9
 1341         -
-- /dev/null
         775  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1342    776   
@@ -0,0 +1,9 @@
         777  +
GET
         778  +
/
         779  +
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
         780  +
host:example.amazonaws.com
         781  +
my-header1:value1
         782  +
my-header2:"a b c"
         783  +
         784  +
host;my-header1;my-header2
         785  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1343    786   
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
 1344    787   
new file mode 100644
 1345    788   
index 0000000..17007a8
 1346         -
-- /dev/null
         789  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1347    790   
@@ -0,0 +1 @@
         791  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
 1348    792   
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
 1349    793   
new file mode 100644
 1350    794   
index 0000000..e519fd9
 1351         -
-- /dev/null
         795  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1352    796   
@@ -0,0 +1,5 @@
         797  +
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
         798  +
Host:example.amazonaws.com
         799  +
My-Header1: value1
         800  +
My-Header2: "a   b   c"
         801  +
 1353    802   
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
 1354    803   
new file mode 100644
 1355    804   
index 0000000..6b4b781
 1356         -
-- /dev/null
         805  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1357    806   
@@ -0,0 +1,4 @@
         807  +
AWS4-HMAC-SHA256
         808  +
20150830T123600Z
         809  +
20150830/us-east-1/service/aws4_request
         810  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
 1358    811   
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
 1359    812   
similarity index 100%
 1360    813   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
 1361    814   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1362    815   
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
 1363    816   
new file mode 100644
 1364    817   
index 0000000..0468d80
 1365         -
-- /dev/null
         818  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1366    819   
@@ -0,0 +1,12 @@
         820  +
{
         821  +
    "credentials": {
         822  +
        "access_key_id": "AKIDEXAMPLE",
         823  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         824  +
    },
         825  +
    "expiration_in_seconds": 3600,
         826  +
    "normalize": true,
         827  +
    "region": "us-east-1",
         828  +
    "service": "service",
         829  +
    "sign_body": false,
         830  +
    "timestamp": "2015-08-30T12:36:00Z"
         831  +
}
              \
 No newline at end of file
 1367    832   
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
 1368    833   
similarity index 100%
 1369    834   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
 1370    835   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1371    836   
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
 1372    837   
new file mode 100644
 1373    838   
index 0000000..87f295f
 1374         -
-- /dev/null
         839  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1375    840   
@@ -0,0 +1 @@
         841  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1376    842   
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
 1377    843   
new file mode 100644
 1378    844   
index 0000000..0de8327
 1379         -
-- /dev/null
         845  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1380    846   
@@ -0,0 +1,5 @@
         847  +
GET /example/.. HTTP/1.1
         848  +
Host:example.amazonaws.com
         849  +
X-Amz-Date:20150830T123600Z
         850  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         851  +
 1381    852   
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
 1382    853   
similarity index 100%
 1383    854   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
 1384    855   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1385    856   
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
 1386    857   
new file mode 100644
 1387    858   
index 0000000..fb2420d
 1388         -
-- /dev/null
         859  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1389    860   
@@ -0,0 +1,7 @@
         861  +
GET
         862  +
/
         863  +
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
         864  +
host:example.amazonaws.com
         865  +
         866  +
host
         867  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1390    868   
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
 1391    869   
new file mode 100644
 1392    870   
index 0000000..da5c905
 1393         -
-- /dev/null
         871  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1394    872   
@@ -0,0 +1 @@
         873  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1395    874   
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
 1396    875   
new file mode 100644
 1397    876   
index 0000000..4329c98
 1398         -
-- /dev/null
         877  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1399    878   
@@ -0,0 +1,3 @@
         879  +
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
         880  +
Host:example.amazonaws.com
         881  +
 1400    882   
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
 1401    883   
new file mode 100644
 1402    884   
index 0000000..d837e67
 1403         -
-- /dev/null
         885  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1404    886   
@@ -0,0 +1,4 @@
         887  +
AWS4-HMAC-SHA256
         888  +
20150830T123600Z
         889  +
20150830/us-east-1/service/aws4_request
         890  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1405    891   
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
 1406    892   
similarity index 100%
 1407    893   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
 1408    894   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1409    895   
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
 1410    896   
new file mode 100644
 1411    897   
index 0000000..0468d80
 1412         -
-- /dev/null
         898  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1413    899   
@@ -0,0 +1,12 @@
         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  +
}
              \
 No newline at end of file
 1414    912   
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
 1415    913   
similarity index 100%
 1416    914   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
 1417    915   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1418    916   
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
 1419    917   
new file mode 100644
 1420    918   
index 0000000..87f295f
 1421         -
-- /dev/null
         919  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1422    920   
@@ -0,0 +1 @@
         921  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1423    922   
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
 1424    923   
new file mode 100644
 1425    924   
index 0000000..f9b3815
 1426         -
-- /dev/null
         925  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1427    926   
@@ -0,0 +1,5 @@
         927  +
GET /example1/example2/../.. HTTP/1.1
         928  +
Host:example.amazonaws.com
         929  +
X-Amz-Date:20150830T123600Z
         930  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         931  +
 1428    932   
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
 1429    933   
similarity index 100%
 1430    934   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
 1431    935   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1432    936   
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
 1433    937   
new file mode 100644
 1434    938   
index 0000000..fb2420d
 1435         -
-- /dev/null
         939  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1436    940   
@@ -0,0 +1,7 @@
         941  +
GET
         942  +
/
         943  +
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
         944  +
host:example.amazonaws.com
         945  +
         946  +
host
         947  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1437    948   
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
 1438    949   
new file mode 100644
 1439    950   
index 0000000..da5c905
 1440         -
-- /dev/null
         951  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1441    952   
@@ -0,0 +1 @@
         953  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1442    954   
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
 1443    955   
new file mode 100644
 1444    956   
index 0000000..b2988b7
 1445         -
-- /dev/null
         957  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1446    958   
@@ -0,0 +1,3 @@
         959  +
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
         960  +
Host:example.amazonaws.com
         961  +
 1447    962   
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
 1448    963   
new file mode 100644
 1449    964   
index 0000000..d837e67
 1450         -
-- /dev/null
         965  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1451    966   
@@ -0,0 +1,4 @@
         967  +
AWS4-HMAC-SHA256
         968  +
20150830T123600Z
         969  +
20150830/us-east-1/service/aws4_request
         970  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1452    971   
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
 1453    972   
similarity index 100%
 1454    973   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
 1455    974   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1456    975   
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
 1457    976   
similarity index 99%
 1458    977   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
 1459    978   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1460    979   
index afe367b..7bee5c7 100644
 1461         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
         980  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1462    981   
@@ -1,12 +1,12 @@
 1463    982   
{
 1464    983   
    "credentials": {
 1465    984   
        "access_key_id": "AKIDEXAMPLE",
 1466    985   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1467    986   
    },
 1468    987   
    "expiration_in_seconds": 3600,
 1469    988   
    "normalize": false,
 1470    989   
    "region": "us-east-1",
 1471    990   
    "service": "service",
 1472    991   
    "sign_body": false,
 1473    992   
    "timestamp": "2015-08-30T12:36:00Z"
 1474         -
}
         993  +
}
              \
 No newline at end of file
 1475    994   
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
 1476    995   
similarity index 82%
 1477    996   
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
 1478    997   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1479    998   
index 36c3cdf..6919c44 100644
 1480         -
-- 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
         999  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1481   1000   
@@ -1,8 +1,8 @@
 1482   1001   
GET
 1483         -
/
 1484         -
Param1=Value1&Param1=value2
        1002  +
/example1/example2/../..
        1003  +
 1485   1004   
host:example.amazonaws.com
 1486   1005   
x-amz-date:20150830T123600Z
 1487   1006   
 1488   1007   
host;x-amz-date
 1489   1008   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1490   1009   
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
 1491   1010   
new file mode 100644
 1492   1011   
index 0000000..4092d83
 1493         -
-- /dev/null
        1012  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1494   1013   
@@ -0,0 +1 @@
        1014  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
 1495   1015   
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
 1496   1016   
new file mode 100644
 1497   1017   
index 0000000..e731b35
 1498         -
-- /dev/null
        1018  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1499   1019   
@@ -0,0 +1,5 @@
        1020  +
GET /example1/example2/../.. HTTP/1.1
        1021  +
Host:example.amazonaws.com
        1022  +
X-Amz-Date:20150830T123600Z
        1023  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
        1024  +
 1500   1025   
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
 1501   1026   
new file mode 100644
 1502   1027   
index 0000000..4f45752
 1503         -
-- /dev/null
        1028  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1504   1029   
@@ -0,0 +1,4 @@
        1030  +
AWS4-HMAC-SHA256
        1031  +
20150830T123600Z
        1032  +
20150830/us-east-1/service/aws4_request
        1033  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
 1505   1034   
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
 1506   1035   
new file mode 100644
 1507   1036   
index 0000000..e1fb07d
 1508         -
-- /dev/null
        1037  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1509   1038   
@@ -0,0 +1,7 @@
        1039  +
GET
        1040  +
/example1/example2/../..
        1041  +
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
        1042  +
host:example.amazonaws.com
        1043  +
        1044  +
host
        1045  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1510   1046   
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
 1511   1047   
new file mode 100644
 1512   1048   
index 0000000..8ac31d7
 1513         -
-- /dev/null
        1049  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1514   1050   
@@ -0,0 +1 @@
        1051  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
 1515   1052   
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
 1516   1053   
new file mode 100644
 1517   1054   
index 0000000..ac074f9
 1518         -
-- /dev/null
        1055  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1519   1056   
@@ -0,0 +1,3 @@
        1057  +
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
        1058  +
Host:example.amazonaws.com
        1059  +
 1520   1060   
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
 1521   1061   
new file mode 100644
 1522   1062   
index 0000000..8dcb6ff
 1523         -
-- /dev/null
        1063  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1524   1064   
@@ -0,0 +1,4 @@
        1065  +
AWS4-HMAC-SHA256
        1066  +
20150830T123600Z
        1067  +
20150830/us-east-1/service/aws4_request
        1068  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
 1525   1069   
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
 1526   1070   
similarity index 100%
 1527   1071   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
 1528   1072   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1529   1073   
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
 1530   1074   
similarity index 99%
 1531   1075   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
 1532   1076   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1533   1077   
index afe367b..7bee5c7 100644
 1534         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
        1078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1535   1079   
@@ -1,12 +1,12 @@
 1536   1080   
{
 1537   1081   
    "credentials": {
 1538   1082   
        "access_key_id": "AKIDEXAMPLE",
 1539   1083   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1540   1084   
    },
 1541   1085   
    "expiration_in_seconds": 3600,
 1542   1086   
    "normalize": false,
 1543   1087   
    "region": "us-east-1",
 1544   1088   
    "service": "service",
 1545   1089   
    "sign_body": false,
 1546   1090   
    "timestamp": "2015-08-30T12:36:00Z"
 1547         -
}
        1091  +
}
              \
 No newline at end of file
 1548   1092   
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
 1549   1093   
similarity index 82%
 1550   1094   
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
 1551   1095   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1552   1096   
index 26898eb..f640bc2 100644
 1553         -
-- 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
        1097  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1554   1098   
@@ -1,8 +1,8 @@
 1555   1099   
GET
 1556         -
/
 1557         -
Param1=value1&Param1=value2
        1100  +
/example/..
        1101  +
 1558   1102   
host:example.amazonaws.com
 1559   1103   
x-amz-date:20150830T123600Z
 1560   1104   
 1561   1105   
host;x-amz-date
 1562   1106   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1563   1107   
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
 1564   1108   
new file mode 100644
 1565   1109   
index 0000000..d957303
 1566         -
-- /dev/null
        1110  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1567   1111   
@@ -0,0 +1 @@
        1112  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
 1568   1113   
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
 1569   1114   
new file mode 100644
 1570   1115   
index 0000000..4f42ffc
 1571         -
-- /dev/null
        1116  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1572   1117   
@@ -0,0 +1,5 @@
        1118  +
GET /example/.. HTTP/1.1
        1119  +
Host:example.amazonaws.com
        1120  +
X-Amz-Date:20150830T123600Z
        1121  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
        1122  +
 1573   1123   
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
 1574   1124   
new file mode 100644
 1575   1125   
index 0000000..ca54bda
 1576         -
-- /dev/null
        1126  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1577   1127   
@@ -0,0 +1,4 @@
        1128  +
AWS4-HMAC-SHA256
        1129  +
20150830T123600Z
        1130  +
20150830/us-east-1/service/aws4_request
        1131  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
 1578   1132   
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
 1579   1133   
new file mode 100644
 1580   1134   
index 0000000..dc80036
 1581         -
-- /dev/null
        1135  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1582   1136   
@@ -0,0 +1,7 @@
        1137  +
GET
        1138  +
/example/..
        1139  +
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
        1140  +
host:example.amazonaws.com
        1141  +
        1142  +
host
        1143  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1583   1144   
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
 1584   1145   
new file mode 100644
 1585   1146   
index 0000000..dfa0437
 1586         -
-- /dev/null
        1147  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1587   1148   
@@ -0,0 +1 @@
        1149  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
 1588   1150   
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
 1589   1151   
new file mode 100644
 1590   1152   
index 0000000..98367b1
 1591         -
-- /dev/null
        1153  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1592   1154   
@@ -0,0 +1,3 @@
        1155  +
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
        1156  +
Host:example.amazonaws.com
        1157  +
 1593   1158   
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
 1594   1159   
new file mode 100644
 1595   1160   
index 0000000..f65dd66
 1596         -
-- /dev/null
        1161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1597   1162   
@@ -0,0 +1,4 @@
        1163  +
AWS4-HMAC-SHA256
        1164  +
20150830T123600Z
        1165  +
20150830/us-east-1/service/aws4_request
        1166  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
 1598   1167   
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
 1599   1168   
similarity index 100%
 1600   1169   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
 1601   1170   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1602   1171   
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
 1603   1172   
new file mode 100644
 1604   1173   
index 0000000..0468d80
 1605         -
-- /dev/null
        1174  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1606   1175   
@@ -0,0 +1,12 @@
        1176  +
{
        1177  +
    "credentials": {
        1178  +
        "access_key_id": "AKIDEXAMPLE",
        1179  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1180  +
    },
        1181  +
    "expiration_in_seconds": 3600,
        1182  +
    "normalize": true,
        1183  +
    "region": "us-east-1",
        1184  +
    "service": "service",
        1185  +
    "sign_body": false,
        1186  +
    "timestamp": "2015-08-30T12:36:00Z"
        1187  +
}
              \
 No newline at end of file
 1607   1188   
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
 1608   1189   
similarity index 100%
 1609   1190   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
 1610   1191   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1611   1192   
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
 1612   1193   
new file mode 100644
 1613   1194   
index 0000000..87f295f
 1614         -
-- /dev/null
        1195  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1615   1196   
@@ -0,0 +1 @@
        1197  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1616   1198   
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
 1617   1199   
new file mode 100644
 1618   1200   
index 0000000..99c8eeb
 1619         -
-- /dev/null
        1201  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1620   1202   
@@ -0,0 +1,5 @@
        1203  +
GET /./ HTTP/1.1
        1204  +
Host:example.amazonaws.com
        1205  +
X-Amz-Date:20150830T123600Z
        1206  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1207  +
 1621   1208   
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
 1622   1209   
similarity index 100%
 1623   1210   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
 1624   1211   
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
 1625   1212   
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
 1626   1213   
new file mode 100644
 1627   1214   
index 0000000..fb2420d
 1628         -
-- /dev/null
        1215  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1629   1216   
@@ -0,0 +1,7 @@
        1217  +
GET
        1218  +
/
        1219  +
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
        1220  +
host:example.amazonaws.com
        1221  +
        1222  +
host
        1223  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1630   1224   
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
 1631   1225   
new file mode 100644
 1632   1226   
index 0000000..da5c905
 1633         -
-- /dev/null
        1227  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1634   1228   
@@ -0,0 +1 @@
        1229  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1635   1230   
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
 1636   1231   
new file mode 100644
 1637   1232   
index 0000000..2e47f69
 1638         -
-- /dev/null
        1233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1639   1234   
@@ -0,0 +1,3 @@
        1235  +
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
        1236  +
Host:example.amazonaws.com
        1237  +
 1640   1238   
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
 1641   1239   
new file mode 100644
 1642   1240   
index 0000000..d837e67
 1643         -
-- /dev/null
        1241  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1644   1242   
@@ -0,0 +1,4 @@
        1243  +
AWS4-HMAC-SHA256
        1244  +
20150830T123600Z
        1245  +
20150830/us-east-1/service/aws4_request
        1246  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1645   1247   
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
 1646   1248   
similarity index 100%
 1647   1249   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
 1648   1250   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1649   1251   
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
 1650   1252   
similarity index 99%
 1651   1253   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
 1652   1254   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1653   1255   
index afe367b..7bee5c7 100644
 1654         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
        1256  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1655   1257   
@@ -1,12 +1,12 @@
 1656   1258   
{
 1657   1259   
    "credentials": {
 1658   1260   
        "access_key_id": "AKIDEXAMPLE",
 1659   1261   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1660   1262   
    },
 1661   1263   
    "expiration_in_seconds": 3600,
 1662   1264   
    "normalize": false,
 1663   1265   
    "region": "us-east-1",
 1664   1266   
    "service": "service",
 1665   1267   
    "sign_body": false,
 1666   1268   
    "timestamp": "2015-08-30T12:36:00Z"
 1667         -
}
        1269  +
}
              \
 No newline at end of file
 1668   1270   
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
 1669   1271   
new file mode 100644
 1670   1272   
index 0000000..5159048
 1671         -
-- /dev/null
        1273  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1672   1274   
@@ -0,0 +1,8 @@
        1275  +
GET
        1276  +
/./
        1277  +
        1278  +
host:example.amazonaws.com
        1279  +
x-amz-date:20150830T123600Z
        1280  +
        1281  +
host;x-amz-date
        1282  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1673   1283   
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
 1674   1284   
new file mode 100644
 1675   1285   
index 0000000..b49ff0e
 1676         -
-- /dev/null
        1286  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1677   1287   
@@ -0,0 +1 @@
        1288  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
 1678   1289   
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
 1679   1290   
new file mode 100644
 1680   1291   
index 0000000..aeb1ffa
 1681         -
-- /dev/null
        1292  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1682   1293   
@@ -0,0 +1,5 @@
        1294  +
GET /./ HTTP/1.1
        1295  +
Host:example.amazonaws.com
        1296  +
X-Amz-Date:20150830T123600Z
        1297  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
        1298  +
 1683   1299   
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
 1684   1300   
new file mode 100644
 1685   1301   
index 0000000..b7d8caf
 1686         -
-- /dev/null
        1302  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1687   1303   
@@ -0,0 +1,4 @@
        1304  +
AWS4-HMAC-SHA256
        1305  +
20150830T123600Z
        1306  +
20150830/us-east-1/service/aws4_request
        1307  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
 1688   1308   
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
 1689   1309   
new file mode 100644
 1690   1310   
index 0000000..d4e029e
 1691         -
-- /dev/null
        1311  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1692   1312   
@@ -0,0 +1,7 @@
        1313  +
GET
        1314  +
/./
        1315  +
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
        1316  +
host:example.amazonaws.com
        1317  +
        1318  +
host
        1319  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1693   1320   
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
 1694   1321   
new file mode 100644
 1695   1322   
index 0000000..fe8f4cc
 1696         -
-- /dev/null
        1323  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1697   1324   
@@ -0,0 +1 @@
        1325  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
 1698   1326   
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
 1699   1327   
new file mode 100644
 1700   1328   
index 0000000..dcc4fc4
 1701         -
-- /dev/null
        1329  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1702   1330   
@@ -0,0 +1,3 @@
        1331  +
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
        1332  +
Host:example.amazonaws.com
        1333  +
 1703   1334   
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
 1704   1335   
new file mode 100644
 1705   1336   
index 0000000..5fb3ada
 1706         -
-- /dev/null
        1337  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1707   1338   
@@ -0,0 +1,4 @@
        1339  +
AWS4-HMAC-SHA256
        1340  +
20150830T123600Z
        1341  +
20150830/us-east-1/service/aws4_request
        1342  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
 1708   1343   
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
 1709   1344   
similarity index 100%
 1710   1345   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
 1711   1346   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1712   1347   
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
 1713   1348   
new file mode 100644
 1714   1349   
index 0000000..0468d80
 1715         -
-- /dev/null
        1350  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1716   1351   
@@ -0,0 +1,12 @@
        1352  +
{
        1353  +
    "credentials": {
        1354  +
        "access_key_id": "AKIDEXAMPLE",
        1355  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1356  +
    },
        1357  +
    "expiration_in_seconds": 3600,
        1358  +
    "normalize": true,
        1359  +
    "region": "us-east-1",
        1360  +
    "service": "service",
        1361  +
    "sign_body": false,
        1362  +
    "timestamp": "2015-08-30T12:36:00Z"
        1363  +
}
              \
 No newline at end of file
 1717   1364   
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
 1718   1365   
similarity index 100%
 1719   1366   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
 1720   1367   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1721   1368   
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
 1722   1369   
new file mode 100644
 1723   1370   
index 0000000..87f295f
 1724         -
-- /dev/null
        1371  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1725   1372   
@@ -0,0 +1 @@
        1373  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1726   1374   
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
 1727   1375   
new file mode 100644
 1728   1376   
index 0000000..b91087b
 1729         -
-- /dev/null
        1377  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1730   1378   
@@ -0,0 +1,5 @@
        1379  +
GET // HTTP/1.1
        1380  +
Host:example.amazonaws.com
        1381  +
X-Amz-Date:20150830T123600Z
        1382  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1383  +
 1731   1384   
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
 1732   1385   
similarity index 100%
 1733   1386   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
 1734   1387   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1735   1388   
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
 1736   1389   
new file mode 100644
 1737   1390   
index 0000000..fb2420d
 1738         -
-- /dev/null
        1391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1739   1392   
@@ -0,0 +1,7 @@
        1393  +
GET
        1394  +
/
        1395  +
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
        1396  +
host:example.amazonaws.com
        1397  +
        1398  +
host
        1399  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1740   1400   
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
 1741   1401   
new file mode 100644
 1742   1402   
index 0000000..da5c905
 1743         -
-- /dev/null
        1403  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1744   1404   
@@ -0,0 +1 @@
        1405  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1745   1406   
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
 1746   1407   
new file mode 100644
 1747   1408   
index 0000000..0290ba4
 1748         -
-- /dev/null
        1409  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1749   1410   
@@ -0,0 +1,3 @@
        1411  +
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
        1412  +
Host:example.amazonaws.com
        1413  +
 1750   1414   
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
 1751   1415   
new file mode 100644
 1752   1416   
index 0000000..d837e67
 1753         -
-- /dev/null
        1417  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1754   1418   
@@ -0,0 +1,4 @@
        1419  +
AWS4-HMAC-SHA256
        1420  +
20150830T123600Z
        1421  +
20150830/us-east-1/service/aws4_request
        1422  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1755   1423   
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
 1756   1424   
similarity index 100%
 1757   1425   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
 1758   1426   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1759   1427   
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
 1760   1428   
new file mode 100644
 1761   1429   
index 0000000..0468d80
 1762         -
-- /dev/null
        1430  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1763   1431   
@@ -0,0 +1,12 @@
        1432  +
{
        1433  +
    "credentials": {
        1434  +
        "access_key_id": "AKIDEXAMPLE",
        1435  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1436  +
    },
        1437  +
    "expiration_in_seconds": 3600,
        1438  +
    "normalize": true,
        1439  +
    "region": "us-east-1",
        1440  +
    "service": "service",
        1441  +
    "sign_body": false,
        1442  +
    "timestamp": "2015-08-30T12:36:00Z"
        1443  +
}
              \
 No newline at end of file
 1764   1444   
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
 1765   1445   
similarity index 100%
 1766   1446   
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
 1767   1447   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1768   1448   
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
 1769   1449   
new file mode 100644
 1770   1450   
index 0000000..8f892bf
 1771         -
-- /dev/null
        1451  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1772   1452   
@@ -0,0 +1 @@
        1453  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
 1773   1454   
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
 1774   1455   
new file mode 100644
 1775   1456   
index 0000000..2a1895c
 1776         -
-- /dev/null
        1457  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1777   1458   
@@ -0,0 +1,5 @@
        1459  +
GET /./example HTTP/1.1
        1460  +
Host:example.amazonaws.com
        1461  +
X-Amz-Date:20150830T123600Z
        1462  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
        1463  +
 1778   1464   
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
 1779   1465   
similarity index 100%
 1780   1466   
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
 1781   1467   
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
 1782   1468   
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
 1783   1469   
new file mode 100644
 1784   1470   
index 0000000..99dfc2a
 1785         -
-- /dev/null
        1471  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1786   1472   
@@ -0,0 +1,7 @@
        1473  +
GET
        1474  +
/example
        1475  +
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
        1476  +
host:example.amazonaws.com
        1477  +
        1478  +
host
        1479  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1787   1480   
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
 1788   1481   
new file mode 100644
 1789   1482   
index 0000000..fcd7a17
 1790         -
-- /dev/null
        1483  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1791   1484   
@@ -0,0 +1 @@
        1485  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
 1792   1486   
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
 1793   1487   
new file mode 100644
 1794   1488   
index 0000000..f671de2
 1795         -
-- /dev/null
        1489  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1796   1490   
@@ -0,0 +1,3 @@
        1491  +
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
        1492  +
Host:example.amazonaws.com
        1493  +
 1797   1494   
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
 1798   1495   
new file mode 100644
 1799   1496   
index 0000000..f8456dc
 1800         -
-- /dev/null
        1497  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1801   1498   
@@ -0,0 +1,4 @@
        1499  +
AWS4-HMAC-SHA256
        1500  +
20150830T123600Z
        1501  +
20150830/us-east-1/service/aws4_request
        1502  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
 1802   1503   
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
 1803   1504   
similarity index 100%
 1804   1505   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
 1805   1506   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1806   1507   
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
 1807   1508   
similarity index 99%
 1808   1509   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
 1809   1510   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1810   1511   
index afe367b..7bee5c7 100644
 1811         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
        1512  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1812   1513   
@@ -1,12 +1,12 @@
 1813   1514   
{
 1814   1515   
    "credentials": {
 1815   1516   
        "access_key_id": "AKIDEXAMPLE",
 1816   1517   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1817   1518   
    },
 1818   1519   
    "expiration_in_seconds": 3600,
 1819   1520   
    "normalize": false,
 1820   1521   
    "region": "us-east-1",
 1821   1522   
    "service": "service",
 1822   1523   
    "sign_body": false,
 1823   1524   
    "timestamp": "2015-08-30T12:36:00Z"
 1824         -
}
        1525  +
}
              \
 No newline at end of file
 1825   1526   
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
 1826   1527   
new file mode 100644
 1827   1528   
index 0000000..36698c7
 1828         -
-- /dev/null
        1529  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 1829   1530   
@@ -0,0 +1,8 @@
        1531  +
GET
        1532  +
/./example
        1533  +
        1534  +
host:example.amazonaws.com
        1535  +
x-amz-date:20150830T123600Z
        1536  +
        1537  +
host;x-amz-date
        1538  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1830   1539   
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
 1831   1540   
new file mode 100644
 1832   1541   
index 0000000..4a4b8f2
 1833         -
-- /dev/null
        1542  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 1834   1543   
@@ -0,0 +1 @@
        1544  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
 1835   1545   
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
 1836   1546   
new file mode 100644
 1837   1547   
index 0000000..d462bcd
 1838         -
-- /dev/null
        1548  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 1839   1549   
@@ -0,0 +1,5 @@
        1550  +
GET /./example HTTP/1.1
        1551  +
Host:example.amazonaws.com
        1552  +
X-Amz-Date:20150830T123600Z
        1553  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1554  +
 1840   1555   
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
 1841   1556   
new file mode 100644
 1842   1557   
index 0000000..8be78c9
 1843         -
-- /dev/null
        1558  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 1844   1559   
@@ -0,0 +1,4 @@
        1560  +
AWS4-HMAC-SHA256
        1561  +
20150830T123600Z
        1562  +
20150830/us-east-1/service/aws4_request
        1563  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
 1845   1564   
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
 1846   1565   
new file mode 100644
 1847   1566   
index 0000000..fe1103c
 1848         -
-- /dev/null
        1567  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 1849   1568   
@@ -0,0 +1,7 @@
        1569  +
GET
        1570  +
/./example
        1571  +
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
        1572  +
host:example.amazonaws.com
        1573  +
        1574  +
host
        1575  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1850   1576   
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
 1851   1577   
new file mode 100644
 1852   1578   
index 0000000..ce80762
 1853         -
-- /dev/null
        1579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 1854   1580   
@@ -0,0 +1 @@
        1581  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
 1855   1582   
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
 1856   1583   
new file mode 100644
 1857   1584   
index 0000000..30841a6
 1858         -
-- /dev/null
        1585  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 1859   1586   
@@ -0,0 +1,3 @@
        1587  +
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
        1588  +
Host:example.amazonaws.com
        1589  +
 1860   1590   
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
 1861   1591   
new file mode 100644
 1862   1592   
index 0000000..5c66509
 1863         -
-- /dev/null
        1593  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 1864   1594   
@@ -0,0 +1,4 @@
        1595  +
AWS4-HMAC-SHA256
        1596  +
20150830T123600Z
        1597  +
20150830/us-east-1/service/aws4_request
        1598  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
 1865   1599   
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
 1866   1600   
similarity index 100%
 1867   1601   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
 1868   1602   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 1869   1603   
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
 1870   1604   
new file mode 100644
 1871   1605   
index 0000000..7bee5c7
 1872         -
-- /dev/null
        1606  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 1873   1607   
@@ -0,0 +1,12 @@
        1608  +
{
        1609  +
    "credentials": {
        1610  +
        "access_key_id": "AKIDEXAMPLE",
        1611  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1612  +
    },
        1613  +
    "expiration_in_seconds": 3600,
        1614  +
    "normalize": false,
        1615  +
    "region": "us-east-1",
        1616  +
    "service": "service",
        1617  +
    "sign_body": false,
        1618  +
    "timestamp": "2015-08-30T12:36:00Z"
        1619  +
}
              \
 No newline at end of file
 1874   1620   
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
 1875   1621   
new file mode 100644
 1876   1622   
index 0000000..5860c8a
 1877         -
-- /dev/null
        1623  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 1878   1624   
@@ -0,0 +1,8 @@
        1625  +
GET
        1626  +
//
        1627  +
        1628  +
host:example.amazonaws.com
        1629  +
x-amz-date:20150830T123600Z
        1630  +
        1631  +
host;x-amz-date
        1632  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1879   1633   
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
 1880   1634   
new file mode 100644
 1881   1635   
index 0000000..8310471
 1882         -
-- /dev/null
        1636  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 1883   1637   
@@ -0,0 +1 @@
        1638  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
 1884   1639   
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
 1885   1640   
new file mode 100644
 1886   1641   
index 0000000..2a7afef
 1887         -
-- /dev/null
        1642  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 1888   1643   
@@ -0,0 +1,5 @@
        1644  +
GET // HTTP/1.1
        1645  +
Host:example.amazonaws.com
        1646  +
X-Amz-Date:20150830T123600Z
        1647  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1648  +
 1889   1649   
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
 1890   1650   
new file mode 100644
 1891   1651   
index 0000000..06059dd
 1892         -
-- /dev/null
        1652  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 1893   1653   
@@ -0,0 +1,4 @@
        1654  +
AWS4-HMAC-SHA256
        1655  +
20150830T123600Z
        1656  +
20150830/us-east-1/service/aws4_request
        1657  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
 1894   1658   
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
 1895   1659   
new file mode 100644
 1896   1660   
index 0000000..6d63aef
 1897         -
-- /dev/null
        1661  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 1898   1662   
@@ -0,0 +1,7 @@
        1663  +
GET
        1664  +
//
        1665  +
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
        1666  +
host:example.amazonaws.com
        1667  +
        1668  +
host
        1669  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1899   1670   
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
 1900   1671   
new file mode 100644
 1901   1672   
index 0000000..e5b7b6c
 1902         -
-- /dev/null
        1673  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 1903   1674   
@@ -0,0 +1 @@
        1675  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
 1904   1676   
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
 1905   1677   
new file mode 100644
 1906   1678   
index 0000000..46fe3fd
 1907         -
-- /dev/null
        1679  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 1908   1680   
@@ -0,0 +1,3 @@
        1681  +
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
        1682  +
Host:example.amazonaws.com
        1683  +
 1909   1684   
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
 1910   1685   
new file mode 100644
 1911   1686   
index 0000000..ea79940
 1912         -
-- /dev/null
        1687  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 1913   1688   
@@ -0,0 +1,4 @@
        1689  +
AWS4-HMAC-SHA256
        1690  +
20150830T123600Z
        1691  +
20150830/us-east-1/service/aws4_request
        1692  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
 1914   1693   
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
 1915   1694   
similarity index 100%
 1916   1695   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
 1917   1696   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 1918   1697   
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
 1919   1698   
new file mode 100644
 1920   1699   
index 0000000..0468d80
 1921         -
-- /dev/null
        1700  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 1922   1701   
@@ -0,0 +1,12 @@
        1702  +
{
        1703  +
    "credentials": {
        1704  +
        "access_key_id": "AKIDEXAMPLE",
        1705  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1706  +
    },
        1707  +
    "expiration_in_seconds": 3600,
        1708  +
    "normalize": true,
        1709  +
    "region": "us-east-1",
        1710  +
    "service": "service",
        1711  +
    "sign_body": false,
        1712  +
    "timestamp": "2015-08-30T12:36:00Z"
        1713  +
}
              \
 No newline at end of file
 1923   1714   
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
 1924   1715   
similarity index 100%
 1925   1716   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
 1926   1717   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 1927   1718   
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
 1928   1719   
new file mode 100644
 1929   1720   
index 0000000..71c7bac
 1930         -
-- /dev/null
        1721  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 1931   1722   
@@ -0,0 +1 @@
        1723  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
 1932   1724   
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
 1933   1725   
new file mode 100644
 1934   1726   
index 0000000..0add1f1
 1935         -
-- /dev/null
        1727  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 1936   1728   
@@ -0,0 +1,5 @@
        1729  +
GET //example// HTTP/1.1
        1730  +
Host:example.amazonaws.com
        1731  +
X-Amz-Date:20150830T123600Z
        1732  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1733  +
 1937   1734   
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
 1938   1735   
similarity index 100%
 1939   1736   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
 1940   1737   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 1941   1738   
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
 1942   1739   
new file mode 100644
 1943   1740   
index 0000000..ce72510
 1944         -
-- /dev/null
        1741  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 1945   1742   
@@ -0,0 +1,7 @@
        1743  +
GET
        1744  +
/example/
        1745  +
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
        1746  +
host:example.amazonaws.com
        1747  +
        1748  +
host
        1749  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1946   1750   
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
 1947   1751   
new file mode 100644
 1948   1752   
index 0000000..265f387
 1949         -
-- /dev/null
        1753  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 1950   1754   
@@ -0,0 +1 @@
        1755  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
 1951   1756   
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
 1952   1757   
new file mode 100644
 1953   1758   
index 0000000..e1fcb2e
 1954         -
-- /dev/null
        1759  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 1955   1760   
@@ -0,0 +1,3 @@
        1761  +
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
        1762  +
Host:example.amazonaws.com
        1763  +
 1956   1764   
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
 1957   1765   
new file mode 100644
 1958   1766   
index 0000000..a14de61
 1959         -
-- /dev/null
        1767  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 1960   1768   
@@ -0,0 +1,4 @@
        1769  +
AWS4-HMAC-SHA256
        1770  +
20150830T123600Z
        1771  +
20150830/us-east-1/service/aws4_request
        1772  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
 1961   1773   
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
 1962   1774   
similarity index 100%
 1963   1775   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
 1964   1776   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 1965   1777   
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
 1966   1778   
new file mode 100644
 1967   1779   
index 0000000..7bee5c7
 1968         -
-- /dev/null
        1780  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 1969   1781   
@@ -0,0 +1,12 @@
        1782  +
{
        1783  +
    "credentials": {
        1784  +
        "access_key_id": "AKIDEXAMPLE",
        1785  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1786  +
    },
        1787  +
    "expiration_in_seconds": 3600,
        1788  +
    "normalize": false,
        1789  +
    "region": "us-east-1",
        1790  +
    "service": "service",
        1791  +
    "sign_body": false,
        1792  +
    "timestamp": "2015-08-30T12:36:00Z"
        1793  +
}
              \
 No newline at end of file
 1970   1794   
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
 1971   1795   
new file mode 100644
 1972   1796   
index 0000000..dfffaaf
 1973         -
-- /dev/null
        1797  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 1974   1798   
@@ -0,0 +1,8 @@
        1799  +
GET
        1800  +
//example//
        1801  +
        1802  +
host:example.amazonaws.com
        1803  +
x-amz-date:20150830T123600Z
        1804  +
        1805  +
host;x-amz-date
        1806  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1975   1807   
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
 1976   1808   
new file mode 100644
 1977   1809   
index 0000000..edbcc0d
 1978         -
-- /dev/null
        1810  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 1979   1811   
@@ -0,0 +1 @@
        1812  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
 1980   1813   
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
 1981   1814   
new file mode 100644
 1982   1815   
index 0000000..4cc12dd
 1983         -
-- /dev/null
        1816  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 1984   1817   
@@ -0,0 +1,5 @@
        1818  +
GET //example// HTTP/1.1
        1819  +
Host:example.amazonaws.com
        1820  +
X-Amz-Date:20150830T123600Z
        1821  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1822  +
 1985   1823   
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
 1986   1824   
new file mode 100644
 1987   1825   
index 0000000..3eba390
 1988         -
-- /dev/null
        1826  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 1989   1827   
@@ -0,0 +1,4 @@
        1828  +
AWS4-HMAC-SHA256
        1829  +
20150830T123600Z
        1830  +
20150830/us-east-1/service/aws4_request
        1831  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
 1990   1832   
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
 1991   1833   
new file mode 100644
 1992   1834   
index 0000000..f7844e3
 1993         -
-- /dev/null
        1835  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 1994   1836   
@@ -0,0 +1,7 @@
        1837  +
GET
        1838  +
//example//
        1839  +
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
        1840  +
host:example.amazonaws.com
        1841  +
        1842  +
host
        1843  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1995   1844   
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
 1996   1845   
new file mode 100644
 1997   1846   
index 0000000..a8d6b96
 1998         -
-- /dev/null
        1847  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 1999   1848   
@@ -0,0 +1 @@
        1849  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
 2000   1850   
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
 2001   1851   
new file mode 100644
 2002   1852   
index 0000000..a8322c6
 2003         -
-- /dev/null
        1853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 2004   1854   
@@ -0,0 +1,3 @@
        1855  +
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
        1856  +
Host:example.amazonaws.com
        1857  +
 2005   1858   
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
 2006   1859   
new file mode 100644
 2007   1860   
index 0000000..068724d
 2008         -
-- /dev/null
        1861  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 2009   1862   
@@ -0,0 +1,4 @@
        1863  +
AWS4-HMAC-SHA256
        1864  +
20150830T123600Z
        1865  +
20150830/us-east-1/service/aws4_request
        1866  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
 2010   1867   
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
 2011   1868   
similarity index 100%
 2012   1869   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
 2013   1870   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 2014   1871   
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
 2015   1872   
new file mode 100644
 2016   1873   
index 0000000..0468d80
 2017         -
-- /dev/null
        1874  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 2018   1875   
@@ -0,0 +1,12 @@
        1876  +
{
        1877  +
    "credentials": {
        1878  +
        "access_key_id": "AKIDEXAMPLE",
        1879  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1880  +
    },
        1881  +
    "expiration_in_seconds": 3600,
        1882  +
    "normalize": true,
        1883  +
    "region": "us-east-1",
        1884  +
    "service": "service",
        1885  +
    "sign_body": false,
        1886  +
    "timestamp": "2015-08-30T12:36:00Z"
        1887  +
}
              \
 No newline at end of file
 2019   1888   
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
 2020   1889   
similarity index 100%
 2021   1890   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
 2022   1891   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 2023   1892   
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
 2024   1893   
new file mode 100644
 2025   1894   
index 0000000..f63892b
 2026         -
-- /dev/null
        1895  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 2027   1896   
@@ -0,0 +1 @@
        1897  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 2028   1898   
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
 2029   1899   
new file mode 100644
 2030   1900   
index 0000000..19cd5cb
 2031         -
-- /dev/null
        1901  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 2032   1902   
@@ -0,0 +1,5 @@
        1903  +
GET /example space/ HTTP/1.1
        1904  +
Host:example.amazonaws.com
        1905  +
X-Amz-Date:20150830T123600Z
        1906  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1907  +
 2033   1908   
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
 2034   1909   
similarity index 100%
 2035   1910   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
 2036   1911   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 2037   1912   
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
 2038   1913   
new file mode 100644
 2039   1914   
index 0000000..fa3d3e2
 2040         -
-- /dev/null
        1915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 2041   1916   
@@ -0,0 +1,7 @@
        1917  +
GET
        1918  +
/example%20space/
        1919  +
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
        1920  +
host:example.amazonaws.com
        1921  +
        1922  +
host
        1923  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2042   1924   
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
 2043   1925   
new file mode 100644
 2044   1926   
index 0000000..5b2e204
 2045         -
-- /dev/null
        1927  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 2046   1928   
@@ -0,0 +1 @@
        1929  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 2047   1930   
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
 2048   1931   
new file mode 100644
 2049   1932   
index 0000000..93ca1d0
 2050         -
-- /dev/null
        1933  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 2051   1934   
@@ -0,0 +1,3 @@
        1935  +
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
        1936  +
Host:example.amazonaws.com
        1937  +
 2052   1938   
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
 2053   1939   
new file mode 100644
 2054   1940   
index 0000000..b4cb789
 2055         -
-- /dev/null
        1941  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 2056   1942   
@@ -0,0 +1,4 @@
        1943  +
AWS4-HMAC-SHA256
        1944  +
20150830T123600Z
        1945  +
20150830/us-east-1/service/aws4_request
        1946  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 2057   1947   
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
 2058   1948   
new file mode 100644
 2059   1949   
index 0000000..860a277
 2060         -
-- /dev/null
        1950  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 2061   1951   
@@ -0,0 +1,2 @@
        1952  +
GET /example%20space/ HTTP/1.1
        1953  +
Host:example.amazonaws.com
 2062   1954   
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
 2063   1955   
new file mode 100644
 2064   1956   
index 0000000..7bee5c7
 2065         -
-- /dev/null
        1957  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 2066   1958   
@@ -0,0 +1,12 @@
        1959  +
{
        1960  +
    "credentials": {
        1961  +
        "access_key_id": "AKIDEXAMPLE",
        1962  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1963  +
    },
        1964  +
    "expiration_in_seconds": 3600,
        1965  +
    "normalize": false,
        1966  +
    "region": "us-east-1",
        1967  +
    "service": "service",
        1968  +
    "sign_body": false,
        1969  +
    "timestamp": "2015-08-30T12:36:00Z"
        1970  +
}
              \
 No newline at end of file
 2067   1971   
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
 2068   1972   
similarity index 66%
 2069   1973   
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
 2070   1974   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2071   1975   
index 71dc981..124a709 100644
 2072         -
-- 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
        1976  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2073   1977   
@@ -1,9 +1,8 @@
 2074         -
POST
 2075         -
/
        1978  +
GET
        1979  +
/example%20space/
 2076   1980   
 2077         -
content-type:application/x-www-form-urlencoded; charset=utf-8
 2078   1981   
host:example.amazonaws.com
 2079   1982   
x-amz-date:20150830T123600Z
 2080   1983   
 2081   1984   
host;x-amz-date
 2082   1985   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2083   1986   
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
 2084   1987   
new file mode 100644
 2085   1988   
index 0000000..f63892b
 2086         -
-- /dev/null
        1989  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 2087   1990   
@@ -0,0 +1 @@
        1991  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 2088   1992   
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
 2089   1993   
new file mode 100644
 2090   1994   
index 0000000..19cd5cb
 2091         -
-- /dev/null
        1995  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 2092   1996   
@@ -0,0 +1,5 @@
        1997  +
GET /example space/ HTTP/1.1
        1998  +
Host:example.amazonaws.com
        1999  +
X-Amz-Date:20150830T123600Z
        2000  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        2001  +
 2093   2002   
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
 2094   2003   
new file mode 100644
 2095   2004   
index 0000000..a633f0c
 2096         -
-- /dev/null
        2005  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 2097   2006   
@@ -0,0 +1,4 @@
        2007  +
AWS4-HMAC-SHA256
        2008  +
20150830T123600Z
        2009  +
20150830/us-east-1/service/aws4_request
        2010  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
 2098   2011   
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
 2099   2012   
new file mode 100644
 2100   2013   
index 0000000..fa3d3e2
 2101         -
-- /dev/null
        2014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 2102   2015   
@@ -0,0 +1,7 @@
        2016  +
GET
        2017  +
/example%20space/
        2018  +
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
        2019  +
host:example.amazonaws.com
        2020  +
        2021  +
host
        2022  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2103   2023   
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
 2104   2024   
new file mode 100644
 2105   2025   
index 0000000..5b2e204
 2106         -
-- /dev/null
        2026  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 2107   2027   
@@ -0,0 +1 @@
        2028  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 2108   2029   
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
 2109   2030   
new file mode 100644
 2110   2031   
index 0000000..93ca1d0
 2111         -
-- /dev/null
        2032  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 2112   2033   
@@ -0,0 +1,3 @@
        2034  +
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
        2035  +
Host:example.amazonaws.com
        2036  +
 2113   2037   
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
 2114   2038   
new file mode 100644
 2115   2039   
index 0000000..b4cb789
 2116         -
-- /dev/null
        2040  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 2117   2041   
@@ -0,0 +1,4 @@
        2042  +
AWS4-HMAC-SHA256
        2043  +
20150830T123600Z
        2044  +
20150830/us-east-1/service/aws4_request
        2045  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 2118   2046   
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
 2119   2047   
similarity index 67%
 2120   2048   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
 2121   2049   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2122   2050   
index b7d5e8b..ab509ab 100644
 2123         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        2051  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2124   2052   
@@ -1,3 +1,2 @@
 2125   2053   
GET /example space/ HTTP/1.1
 2126   2054   
Host:example.amazonaws.com
 2127         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2128   2055   
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
 2129   2056   
new file mode 100644
 2130   2057   
index 0000000..0468d80
 2131         -
-- /dev/null
        2058  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 2132   2059   
@@ -0,0 +1,12 @@
        2060  +
{
        2061  +
    "credentials": {
        2062  +
        "access_key_id": "AKIDEXAMPLE",
        2063  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2064  +
    },
        2065  +
    "expiration_in_seconds": 3600,
        2066  +
    "normalize": true,
        2067  +
    "region": "us-east-1",
        2068  +
    "service": "service",
        2069  +
    "sign_body": false,
        2070  +
    "timestamp": "2015-08-30T12:36:00Z"
        2071  +
}
              \
 No newline at end of file
 2133   2072   
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
 2134   2073   
similarity index 100%
 2135   2074   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
 2136   2075   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 2137   2076   
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
 2138   2077   
new file mode 100644
 2139   2078   
index 0000000..e503354
 2140         -
-- /dev/null
        2079  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 2141   2080   
@@ -0,0 +1 @@
        2081  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
 2142   2082   
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
 2143   2083   
new file mode 100644
 2144   2084   
index 0000000..4367892
 2145         -
-- /dev/null
        2085  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 2146   2086   
@@ -0,0 +1,5 @@
        2087  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        2088  +
Host:example.amazonaws.com
        2089  +
X-Amz-Date:20150830T123600Z
        2090  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        2091  +
 2147   2092   
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
 2148   2093   
similarity index 100%
 2149   2094   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
 2150   2095   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 2151   2096   
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
 2152   2097   
new file mode 100644
 2153   2098   
index 0000000..d7f0696
 2154         -
-- /dev/null
        2099  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 2155   2100   
@@ -0,0 +1,7 @@
        2101  +
GET
        2102  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        2103  +
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
        2104  +
host:example.amazonaws.com
        2105  +
        2106  +
host
        2107  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2156   2108   
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
 2157   2109   
new file mode 100644
 2158   2110   
index 0000000..509e972
 2159         -
-- /dev/null
        2111  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 2160   2112   
@@ -0,0 +1 @@
        2113  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
 2161   2114   
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
 2162   2115   
new file mode 100644
 2163   2116   
index 0000000..79aad36
 2164         -
-- /dev/null
        2117  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 2165   2118   
@@ -0,0 +1,3 @@
        2119  +
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
        2120  +
Host:example.amazonaws.com
        2121  +
 2166   2122   
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
 2167   2123   
new file mode 100644
 2168   2124   
index 0000000..e8068b3
 2169         -
-- /dev/null
        2125  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 2170   2126   
@@ -0,0 +1,4 @@
        2127  +
AWS4-HMAC-SHA256
        2128  +
20150830T123600Z
        2129  +
20150830/us-east-1/service/aws4_request
        2130  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
 2171   2131   
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
 2172   2132   
similarity index 100%
 2173   2133   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
 2174   2134   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 2175   2135   
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
 2176   2136   
new file mode 100644
 2177   2137   
index 0000000..0468d80
 2178         -
-- /dev/null
        2138  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 2179   2139   
@@ -0,0 +1,12 @@
        2140  +
{
        2141  +
    "credentials": {
        2142  +
        "access_key_id": "AKIDEXAMPLE",
        2143  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2144  +
    },
        2145  +
    "expiration_in_seconds": 3600,
        2146  +
    "normalize": true,
        2147  +
    "region": "us-east-1",
        2148  +
    "service": "service",
        2149  +
    "sign_body": false,
        2150  +
    "timestamp": "2015-08-30T12:36:00Z"
        2151  +
}
              \
 No newline at end of file
 2180   2152   
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
 2181   2153   
similarity index 100%
 2182   2154   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
 2183   2155   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 2184   2156   
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
 2185   2157   
new file mode 100644
 2186   2158   
index 0000000..9a13676
 2187         -
-- /dev/null
        2159  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 2188   2160   
@@ -0,0 +1 @@
        2161  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
 2189   2162   
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
 2190   2163   
new file mode 100644
 2191   2164   
index 0000000..5aaf47c
 2192         -
-- /dev/null
        2165  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 2193   2166   
@@ -0,0 +1,5 @@
        2167  +
GET /ሴ HTTP/1.1
        2168  +
Host:example.amazonaws.com
        2169  +
X-Amz-Date:20150830T123600Z
        2170  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        2171  +
 2194   2172   
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
 2195   2173   
similarity index 100%
 2196   2174   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
 2197   2175   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 2198   2176   
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
 2199   2177   
new file mode 100644
 2200   2178   
index 0000000..bdb77c9
 2201         -
-- /dev/null
        2179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 2202   2180   
@@ -0,0 +1,7 @@
        2181  +
GET
        2182  +
/%E1%88%B4
        2183  +
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
        2184  +
host:example.amazonaws.com
        2185  +
        2186  +
host
        2187  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2203   2188   
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
 2204   2189   
new file mode 100644
 2205   2190   
index 0000000..21342b3
 2206         -
-- /dev/null
        2191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 2207   2192   
@@ -0,0 +1 @@
        2193  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 2208   2194   
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
 2209   2195   
new file mode 100644
 2210   2196   
index 0000000..368c2ff
 2211         -
-- /dev/null
        2197  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 2212   2198   
@@ -0,0 +1,3 @@
        2199  +
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
        2200  +
Host:example.amazonaws.com
        2201  +
 2213   2202   
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
 2214   2203   
new file mode 100644
 2215   2204   
index 0000000..56b8fbf
 2216         -
-- /dev/null
        2205  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 2217   2206   
@@ -0,0 +1,4 @@
        2207  +
AWS4-HMAC-SHA256
        2208  +
20150830T123600Z
        2209  +
20150830/us-east-1/service/aws4_request
        2210  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 2218   2211   
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
 2219   2212   
similarity index 62%
 2220   2213   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 2221   2214   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2222   2215   
index da4808d..9e273f6 100644
 2223         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        2216  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2224   2217   
@@ -1,3 +1,2 @@
 2225   2218   
GET /ሴ HTTP/1.1
 2226   2219   
Host:example.amazonaws.com
 2227         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2228   2220   
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
 2229   2221   
new file mode 100644
 2230   2222   
index 0000000..0468d80
 2231         -
-- /dev/null
        2223  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 2232   2224   
@@ -0,0 +1,12 @@
        2225  +
{
        2226  +
    "credentials": {
        2227  +
        "access_key_id": "AKIDEXAMPLE",
        2228  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2229  +
    },
        2230  +
    "expiration_in_seconds": 3600,
        2231  +
    "normalize": true,
        2232  +
    "region": "us-east-1",
        2233  +
    "service": "service",
        2234  +
    "sign_body": false,
        2235  +
    "timestamp": "2015-08-30T12:36:00Z"
        2236  +
}
              \
 No newline at end of file
 2233   2237   
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
 2234   2238   
similarity index 100%
 2235   2239   
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
 2236   2240   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 2237   2241   
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
 2238   2242   
new file mode 100644
 2239   2243   
index 0000000..d7f1c1c
 2240         -
-- /dev/null
        2244  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 2241   2245   
@@ -0,0 +1 @@
        2246  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 2242   2247   
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
 2243   2248   
new file mode 100644
 2244   2249   
index 0000000..1c60790
 2245         -
-- /dev/null
        2250  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 2246   2251   
@@ -0,0 +1,5 @@
        2252  +
GET /?Param1=value1 HTTP/1.1
        2253  +
Host:example.amazonaws.com
        2254  +
X-Amz-Date:20150830T123600Z
        2255  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        2256  +
 2247   2257   
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
 2248   2258   
similarity index 100%
 2249   2259   
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
 2250   2260   
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
 2251   2261   
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
 2252   2262   
new file mode 100644
 2253   2263   
index 0000000..6a823ed
 2254         -
-- /dev/null
        2264  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 2255   2265   
@@ -0,0 +1,7 @@
        2266  +
GET
        2267  +
/
        2268  +
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
        2269  +
host:example.amazonaws.com
        2270  +
        2271  +
host
        2272  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2256   2273   
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
 2257   2274   
new file mode 100644
 2258   2275   
index 0000000..8c77136
 2259         -
-- /dev/null
        2276  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 2260   2277   
@@ -0,0 +1 @@
        2278  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 2261   2279   
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
 2262   2280   
new file mode 100644
 2263   2281   
index 0000000..2d337d8
 2264         -
-- /dev/null
        2282  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 2265   2283   
@@ -0,0 +1,3 @@
        2284  +
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
        2285  +
Host:example.amazonaws.com
        2286  +
 2266   2287   
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
 2267   2288   
new file mode 100644
 2268   2289   
index 0000000..191a484
 2269         -
-- /dev/null
        2290  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 2270   2291   
@@ -0,0 +1,4 @@
        2292  +
AWS4-HMAC-SHA256
        2293  +
20150830T123600Z
        2294  +
20150830/us-east-1/service/aws4_request
        2295  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 2271   2296   
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
 2272   2297   
similarity index 100%
 2273   2298   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 2274   2299   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 2275   2300   
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
 2276   2301   
new file mode 100644
 2277   2302   
index 0000000..0468d80
 2278         -
-- /dev/null
        2303  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 2279   2304   
@@ -0,0 +1,12 @@
        2305  +
{
        2306  +
    "credentials": {
        2307  +
        "access_key_id": "AKIDEXAMPLE",
        2308  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2309  +
    },
        2310  +
    "expiration_in_seconds": 3600,
        2311  +
    "normalize": true,
        2312  +
    "region": "us-east-1",
        2313  +
    "service": "service",
        2314  +
    "sign_body": false,
        2315  +
    "timestamp": "2015-08-30T12:36:00Z"
        2316  +
}
              \
 No newline at end of file
 2280   2317   
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
 2281   2318   
new file mode 100644
 2282   2319   
index 0000000..0c8ba21
 2283         -
-- /dev/null
        2320  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 2284   2321   
@@ -0,0 +1,8 @@
        2322  +
GET
        2323  +
/
        2324  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        2325  +
host:example.amazonaws.com
        2326  +
x-amz-date:20150830T123600Z
        2327  +
        2328  +
host;x-amz-date
        2329  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2285   2330   
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
 2286   2331   
new file mode 100644
 2287   2332   
index 0000000..9ab65ed
 2288         -
-- /dev/null
        2333  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 2289   2334   
@@ -0,0 +1 @@
        2335  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 2290   2336   
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
 2291   2337   
new file mode 100644
 2292   2338   
index 0000000..0bcdf98
 2293         -
-- /dev/null
        2339  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 2294   2340   
@@ -0,0 +1,5 @@
        2341  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2342  +
Host:example.amazonaws.com
        2343  +
X-Amz-Date:20150830T123600Z
        2344  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        2345  +
 2295   2346   
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
 2296   2347   
new file mode 100644
 2297   2348   
index 0000000..bf674ad
 2298         -
-- /dev/null
        2349  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 2299   2350   
@@ -0,0 +1,4 @@
        2351  +
AWS4-HMAC-SHA256
        2352  +
20150830T123600Z
        2353  +
20150830/us-east-1/service/aws4_request
        2354  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 2300   2355   
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
 2301   2356   
new file mode 100644
 2302   2357   
index 0000000..3f590a4
 2303         -
-- /dev/null
        2358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 2304   2359   
@@ -0,0 +1,7 @@
        2360  +
GET
        2361  +
/
        2362  +
%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
        2363  +
host:example.amazonaws.com
        2364  +
        2365  +
host
        2366  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2305   2367   
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
 2306   2368   
new file mode 100644
 2307   2369   
index 0000000..e225eab
 2308         -
-- /dev/null
        2370  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 2309   2371   
@@ -0,0 +1 @@
        2372  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 2310   2373   
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
 2311   2374   
new file mode 100644
 2312   2375   
index 0000000..6206719
 2313         -
-- /dev/null
        2376  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 2314   2377   
@@ -0,0 +1,3 @@
        2378  +
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
        2379  +
Host:example.amazonaws.com
        2380  +
 2315   2381   
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
 2316   2382   
new file mode 100644
 2317   2383   
index 0000000..81a4210
 2318         -
-- /dev/null
        2384  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2319   2385   
@@ -0,0 +1,4 @@
        2386  +
AWS4-HMAC-SHA256
        2387  +
20150830T123600Z
        2388  +
20150830/us-east-1/service/aws4_request
        2389  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 2320   2390   
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
 2321   2391   
new file mode 100644
 2322   2392   
index 0000000..368c6e3
 2323         -
-- /dev/null
        2393  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2324   2394   
@@ -0,0 +1,2 @@
        2395  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2396  +
Host:example.amazonaws.com
 2325   2397   
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
 2326   2398   
new file mode 100644
 2327   2399   
index 0000000..0468d80
 2328         -
-- /dev/null
        2400  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2329   2401   
@@ -0,0 +1,12 @@
        2402  +
{
        2403  +
    "credentials": {
        2404  +
        "access_key_id": "AKIDEXAMPLE",
        2405  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2406  +
    },
        2407  +
    "expiration_in_seconds": 3600,
        2408  +
    "normalize": true,
        2409  +
    "region": "us-east-1",
        2410  +
    "service": "service",
        2411  +
    "sign_body": false,
        2412  +
    "timestamp": "2015-08-30T12:36:00Z"
        2413  +
}
              \
 No newline at end of file
 2330   2414   
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
 2331   2415   
similarity index 100%
 2332   2416   
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
 2333   2417   
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
 2334   2418   
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
 2335   2419   
new file mode 100644
 2336   2420   
index 0000000..6a8cb9d
 2337         -
-- /dev/null
        2421  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2338   2422   
@@ -0,0 +1 @@
        2423  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 2339   2424   
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
 2340   2425   
new file mode 100644
 2341   2426   
index 0000000..f78a9d2
 2342         -
-- /dev/null
        2427  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2343   2428   
@@ -0,0 +1,5 @@
        2429  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        2430  +
Host:example.amazonaws.com
        2431  +
X-Amz-Date:20150830T123600Z
        2432  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        2433  +
 2344   2434   
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
 2345   2435   
similarity index 100%
 2346   2436   
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
 2347   2437   
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
 2348   2438   
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
 2349   2439   
new file mode 100644
 2350   2440   
index 0000000..a6e1bc7
 2351         -
-- /dev/null
        2441  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2352   2442   
@@ -0,0 +1,7 @@
        2443  +
GET
        2444  +
/
        2445  +
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
        2446  +
host:example.amazonaws.com
        2447  +
        2448  +
host
        2449  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2353   2450   
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
 2354   2451   
new file mode 100644
 2355   2452   
index 0000000..d6e6a88
 2356         -
-- /dev/null
        2453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2357   2454   
@@ -0,0 +1 @@
        2455  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 2358   2456   
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
 2359   2457   
new file mode 100644
 2360   2458   
index 0000000..538e2f0
 2361         -
-- /dev/null
        2459  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2362   2460   
@@ -0,0 +1,3 @@
        2461  +
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
        2462  +
Host:example.amazonaws.com
        2463  +
 2363   2464   
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
 2364   2465   
new file mode 100644
 2365   2466   
index 0000000..e696085
 2366         -
-- /dev/null
        2467  +
++ 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
 2367   2468   
@@ -0,0 +1,4 @@
        2469  +
AWS4-HMAC-SHA256
        2470  +
20150830T123600Z
        2471  +
20150830/us-east-1/service/aws4_request
        2472  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 2368   2473   
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
 2369   2474   
similarity index 100%
 2370   2475   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 2371   2476   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2372   2477   
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
 2373   2478   
new file mode 100644
 2374   2479   
index 0000000..0468d80
 2375         -
-- /dev/null
        2480  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2376   2481   
@@ -0,0 +1,12 @@
        2482  +
{
        2483  +
    "credentials": {
        2484  +
        "access_key_id": "AKIDEXAMPLE",
        2485  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2486  +
    },
        2487  +
    "expiration_in_seconds": 3600,
        2488  +
    "normalize": true,
        2489  +
    "region": "us-east-1",
        2490  +
    "service": "service",
        2491  +
    "sign_body": false,
        2492  +
    "timestamp": "2015-08-30T12:36:00Z"
        2493  +
}
              \
 No newline at end of file
 2377   2494   
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
 2378   2495   
similarity index 100%
 2379   2496   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 2380   2497   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2381   2498   
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
 2382   2499   
new file mode 100644
 2383   2500   
index 0000000..876a64b
 2384         -
-- /dev/null
        2501  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2385   2502   
@@ -0,0 +1 @@
        2503  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 2386   2504   
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
 2387   2505   
similarity index 50%
 2388   2506   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 2389   2507   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2390   2508   
index ba1ef40..9d0d993 100644
 2391         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        2509  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2392   2510   
@@ -1,4 +1,5 @@
 2393   2511   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 2394   2512   
Host:example.amazonaws.com
 2395   2513   
X-Amz-Date:20150830T123600Z
 2396         -
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
        2514  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        2515  +
 2397   2516   
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
 2398   2517   
similarity index 100%
 2399   2518   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 2400   2519   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2401   2520   
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
 2402   2521   
new file mode 100644
 2403   2522   
index 0000000..a1bac59
 2404         -
-- /dev/null
        2523  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2405   2524   
@@ -0,0 +1,7 @@
        2525  +
GET
        2526  +
/
        2527  +
-._~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
        2528  +
host:example.amazonaws.com
        2529  +
        2530  +
host
        2531  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2406   2532   
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
 2407   2533   
new file mode 100644
 2408   2534   
index 0000000..41881e9
 2409         -
-- /dev/null
        2535  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2410   2536   
@@ -0,0 +1 @@
        2537  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 2411   2538   
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
 2412   2539   
new file mode 100644
 2413   2540   
index 0000000..3179076
 2414         -
-- /dev/null
        2541  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2415   2542   
@@ -0,0 +1,3 @@
        2543  +
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
        2544  +
Host:example.amazonaws.com
        2545  +
 2416   2546   
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
 2417   2547   
new file mode 100644
 2418   2548   
index 0000000..6d675fc
 2419         -
-- /dev/null
        2549  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2420   2550   
@@ -0,0 +1,4 @@
        2551  +
AWS4-HMAC-SHA256
        2552  +
20150830T123600Z
        2553  +
20150830/us-east-1/service/aws4_request
        2554  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 2421   2555   
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
 2422   2556   
similarity index 100%
 2423   2557   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 2424   2558   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2425   2559   
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
 2426   2560   
new file mode 100644
 2427   2561   
index 0000000..0468d80
 2428         -
-- /dev/null
        2562  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2429   2563   
@@ -0,0 +1,12 @@
        2564  +
{
        2565  +
    "credentials": {
        2566  +
        "access_key_id": "AKIDEXAMPLE",
        2567  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2568  +
    },
        2569  +
    "expiration_in_seconds": 3600,
        2570  +
    "normalize": true,
        2571  +
    "region": "us-east-1",
        2572  +
    "service": "service",
        2573  +
    "sign_body": false,
        2574  +
    "timestamp": "2015-08-30T12:36:00Z"
        2575  +
}
              \
 No newline at end of file
 2430   2576   
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
 2431   2577   
similarity index 100%
 2432   2578   
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
 2433   2579   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2434   2580   
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
 2435   2581   
new file mode 100644
 2436   2582   
index 0000000..87f295f
 2437         -
-- /dev/null
        2583  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2438   2584   
@@ -0,0 +1 @@
        2585  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2439   2586   
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
 2440   2587   
new file mode 100644
 2441   2588   
index 0000000..36b86e7
 2442         -
-- /dev/null
        2589  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2443   2590   
@@ -0,0 +1,5 @@
        2591  +
GET / HTTP/1.1
        2592  +
Host:example.amazonaws.com
        2593  +
X-Amz-Date:20150830T123600Z
        2594  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2595  +
 2444   2596   
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
 2445   2597   
similarity index 100%
 2446   2598   
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
 2447   2599   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2448   2600   
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
 2449   2601   
new file mode 100644
 2450   2602   
index 0000000..fb2420d
 2451         -
-- /dev/null
        2603  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2452   2604   
@@ -0,0 +1,7 @@
        2605  +
GET
        2606  +
/
        2607  +
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
        2608  +
host:example.amazonaws.com
        2609  +
        2610  +
host
        2611  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2453   2612   
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
 2454   2613   
new file mode 100644
 2455   2614   
index 0000000..da5c905
 2456         -
-- /dev/null
        2615  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2457   2616   
@@ -0,0 +1 @@
        2617  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2458   2618   
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
 2459   2619   
new file mode 100644
 2460   2620   
index 0000000..eeb7a8f
 2461         -
-- /dev/null
        2621  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2462   2622   
@@ -0,0 +1,3 @@
        2623  +
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
        2624  +
Host:example.amazonaws.com
        2625  +
 2463   2626   
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
 2464   2627   
new file mode 100644
 2465   2628   
index 0000000..d837e67
 2466         -
-- /dev/null
        2629  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2467   2630   
@@ -0,0 +1,4 @@
        2631  +
AWS4-HMAC-SHA256
        2632  +
20150830T123600Z
        2633  +
20150830/us-east-1/service/aws4_request
        2634  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2468   2635   
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
 2469   2636   
similarity index 100%
 2470   2637   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 2471   2638   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2472   2639   
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
 2473   2640   
new file mode 100644
 2474   2641   
index 0000000..0468d80
 2475         -
-- /dev/null
        2642  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2476   2643   
@@ -0,0 +1,12 @@
        2644  +
{
        2645  +
    "credentials": {
        2646  +
        "access_key_id": "AKIDEXAMPLE",
        2647  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2648  +
    },
        2649  +
    "expiration_in_seconds": 3600,
        2650  +
    "normalize": true,
        2651  +
    "region": "us-east-1",
        2652  +
    "service": "service",
        2653  +
    "sign_body": false,
        2654  +
    "timestamp": "2015-08-30T12:36:00Z"
        2655  +
}
              \
 No newline at end of file
 2477   2656   
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
 2478   2657   
similarity index 100%
 2479   2658   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 2480   2659   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2481   2660   
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
 2482   2661   
new file mode 100644
 2483   2662   
index 0000000..19a2cc9
 2484         -
-- /dev/null
        2663  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2485   2664   
@@ -0,0 +1 @@
        2665  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 2486   2666   
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
 2487   2667   
new file mode 100644
 2488   2668   
index 0000000..acb13ee
 2489         -
-- /dev/null
        2669  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2490   2670   
@@ -0,0 +1,5 @@
        2671  +
GET /?ሴ=bar HTTP/1.1
        2672  +
Host:example.amazonaws.com
        2673  +
X-Amz-Date:20150830T123600Z
        2674  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2675  +
 2491   2676   
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
 2492   2677   
similarity index 100%
 2493   2678   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 2494   2679   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2495   2680   
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
 2496   2681   
new file mode 100644
 2497   2682   
index 0000000..92cee62
 2498         -
-- /dev/null
        2683  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2499   2684   
@@ -0,0 +1,7 @@
        2685  +
GET
        2686  +
/
        2687  +
%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
        2688  +
host:example.amazonaws.com
        2689  +
        2690  +
host
        2691  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2500   2692   
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
 2501   2693   
new file mode 100644
 2502   2694   
index 0000000..c9e49de
 2503         -
-- /dev/null
        2695  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2504   2696   
@@ -0,0 +1 @@
        2697  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 2505   2698   
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
 2506   2699   
new file mode 100644
 2507   2700   
index 0000000..8f4d8d0
 2508         -
-- /dev/null
        2701  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2509   2702   
@@ -0,0 +1,3 @@
        2703  +
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
        2704  +
Host:example.amazonaws.com
        2705  +
 2510   2706   
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
 2511   2707   
new file mode 100644
 2512   2708   
index 0000000..a6181dc
 2513         -
-- /dev/null
        2709  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2514   2710   
@@ -0,0 +1,4 @@
        2711  +
AWS4-HMAC-SHA256
        2712  +
20150830T123600Z
        2713  +
20150830/us-east-1/service/aws4_request
        2714  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 2515   2715   
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
 2516   2716   
similarity index 64%
 2517   2717   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 2518   2718   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2519   2719   
index cc2757e..aff333a 100644
 2520         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2521   2721   
@@ -1,3 +1,2 @@
 2522   2722   
GET /?ሴ=bar HTTP/1.1
 2523   2723   
Host:example.amazonaws.com
 2524         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2525   2724   
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
 2526   2725   
similarity index 99%
 2527   2726   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 2528   2727   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2529   2728   
index a457c8a..a334e18 100644
 2530         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
        2729  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2531   2730   
@@ -1,13 +1,13 @@
 2532   2731   
{
 2533   2732   
    "credentials": {
 2534   2733   
        "access_key_id": "AKIDEXAMPLE",
 2535   2734   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
 2536   2735   
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
 2537   2736   
    },
 2538   2737   
    "expiration_in_seconds": 3600,
 2539   2738   
    "normalize": true,
 2540   2739   
    "region": "us-east-1",
 2541   2740   
    "service": "service",
 2542   2741   
    "sign_body": false,
 2543   2742   
    "timestamp": "2015-08-30T12:36:00Z"
 2544         -
}
        2743  +
}
              \
 No newline at end of file
 2545   2744   
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
 2546   2745   
new file mode 100644
 2547   2746   
index 0000000..ccacdeb
 2548         -
-- /dev/null
        2747  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2549   2748   
@@ -0,0 +1,9 @@
        2749  +
GET
        2750  +
/
        2751  +
        2752  +
host:example.amazonaws.com
        2753  +
x-amz-date:20150830T123600Z
        2754  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2755  +
        2756  +
host;x-amz-date;x-amz-security-token
        2757  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2550   2758   
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
 2551   2759   
new file mode 100644
 2552   2760   
index 0000000..083e30d
 2553         -
-- /dev/null
        2761  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2554   2762   
@@ -0,0 +1 @@
        2763  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 2555   2764   
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
 2556   2765   
new file mode 100644
 2557   2766   
index 0000000..5287932
 2558         -
-- /dev/null
        2767  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2559   2768   
@@ -0,0 +1,6 @@
        2769  +
GET / HTTP/1.1
        2770  +
Host:example.amazonaws.com
        2771  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2772  +
X-Amz-Date:20150830T123600Z
        2773  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2774  +
 2560   2775   
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
 2561   2776   
new file mode 100644
 2562   2777   
index 0000000..742b880
 2563         -
-- /dev/null
        2778  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2564   2779   
@@ -0,0 +1,4 @@
        2780  +
AWS4-HMAC-SHA256
        2781  +
20150830T123600Z
        2782  +
20150830/us-east-1/service/aws4_request
        2783  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 2565   2784   
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
 2566   2785   
new file mode 100644
 2567   2786   
index 0000000..5e75179
 2568         -
-- /dev/null
        2787  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2569   2788   
@@ -0,0 +1,7 @@
        2789  +
GET
        2790  +
/
        2791  +
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
        2792  +
host:example.amazonaws.com
        2793  +
        2794  +
host
        2795  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2570   2796   
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
 2571   2797   
new file mode 100644
 2572   2798   
index 0000000..50b947f
 2573         -
-- /dev/null
        2799  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2574   2800   
@@ -0,0 +1 @@
        2801  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 2575   2802   
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
 2576   2803   
new file mode 100644
 2577   2804   
index 0000000..aee910b
 2578         -
-- /dev/null
        2805  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2579   2806   
@@ -0,0 +1,3 @@
        2807  +
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
        2808  +
Host:example.amazonaws.com
        2809  +
 2580   2810   
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
 2581   2811   
new file mode 100644
 2582   2812   
index 0000000..04a6c17
 2583         -
-- /dev/null
        2813  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2584   2814   
@@ -0,0 +1,4 @@
        2815  +
AWS4-HMAC-SHA256
        2816  +
20150830T123600Z
        2817  +
20150830/us-east-1/service/aws4_request
        2818  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 2585   2819   
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
 2586   2820   
similarity index 100%
 2587   2821   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 2588   2822   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2589   2823   
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
 2590   2824   
new file mode 100644
 2591   2825   
index 0000000..0468d80
 2592         -
-- /dev/null
        2826  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2593   2827   
@@ -0,0 +1,12 @@
        2828  +
{
        2829  +
    "credentials": {
        2830  +
        "access_key_id": "AKIDEXAMPLE",
        2831  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2832  +
    },
        2833  +
    "expiration_in_seconds": 3600,
        2834  +
    "normalize": true,
        2835  +
    "region": "us-east-1",
        2836  +
    "service": "service",
        2837  +
    "sign_body": false,
        2838  +
    "timestamp": "2015-08-30T12:36:00Z"
        2839  +
}
              \
 No newline at end of file
 2594   2840   
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
 2595   2841   
similarity index 100%
 2596   2842   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 2597   2843   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2598   2844   
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
 2599   2845   
new file mode 100644
 2600   2846   
index 0000000..87f295f
 2601         -
-- /dev/null
        2847  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2602   2848   
@@ -0,0 +1 @@
        2849  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2603   2850   
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
 2604   2851   
new file mode 100644
 2605   2852   
index 0000000..36b86e7
 2606         -
-- /dev/null
        2853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2607   2854   
@@ -0,0 +1,5 @@
        2855  +
GET / HTTP/1.1
        2856  +
Host:example.amazonaws.com
        2857  +
X-Amz-Date:20150830T123600Z
        2858  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2859  +
 2608   2860   
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
 2609   2861   
similarity index 100%
 2610   2862   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 2611   2863   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2612   2864   
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
 2613   2865   
new file mode 100644
 2614   2866   
index 0000000..fb2420d
 2615         -
-- /dev/null
        2867  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2616   2868   
@@ -0,0 +1,7 @@
        2869  +
GET
        2870  +
/
        2871  +
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
        2872  +
host:example.amazonaws.com
        2873  +
        2874  +
host
        2875  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2617   2876   
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
 2618   2877   
new file mode 100644
 2619   2878   
index 0000000..da5c905
 2620         -
-- /dev/null
        2879  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2621   2880   
@@ -0,0 +1 @@
        2881  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2622   2882   
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
 2623   2883   
new file mode 100644
 2624   2884   
index 0000000..eeb7a8f
 2625         -
-- /dev/null
        2885  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2626   2886   
@@ -0,0 +1,3 @@
        2887  +
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
        2888  +
Host:example.amazonaws.com
        2889  +
 2627   2890   
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
 2628   2891   
new file mode 100644
 2629   2892   
index 0000000..d837e67
 2630         -
-- /dev/null
        2893  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2631   2894   
@@ -0,0 +1,4 @@
        2895  +
AWS4-HMAC-SHA256
        2896  +
20150830T123600Z
        2897  +
20150830/us-east-1/service/aws4_request
        2898  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2632   2899   
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
 2633   2900   
similarity index 100%
 2634   2901   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 2635   2902   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2636   2903   
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
 2637   2904   
new file mode 100644
 2638   2905   
index 0000000..0468d80
 2639         -
-- /dev/null
        2906  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2640   2907   
@@ -0,0 +1,12 @@
        2908  +
{
        2909  +
    "credentials": {
        2910  +
        "access_key_id": "AKIDEXAMPLE",
        2911  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2912  +
    },
        2913  +
    "expiration_in_seconds": 3600,
        2914  +
    "normalize": true,
        2915  +
    "region": "us-east-1",
        2916  +
    "service": "service",
        2917  +
    "sign_body": false,
        2918  +
    "timestamp": "2015-08-30T12:36:00Z"
        2919  +
}
              \
 No newline at end of file
 2641   2920   
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
 2642   2921   
similarity index 100%
 2643   2922   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 2644   2923   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2645   2924   
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
 2646   2925   
new file mode 100644
 2647   2926   
index 0000000..629487f
 2648         -
-- /dev/null
        2927  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2649   2928   
@@ -0,0 +1 @@
        2929  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2650   2930   
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
 2651   2931   
new file mode 100644
 2652   2932   
index 0000000..0d99b1c
 2653         -
-- /dev/null
        2933  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2654   2934   
@@ -0,0 +1,5 @@
        2935  +
POST / HTTP/1.1
        2936  +
Host:example.amazonaws.com
        2937  +
X-Amz-Date:20150830T123600Z
        2938  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2939  +
 2655   2940   
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
 2656   2941   
similarity index 100%
 2657   2942   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 2658   2943   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2659   2944   
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
 2660   2945   
new file mode 100644
 2661   2946   
index 0000000..d3341e7
 2662         -
-- /dev/null
        2947  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2663   2948   
@@ -0,0 +1,7 @@
        2949  +
POST
        2950  +
/
        2951  +
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
        2952  +
host:example.amazonaws.com
        2953  +
        2954  +
host
        2955  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2664   2956   
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
 2665   2957   
new file mode 100644
 2666   2958   
index 0000000..79f7e0d
 2667         -
-- /dev/null
        2959  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2668   2960   
@@ -0,0 +1 @@
        2961  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2669   2962   
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
 2670   2963   
new file mode 100644
 2671   2964   
index 0000000..94f1b21
 2672         -
-- /dev/null
        2965  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2673   2966   
@@ -0,0 +1,3 @@
        2967  +
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
        2968  +
Host:example.amazonaws.com
        2969  +
 2674   2970   
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
 2675   2971   
new file mode 100644
 2676   2972   
index 0000000..e8f335b
 2677         -
-- /dev/null
        2973  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2678   2974   
@@ -0,0 +1,4 @@
        2975  +
AWS4-HMAC-SHA256
        2976  +
20150830T123600Z
        2977  +
20150830/us-east-1/service/aws4_request
        2978  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2679   2979   
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
 2680   2980   
similarity index 100%
 2681   2981   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 2682   2982   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2683   2983   
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
 2684   2984   
new file mode 100644
 2685   2985   
index 0000000..0468d80
 2686         -
-- /dev/null
        2986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2687   2987   
@@ -0,0 +1,12 @@
        2988  +
{
        2989  +
    "credentials": {
        2990  +
        "access_key_id": "AKIDEXAMPLE",
        2991  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2992  +
    },
        2993  +
    "expiration_in_seconds": 3600,
        2994  +
    "normalize": true,
        2995  +
    "region": "us-east-1",
        2996  +
    "service": "service",
        2997  +
    "sign_body": false,
        2998  +
    "timestamp": "2015-08-30T12:36:00Z"
        2999  +
}
              \
 No newline at end of file
 2688   3000   
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
 2689   3001   
similarity index 100%
 2690   3002   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 2691   3003   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2692   3004   
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
 2693   3005   
new file mode 100644
 2694   3006   
index 0000000..e4e6428
 2695         -
-- /dev/null
        3007  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2696   3008   
@@ -0,0 +1 @@
        3009  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 2697   3010   
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
 2698   3011   
new file mode 100644
 2699   3012   
index 0000000..e3778f5
 2700         -
-- /dev/null
        3013  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2701   3014   
@@ -0,0 +1,6 @@
        3015  +
POST / HTTP/1.1
        3016  +
Host:example.amazonaws.com
        3017  +
My-Header1:value1
        3018  +
X-Amz-Date:20150830T123600Z
        3019  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        3020  +
 2702   3021   
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
 2703   3022   
similarity index 100%
 2704   3023   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 2705   3024   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2706   3025   
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
 2707   3026   
new file mode 100644
 2708   3027   
index 0000000..bd7c937
 2709         -
-- /dev/null
        3028  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2710   3029   
@@ -0,0 +1,8 @@
        3030  +
POST
        3031  +
/
        3032  +
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
        3033  +
host:example.amazonaws.com
        3034  +
my-header1:value1
        3035  +
        3036  +
host;my-header1
        3037  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2711   3038   
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
 2712   3039   
new file mode 100644
 2713   3040   
index 0000000..0416f13
 2714         -
-- /dev/null
        3041  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2715   3042   
@@ -0,0 +1 @@
        3043  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 2716   3044   
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
 2717   3045   
new file mode 100644
 2718   3046   
index 0000000..5e6522f
 2719         -
-- /dev/null
        3047  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2720   3048   
@@ -0,0 +1,4 @@
        3049  +
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
        3050  +
Host:example.amazonaws.com
        3051  +
My-Header1:value1
        3052  +
 2721   3053   
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
 2722   3054   
new file mode 100644
 2723   3055   
index 0000000..d06d1df
 2724         -
-- /dev/null
        3056  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2725   3057   
@@ -0,0 +1,4 @@
        3058  +
AWS4-HMAC-SHA256
        3059  +
20150830T123600Z
        3060  +
20150830/us-east-1/service/aws4_request
        3061  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 2726   3062   
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
 2727   3063   
similarity index 100%
 2728   3064   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 2729   3065   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2730   3066   
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
 2731   3067   
new file mode 100644
 2732   3068   
index 0000000..0468d80
 2733         -
-- /dev/null
        3069  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2734   3070   
@@ -0,0 +1,12 @@
        3071  +
{
        3072  +
    "credentials": {
        3073  +
        "access_key_id": "AKIDEXAMPLE",
        3074  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3075  +
    },
        3076  +
    "expiration_in_seconds": 3600,
        3077  +
    "normalize": true,
        3078  +
    "region": "us-east-1",
        3079  +
    "service": "service",
        3080  +
    "sign_body": false,
        3081  +
    "timestamp": "2015-08-30T12:36:00Z"
        3082  +
}
              \
 No newline at end of file
 2735   3083   
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
 2736   3084   
similarity index 100%
 2737   3085   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 2738   3086   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2739   3087   
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
 2740   3088   
new file mode 100644
 2741   3089   
index 0000000..bb3809c
 2742         -
-- /dev/null
        3090  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2743   3091   
@@ -0,0 +1 @@
        3092  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 2744   3093   
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
 2745   3094   
new file mode 100644
 2746   3095   
index 0000000..10f6761
 2747         -
-- /dev/null
        3096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2748   3097   
@@ -0,0 +1,6 @@
        3098  +
POST / HTTP/1.1
        3099  +
Host:example.amazonaws.com
        3100  +
My-Header1:VALUE1
        3101  +
X-Amz-Date:20150830T123600Z
        3102  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        3103  +
 2749   3104   
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
 2750   3105   
similarity index 100%
 2751   3106   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 2752   3107   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2753   3108   
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
 2754   3109   
new file mode 100644
 2755   3110   
index 0000000..f84856f
 2756         -
-- /dev/null
        3111  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2757   3112   
@@ -0,0 +1,8 @@
        3113  +
POST
        3114  +
/
        3115  +
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
        3116  +
host:example.amazonaws.com
        3117  +
my-header1:VALUE1
        3118  +
        3119  +
host;my-header1
        3120  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2758   3121   
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
 2759   3122   
new file mode 100644
 2760   3123   
index 0000000..a9d3cac
 2761         -
-- /dev/null
        3124  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2762   3125   
@@ -0,0 +1 @@
        3126  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 2763   3127   
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
 2764   3128   
new file mode 100644
 2765   3129   
index 0000000..cf96c7c
 2766         -
-- /dev/null
        3130  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2767   3131   
@@ -0,0 +1,4 @@
        3132  +
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
        3133  +
Host:example.amazonaws.com
        3134  +
My-Header1:VALUE1
        3135  +
 2768   3136   
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
 2769   3137   
new file mode 100644
 2770   3138   
index 0000000..47ef566
 2771         -
-- /dev/null
        3139  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2772   3140   
@@ -0,0 +1,4 @@
        3141  +
AWS4-HMAC-SHA256
        3142  +
20150830T123600Z
        3143  +
20150830/us-east-1/service/aws4_request
        3144  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 2773   3145   
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
 2774   3146   
similarity index 100%
 2775   3147   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 2776   3148   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2777   3149   
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
 2778   3150   
similarity index 100%
 2779   3151   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 2780   3152   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2781   3153   
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
 2782   3154   
similarity index 100%
 2783   3155   
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
 2784   3156   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2785   3157   
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
 2786   3158   
new file mode 100644
 2787   3159   
index 0000000..629487f
 2788         -
-- /dev/null
        3160  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2789   3161   
@@ -0,0 +1 @@
        3162  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2790   3163   
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
 2791   3164   
similarity index 67%
 2792   3165   
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
 2793   3166   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2794   3167   
index 291ed07..f96ff9e 100644
 2795         -
-- 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
        3168  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2796   3169   
@@ -1,5 +1,6 @@
 2797   3170   
POST / HTTP/1.1
 2798   3171   
Host:example.amazonaws.com
 2799         -
X-Amz-Date:20150830T123600Z
 2800   3172   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2801         -
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
        3173  +
X-Amz-Date:20150830T123600Z
        3174  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3175  +
 2802   3176   
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
 2803   3177   
similarity index 100%
 2804   3178   
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
 2805   3179   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2806   3180   
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
 2807   3181   
new file mode 100644
 2808   3182   
index 0000000..d3341e7
 2809         -
-- /dev/null
        3183  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 2810   3184   
@@ -0,0 +1,7 @@
        3185  +
POST
        3186  +
/
        3187  +
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
        3188  +
host:example.amazonaws.com
        3189  +
        3190  +
host
        3191  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2811   3192   
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
 2812   3193   
new file mode 100644
 2813   3194   
index 0000000..79f7e0d
 2814         -
-- /dev/null
        3195  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 2815   3196   
@@ -0,0 +1 @@
        3197  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2816   3198   
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
 2817   3199   
new file mode 100644
 2818   3200   
index 0000000..4983268
 2819         -
-- /dev/null
        3201  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 2820   3202   
@@ -0,0 +1,3 @@
        3203  +
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
        3204  +
Host:example.amazonaws.com
        3205  +
 2821   3206   
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
 2822   3207   
new file mode 100644
 2823   3208   
index 0000000..e8f335b
 2824         -
-- /dev/null
        3209  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 2825   3210   
@@ -0,0 +1,4 @@
        3211  +
AWS4-HMAC-SHA256
        3212  +
20150830T123600Z
        3213  +
20150830/us-east-1/service/aws4_request
        3214  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2826   3215   
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
 2827   3216   
similarity index 100%
 2828   3217   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 2829   3218   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 2830   3219   
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
 2831   3220   
similarity index 100%
 2832   3221   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 2833   3222   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 2834   3223   
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
 2835   3224   
similarity index 100%
 2836   3225   
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
 2837   3226   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2838   3227   
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
 2839   3228   
new file mode 100644
 2840   3229   
index 0000000..85a7c29
 2841         -
-- /dev/null
        3230  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 2842   3231   
@@ -0,0 +1 @@
        3232  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 2843   3233   
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
 2844   3234   
similarity index 65%
 2845   3235   
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
 2846   3236   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2847   3237   
index 37b2f04..4d0b143 100644
 2848         -
-- 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
        3238  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2849   3239   
@@ -1,5 +1,6 @@
 2850   3240   
POST / HTTP/1.1
 2851   3241   
Host:example.amazonaws.com
 2852         -
X-Amz-Date:20150830T123600Z
 2853   3242   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2854         -
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
        3243  +
X-Amz-Date:20150830T123600Z
        3244  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        3245  +
 2855   3246   
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
 2856   3247   
similarity index 100%
 2857   3248   
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
 2858   3249   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 2859   3250   
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
 2860   3251   
new file mode 100644
 2861   3252   
index 0000000..57a7bc3
 2862         -
-- /dev/null
        3253  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 2863   3254   
@@ -0,0 +1,7 @@
        3255  +
POST
        3256  +
/
        3257  +
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
        3258  +
host:example.amazonaws.com
        3259  +
        3260  +
host
        3261  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2864   3262   
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
 2865   3263   
new file mode 100644
 2866   3264   
index 0000000..eb905d2
 2867         -
-- /dev/null
        3265  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 2868   3266   
@@ -0,0 +1 @@
        3267  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 2869   3268   
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
 2870   3269   
new file mode 100644
 2871   3270   
index 0000000..1d80ec0
 2872         -
-- /dev/null
        3271  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 2873   3272   
@@ -0,0 +1,3 @@
        3273  +
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
        3274  +
Host:example.amazonaws.com
        3275  +
 2874   3276   
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
 2875   3277   
new file mode 100644
 2876   3278   
index 0000000..bd0239a
 2877         -
-- /dev/null
        3279  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 2878   3280   
@@ -0,0 +1,4 @@
        3281  +
AWS4-HMAC-SHA256
        3282  +
20150830T123600Z
        3283  +
20150830/us-east-1/service/aws4_request
        3284  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 2879   3285   
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
 2880   3286   
similarity index 100%
 2881   3287   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 2882   3288   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 2883   3289   
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
 2884   3290   
new file mode 100644
 2885   3291   
index 0000000..0468d80
 2886         -
-- /dev/null
        3292  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 2887   3293   
@@ -0,0 +1,12 @@
        3294  +
{
        3295  +
    "credentials": {
        3296  +
        "access_key_id": "AKIDEXAMPLE",
        3297  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3298  +
    },
        3299  +
    "expiration_in_seconds": 3600,
        3300  +
    "normalize": true,
        3301  +
    "region": "us-east-1",
        3302  +
    "service": "service",
        3303  +
    "sign_body": false,
        3304  +
    "timestamp": "2015-08-30T12:36:00Z"
        3305  +
}
              \
 No newline at end of file
 2888   3306   
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
 2889   3307   
similarity index 100%
 2890   3308   
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
 2891   3309   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 2892   3310   
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
 2893   3311   
new file mode 100644
 2894   3312   
index 0000000..80ed433
 2895         -
-- /dev/null
        3313  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 2896   3314   
@@ -0,0 +1 @@
        3315  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2897   3316   
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
 2898   3317   
new file mode 100644
 2899   3318   
index 0000000..4e614f8
 2900         -
-- /dev/null
        3319  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 2901   3320   
@@ -0,0 +1,5 @@
        3321  +
POST /?Param1=value1 HTTP/1.1
        3322  +
Host:example.amazonaws.com
        3323  +
X-Amz-Date:20150830T123600Z
        3324  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3325  +
 2902   3326   
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
 2903   3327   
similarity index 100%
 2904   3328   
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
 2905   3329   
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
 2906   3330   
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
 2907   3331   
new file mode 100644
 2908   3332   
index 0000000..be66403
 2909         -
-- /dev/null
        3333  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 2910   3334   
@@ -0,0 +1,7 @@
        3335  +
POST
        3336  +
/
        3337  +
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
        3338  +
host:example.amazonaws.com
        3339  +
        3340  +
host
        3341  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2911   3342   
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
 2912   3343   
new file mode 100644
 2913   3344   
index 0000000..20fd32b
 2914         -
-- /dev/null
        3345  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 2915   3346   
@@ -0,0 +1 @@
        3347  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2916   3348   
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
 2917   3349   
new file mode 100644
 2918   3350   
index 0000000..d1148d0
 2919         -
-- /dev/null
        3351  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 2920   3352   
@@ -0,0 +1,3 @@
        3353  +
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
        3354  +
Host:example.amazonaws.com
        3355  +
 2921   3356   
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
 2922   3357   
new file mode 100644
 2923   3358   
index 0000000..1a77103
 2924         -
-- /dev/null
        3359  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 2925   3360   
@@ -0,0 +1,4 @@
        3361  +
AWS4-HMAC-SHA256
        3362  +
20150830T123600Z
        3363  +
20150830/us-east-1/service/aws4_request
        3364  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2926   3365   
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
 2927   3366   
similarity index 100%
 2928   3367   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 2929   3368   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 2930   3369   
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
 2931   3370   
new file mode 100644
 2932   3371   
index 0000000..0468d80
 2933         -
-- /dev/null
        3372  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 2934   3373   
@@ -0,0 +1,12 @@
        3374  +
{
        3375  +
    "credentials": {
        3376  +
        "access_key_id": "AKIDEXAMPLE",
        3377  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3378  +
    },
        3379  +
    "expiration_in_seconds": 3600,
        3380  +
    "normalize": true,
        3381  +
    "region": "us-east-1",
        3382  +
    "service": "service",
        3383  +
    "sign_body": false,
        3384  +
    "timestamp": "2015-08-30T12:36:00Z"
        3385  +
}
              \
 No newline at end of file
 2935   3386   
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
 2936   3387   
similarity index 100%
 2937   3388   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 2938   3389   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 2939   3390   
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
 2940   3391   
new file mode 100644
 2941   3392   
index 0000000..80ed433
 2942         -
-- /dev/null
        3393  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 2943   3394   
@@ -0,0 +1 @@
        3395  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2944   3396   
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
 2945   3397   
new file mode 100644
 2946   3398   
index 0000000..4e614f8
 2947         -
-- /dev/null
        3399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 2948   3400   
@@ -0,0 +1,5 @@
        3401  +
POST /?Param1=value1 HTTP/1.1
        3402  +
Host:example.amazonaws.com
        3403  +
X-Amz-Date:20150830T123600Z
        3404  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3405  +
 2949   3406   
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
 2950   3407   
similarity index 100%
 2951   3408   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 2952   3409   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 2953   3410   
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
 2954   3411   
new file mode 100644
 2955   3412   
index 0000000..be66403
 2956         -
-- /dev/null
        3413  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 2957   3414   
@@ -0,0 +1,7 @@
        3415  +
POST
        3416  +
/
        3417  +
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
        3418  +
host:example.amazonaws.com
        3419  +
        3420  +
host
        3421  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2958   3422   
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
 2959   3423   
new file mode 100644
 2960   3424   
index 0000000..20fd32b
 2961         -
-- /dev/null
        3425  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 2962   3426   
@@ -0,0 +1 @@
        3427  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2963   3428   
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
 2964   3429   
new file mode 100644
 2965   3430   
index 0000000..d1148d0
 2966         -
-- /dev/null
        3431  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 2967   3432   
@@ -0,0 +1,3 @@
        3433  +
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
        3434  +
Host:example.amazonaws.com
        3435  +
 2968   3436   
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
 2969   3437   
new file mode 100644
 2970   3438   
index 0000000..1a77103
 2971         -
-- /dev/null
        3439  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 2972   3440   
@@ -0,0 +1,4 @@
        3441  +
AWS4-HMAC-SHA256
        3442  +
20150830T123600Z
        3443  +
20150830/us-east-1/service/aws4_request
        3444  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2973   3445   
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
 2974   3446   
similarity index 100%
 2975   3447   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 2976   3448   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 2977   3449   
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
 2978   3450   
new file mode 100644
 2979   3451   
index 0000000..0468d80
 2980         -
-- /dev/null
        3452  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 2981   3453   
@@ -0,0 +1,12 @@
        3454  +
{
        3455  +
    "credentials": {
        3456  +
        "access_key_id": "AKIDEXAMPLE",
        3457  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3458  +
    },
        3459  +
    "expiration_in_seconds": 3600,
        3460  +
    "normalize": true,
        3461  +
    "region": "us-east-1",
        3462  +
    "service": "service",
        3463  +
    "sign_body": false,
        3464  +
    "timestamp": "2015-08-30T12:36:00Z"
        3465  +
}
              \
 No newline at end of file
 2982   3466   
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
 2983   3467   
similarity index 100%
 2984   3468   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 2985   3469   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 2986   3470   
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
 2987   3471   
new file mode 100644
 2988   3472   
index 0000000..629487f
 2989         -
-- /dev/null
        3473  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 2990   3474   
@@ -0,0 +1 @@
        3475  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2991   3476   
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
 2992   3477   
new file mode 100644
 2993   3478   
index 0000000..0d99b1c
 2994         -
-- /dev/null
        3479  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 2995   3480   
@@ -0,0 +1,5 @@
        3481  +
POST / HTTP/1.1
        3482  +
Host:example.amazonaws.com
        3483  +
X-Amz-Date:20150830T123600Z
        3484  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3485  +
 2996   3486   
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
 2997   3487   
similarity index 100%
 2998   3488   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 2999   3489   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 3000   3490   
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
 3001   3491   
new file mode 100644
 3002   3492   
index 0000000..d3341e7
 3003         -
-- /dev/null
        3493  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 3004   3494   
@@ -0,0 +1,7 @@
        3495  +
POST
        3496  +
/
        3497  +
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
        3498  +
host:example.amazonaws.com
        3499  +
        3500  +
host
        3501  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3005   3502   
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
 3006   3503   
new file mode 100644
 3007   3504   
index 0000000..79f7e0d
 3008         -
-- /dev/null
        3505  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 3009   3506   
@@ -0,0 +1 @@
        3507  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 3010   3508   
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
 3011   3509   
new file mode 100644
 3012   3510   
index 0000000..94f1b21
 3013         -
-- /dev/null
        3511  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 3014   3512   
@@ -0,0 +1,3 @@
        3513  +
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
        3514  +
Host:example.amazonaws.com
        3515  +
 3015   3516   
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
 3016   3517   
new file mode 100644
 3017   3518   
index 0000000..e8f335b
 3018         -
-- /dev/null
        3519  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 3019   3520   
@@ -0,0 +1,4 @@
        3521  +
AWS4-HMAC-SHA256
        3522  +
20150830T123600Z
        3523  +
20150830/us-east-1/service/aws4_request
        3524  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 3020   3525   
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
 3021   3526   
similarity index 100%
 3022   3527   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 3023   3528   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 3024   3529   
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
 3025   3530   
similarity index 99%
 3026   3531   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 3027   3532   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 3028   3533   
index fc4bce6..0db1df1 100644
 3029         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
        3534  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 3030   3535   
@@ -1,12 +1,12 @@
 3031   3536   
{
 3032   3537   
    "credentials": {
 3033   3538   
        "access_key_id": "AKIDEXAMPLE",
 3034   3539   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 3035   3540   
    },
 3036   3541   
    "expiration_in_seconds": 3600,
 3037   3542   
    "normalize": true,
 3038   3543   
    "region": "us-east-1",
 3039   3544   
    "service": "service",
 3040   3545   
    "sign_body": true,
 3041   3546   
    "timestamp": "2015-08-30T12:36:00Z"
 3042         -
}
        3547  +
}
              \
 No newline at end of file
 3043   3548   
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
 3044   3549   
new file mode 100644
 3045   3550   
index 0000000..c218fdf
 3046         -
-- /dev/null
        3551  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 3047   3552   
@@ -0,0 +1,11 @@
        3553  +
POST
        3554  +
/
        3555  +
        3556  +
content-length:13
        3557  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3558  +
host:example.amazonaws.com
        3559  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3560  +
x-amz-date:20150830T123600Z
        3561  +
        3562  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3563  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3048   3564   
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
 3049   3565   
new file mode 100644
 3050   3566   
index 0000000..836aa8b
 3051         -
-- /dev/null
        3567  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 3052   3568   
@@ -0,0 +1 @@
        3569  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 3053   3570   
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
 3054   3571   
new file mode 100644
 3055   3572   
index 0000000..9262d53
 3056         -
-- /dev/null
        3573  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 3057   3574   
@@ -0,0 +1,9 @@
        3575  +
POST / HTTP/1.1
        3576  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3577  +
Host:example.amazonaws.com
        3578  +
Content-Length:13
        3579  +
X-Amz-Date:20150830T123600Z
        3580  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3581  +
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
        3582  +
        3583  +
Param1=value1
              \
 No newline at end of file
 3058   3584   
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
 3059   3585   
new file mode 100644
 3060   3586   
index 0000000..ddbdccc
 3061         -
-- /dev/null
        3587  +
++ 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
 3062   3588   
@@ -0,0 +1,4 @@
        3589  +
AWS4-HMAC-SHA256
        3590  +
20150830T123600Z
        3591  +
20150830/us-east-1/service/aws4_request
        3592  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 3063   3593   
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
 3064   3594   
new file mode 100644
 3065   3595   
index 0000000..596a579
 3066         -
-- /dev/null
        3596  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 3067   3597   
@@ -0,0 +1,9 @@
        3598  +
POST
        3599  +
/
        3600  +
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
        3601  +
content-length:13
        3602  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3603  +
host:example.amazonaws.com
        3604  +
        3605  +
content-length;content-type;host
        3606  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3068   3607   
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
 3069   3608   
new file mode 100644
 3070   3609   
index 0000000..bc85cd8
 3071         -
-- /dev/null
        3610  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 3072   3611   
@@ -0,0 +1 @@
        3612  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 3073   3613   
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
 3074   3614   
new file mode 100644
 3075   3615   
index 0000000..16b59e5
 3076         -
-- /dev/null
        3616  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 3077   3617   
@@ -0,0 +1,6 @@
        3618  +
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
        3619  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3620  +
Host:example.amazonaws.com
        3621  +
Content-Length:13
        3622  +
        3623  +
Param1=value1
              \
 No newline at end of file
 3078   3624   
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
 3079   3625   
new file mode 100644
 3080   3626   
index 0000000..50074af
 3081         -
-- /dev/null
        3627  +
++ 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
 3082   3628   
@@ -0,0 +1,4 @@
        3629  +
AWS4-HMAC-SHA256
        3630  +
20150830T123600Z
        3631  +
20150830/us-east-1/service/aws4_request
        3632  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 3083   3633   
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
 3084   3634   
similarity index 89%
 3085   3635   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 3086   3636   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 3087   3637   
index b711c25..8289eaa 100644
 3088         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
        3638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 3089   3639   
@@ -1,6 +1,6 @@
 3090   3640   
POST / HTTP/1.1
 3091   3641   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 3092   3642   
Host:example.amazonaws.com
 3093   3643   
Content-Length:13
 3094   3644   
 3095         -
Param1=value1
        3645  +
Param1=value1
              \
 No newline at end of file
 3096   3646   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 3097   3647   
similarity index 99%
 3098   3648   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 3099   3649   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 3100   3650   
index fc4bce6..0db1df1 100644
 3101         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
        3651  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 3102   3652   
@@ -1,12 +1,12 @@
 3103   3653   
{
 3104   3654   
    "credentials": {
 3105   3655   
        "access_key_id": "AKIDEXAMPLE",
 3106   3656   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 3107   3657   
    },
 3108   3658   
    "expiration_in_seconds": 3600,
 3109   3659   
    "normalize": true,
 3110   3660   
    "region": "us-east-1",
 3111   3661   
    "service": "service",
 3112   3662   
    "sign_body": true,
 3113   3663   
    "timestamp": "2015-08-30T12:36:00Z"
 3114         -
}
        3664  +
}
              \
 No newline at end of file
 3115   3665   
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
 3116   3666   
new file mode 100644
 3117   3667   
index 0000000..4d116a5
 3118         -
-- /dev/null
        3668  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 3119   3669   
@@ -0,0 +1,11 @@
        3670  +
POST
        3671  +
/
        3672  +
        3673  +
content-length:13
        3674  +
content-type:application/x-www-form-urlencoded
        3675  +
host:example.amazonaws.com
        3676  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3677  +
x-amz-date:20150830T123600Z
        3678  +
        3679  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3680  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3120   3681   
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
 3121   3682   
new file mode 100644
 3122   3683   
index 0000000..0d2ac37
 3123         -
-- /dev/null
        3684  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 3124   3685   
@@ -0,0 +1 @@
        3686  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 3125   3687   
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
 3126   3688   
new file mode 100644
 3127   3689   
index 0000000..bd5e49c
 3128         -
-- /dev/null
        3690  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 3129   3691   
@@ -0,0 +1,9 @@
        3692  +
POST / HTTP/1.1
        3693  +
Content-Type:application/x-www-form-urlencoded
        3694  +
Host:example.amazonaws.com
        3695  +
Content-Length:13
        3696  +
X-Amz-Date:20150830T123600Z
        3697  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3698  +
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
        3699  +
        3700  +
Param1=value1
              \
 No newline at end of file
 3130   3701   
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
 3131   3702   
new file mode 100644
 3132   3703   
index 0000000..f1c599c
 3133         -
-- /dev/null
        3704  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 3134   3705   
@@ -0,0 +1,4 @@
        3706  +
AWS4-HMAC-SHA256
        3707  +
20150830T123600Z
        3708  +
20150830/us-east-1/service/aws4_request
        3709  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 3135   3710   
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
 3136   3711   
new file mode 100644
 3137   3712   
index 0000000..1fc1bb7
 3138         -
-- /dev/null
        3713  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 3139   3714   
@@ -0,0 +1,9 @@
        3715  +
POST
        3716  +
/
        3717  +
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
        3718  +
content-length:13
        3719  +
content-type:application/x-www-form-urlencoded
        3720  +
host:example.amazonaws.com
        3721  +
        3722  +
content-length;content-type;host
        3723  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3140   3724   
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
 3141   3725   
new file mode 100644
 3142   3726   
index 0000000..98c91b3
 3143         -
-- /dev/null
        3727  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 3144   3728   
@@ -0,0 +1 @@
        3729  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 3145   3730   
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
 3146   3731   
new file mode 100644
 3147   3732   
index 0000000..055cd7a
 3148         -
-- /dev/null
        3733  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 3149   3734   
@@ -0,0 +1,6 @@
        3735  +
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
        3736  +
Content-Type:application/x-www-form-urlencoded
        3737  +
Host:example.amazonaws.com
        3738  +
Content-Length:13
        3739  +
        3740  +
Param1=value1
              \
 No newline at end of file
 3150   3741   
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
 3151   3742   
new file mode 100644
 3152   3743   
index 0000000..db7fc27
 3153         -
-- /dev/null
        3744  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 3154   3745   
@@ -0,0 +1,4 @@
        3746  +
AWS4-HMAC-SHA256
        3747  +
20150830T123600Z
        3748  +
20150830/us-east-1/service/aws4_request
        3749  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 3155   3750   
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
 3156   3751   
similarity index 88%
 3157   3752   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 3158   3753   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3159   3754   
index 0091102..760b2d3 100644
 3160         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
        3755  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3161   3756   
@@ -1,6 +1,6 @@
 3162   3757   
POST / HTTP/1.1
 3163   3758   
Content-Type:application/x-www-form-urlencoded
 3164   3759   
Host:example.amazonaws.com
 3165   3760   
Content-Length:13
 3166   3761   
 3167         -
Param1=value1
        3762  +
Param1=value1
              \
 No newline at end of file
 3168   3763   
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
 3169   3764   
new file mode 100644
 3170   3765   
index 0000000..0468d80
 3171         -
-- /dev/null
        3766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 3172   3767   
@@ -0,0 +1,12 @@
        3768  +
{
        3769  +
    "credentials": {
        3770  +
        "access_key_id": "AKIDEXAMPLE",
        3771  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3772  +
    },
        3773  +
    "expiration_in_seconds": 3600,
        3774  +
    "normalize": true,
        3775  +
    "region": "us-east-1",
        3776  +
    "service": "service",
        3777  +
    "sign_body": false,
        3778  +
    "timestamp": "2015-08-30T12:36:00Z"
        3779  +
}
              \
 No newline at end of file
 3173   3780   
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
 3174   3781   
similarity index 99%
 3175   3782   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 3176   3783   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3177   3784   
index ccb5f43..1bc448e 100644
 3178         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
        3785  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3179   3786   
@@ -1,10 +1,10 @@
 3180   3787   
GET
 3181   3788   
/
 3182   3789   
 3183   3790   
host:example.amazonaws.com
 3184   3791   
my-header1:value2,value2,value1
 3185   3792   
x-amz-date:20150830T123600Z
 3186   3793   
x-amz-region-set:us-east-1
 3187   3794   
 3188   3795   
host;my-header1;x-amz-date;x-amz-region-set
 3189         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3796  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3190   3797   
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
 3191   3798   
new file mode 100644
 3192   3799   
index 0000000..489c182
 3193         -
-- /dev/null
        3800  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 3194   3801   
@@ -0,0 +1 @@
        3802  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 3195   3803   
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
 3196   3804   
new file mode 100644
 3197   3805   
index 0000000..e1b8dbf
 3198         -
-- /dev/null
        3806  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 3199   3807   
@@ -0,0 +1,9 @@
        3808  +
GET / HTTP/1.1
        3809  +
Host:example.amazonaws.com
        3810  +
My-Header1:value2
        3811  +
My-Header1:value2
        3812  +
My-Header1:value1
        3813  +
X-Amz-Date:20150830T123600Z
        3814  +
X-Amz-Region-Set:us-east-1
        3815  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3816  +
 3200   3817   
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
 3201   3818   
similarity index 99%
 3202   3819   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 3203   3820   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3204   3821   
index 8783461..bfc4619 100644
 3205         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
        3822  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3206   3823   
@@ -1,4 +1,4 @@
 3207   3824   
AWS4-ECDSA-P256-SHA256
 3208   3825   
20150830T123600Z
 3209   3826   
20150830/service/aws4_request
 3210         -
30f1f7b639b7fd5982a0f700e6d23bf7bb24f2f1d9e1314005bf22130da61cdf
        3827  +
30f1f7b639b7fd5982a0f700e6d23bf7bb24f2f1d9e1314005bf22130da61cdf
              \
 No newline at end of file
 3211   3828   
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
 3212   3829   
new file mode 100644
 3213   3830   
index 0000000..379dcb2
 3214         -
-- /dev/null
        3831  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 3215   3832   
@@ -0,0 +1,4 @@
        3833  +
{
        3834  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3835  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3836  +
}
 3216   3837   
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
 3217   3838   
similarity index 99%
 3218   3839   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 3219   3840   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3220   3841   
index 9561297..c05c3f5 100644
 3221         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
        3842  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3222   3843   
@@ -1,8 +1,8 @@
 3223   3844   
GET
 3224   3845   
/
 3225   3846   
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
 3226   3847   
host:example.amazonaws.com
 3227   3848   
my-header1:value2,value2,value1
 3228   3849   
 3229   3850   
host;my-header1
 3230         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3851  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3231   3852   
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
 3232   3853   
new file mode 100644
 3233   3854   
index 0000000..de9a4c3
 3234         -
-- /dev/null
        3855  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 3235   3856   
@@ -0,0 +1 @@
        3857  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 3236   3858   
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
 3237   3859   
new file mode 100644
 3238   3860   
index 0000000..6c6b8c4
 3239         -
-- /dev/null
        3861  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 3240   3862   
@@ -0,0 +1,6 @@
        3863  +
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
        3864  +
Host:example.amazonaws.com
        3865  +
My-Header1:value2
        3866  +
My-Header1:value2
        3867  +
My-Header1:value1
        3868  +
 3241   3869   
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
 3242   3870   
similarity index 99%
 3243   3871   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 3244   3872   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3245   3873   
index 3140f6f..4eef106 100644
 3246         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
        3874  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3247   3875   
@@ -1,4 +1,4 @@
 3248   3876   
AWS4-ECDSA-P256-SHA256
 3249   3877   
20150830T123600Z
 3250   3878   
20150830/service/aws4_request
 3251         -
a6e21a0099c98cbb4ec73928a08e8b116dfd634c471a8c03c4007b5258b664ea
        3879  +
a6e21a0099c98cbb4ec73928a08e8b116dfd634c471a8c03c4007b5258b664ea
              \
 No newline at end of file
 3252   3880   
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
 3253   3881   
similarity index 78%
 3254   3882   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 3255   3883   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3256   3884   
index 08a0364..40455ce 100644
 3257         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        3885  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3258   3886   
@@ -1,6 +1,5 @@
 3259   3887   
GET / HTTP/1.1
 3260   3888   
Host:example.amazonaws.com
 3261   3889   
My-Header1:value2
 3262   3890   
My-Header1:value2
 3263   3891   
My-Header1:value1
 3264         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3265   3892   
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
 3266   3893   
new file mode 100644
 3267   3894   
index 0000000..0468d80
 3268         -
-- /dev/null
        3895  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 3269   3896   
@@ -0,0 +1,12 @@
        3897  +
{
        3898  +
    "credentials": {
        3899  +
        "access_key_id": "AKIDEXAMPLE",
        3900  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3901  +
    },
        3902  +
    "expiration_in_seconds": 3600,
        3903  +
    "normalize": true,
        3904  +
    "region": "us-east-1",
        3905  +
    "service": "service",
        3906  +
    "sign_body": false,
        3907  +
    "timestamp": "2015-08-30T12:36:00Z"
        3908  +
}
              \
 No newline at end of file
 3270   3909   
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
 3271   3910   
new file mode 100644
 3272   3911   
index 0000000..69526cd
 3273         -
-- /dev/null
        3912  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 3274   3913   
@@ -0,0 +1,10 @@
        3914  +
GET
        3915  +
/
        3916  +
        3917  +
host:example.amazonaws.com
        3918  +
my-header1:value1 value2 value3
        3919  +
x-amz-date:20150830T123600Z
        3920  +
x-amz-region-set:us-east-1
        3921  +
        3922  +
host;my-header1;x-amz-date;x-amz-region-set
        3923  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3275   3924   
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
 3276   3925   
new file mode 100644
 3277   3926   
index 0000000..d51b4f3
 3278         -
-- /dev/null
        3927  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 3279   3928   
@@ -0,0 +1 @@
        3929  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 3280   3930   
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
 3281   3931   
new file mode 100644
 3282   3932   
index 0000000..8131420
 3283         -
-- /dev/null
        3933  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 3284   3934   
@@ -0,0 +1,9 @@
        3935  +
GET / HTTP/1.1
        3936  +
Host:example.amazonaws.com
        3937  +
My-Header1:value1
        3938  +
  value2
        3939  +
     value3
        3940  +
X-Amz-Date:20150830T123600Z
        3941  +
X-Amz-Region-Set:us-east-1
        3942  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        3943  +
 3285   3944   
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
 3286   3945   
new file mode 100644
 3287   3946   
index 0000000..e4d99fa
 3288         -
-- /dev/null
        3947  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 3289   3948   
@@ -0,0 +1,4 @@
        3949  +
AWS4-ECDSA-P256-SHA256
        3950  +
20150830T123600Z
        3951  +
20150830/service/aws4_request
        3952  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 3290   3953   
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
 3291   3954   
new file mode 100644
 3292   3955   
index 0000000..379dcb2
 3293         -
-- /dev/null
        3956  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 3294   3957   
@@ -0,0 +1,4 @@
        3958  +
{
        3959  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3960  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3961  +
}
 3295   3962   
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
 3296   3963   
new file mode 100644
 3297   3964   
index 0000000..3c4d52f
 3298         -
-- /dev/null
        3965  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 3299   3966   
@@ -0,0 +1,8 @@
        3967  +
GET
        3968  +
/
        3969  +
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
        3970  +
host:example.amazonaws.com
        3971  +
my-header1:value1 value2 value3
        3972  +
        3973  +
host;my-header1
        3974  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3300   3975   
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
 3301   3976   
new file mode 100644
 3302   3977   
index 0000000..4e63f9a
 3303         -
-- /dev/null
        3978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 3304   3979   
@@ -0,0 +1 @@
        3980  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 3305   3981   
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
 3306   3982   
new file mode 100644
 3307   3983   
index 0000000..adf1f09
 3308         -
-- /dev/null
        3984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 3309   3985   
@@ -0,0 +1,6 @@
        3986  +
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
        3987  +
Host:example.amazonaws.com
        3988  +
My-Header1:value1
        3989  +
  value2
        3990  +
     value3
        3991  +
 3310   3992   
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
 3311   3993   
new file mode 100644
 3312   3994   
index 0000000..e085407
 3313         -
-- /dev/null
        3995  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 3314   3996   
@@ -0,0 +1,4 @@
        3997  +
AWS4-ECDSA-P256-SHA256
        3998  +
20150830T123600Z
        3999  +
20150830/service/aws4_request
        4000  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 3315   4001   
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
 3316   4002   
new file mode 100644
 3317   4003   
index 0000000..b5026cd
 3318         -
-- /dev/null
        4004  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 3319   4005   
@@ -0,0 +1,5 @@
        4006  +
GET / HTTP/1.1
        4007  +
Host:example.amazonaws.com
        4008  +
My-Header1:value1
        4009  +
  value2
        4010  +
     value3
 3320   4011   
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
 3321   4012   
new file mode 100644
 3322   4013   
index 0000000..0468d80
 3323         -
-- /dev/null
        4014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 3324   4015   
@@ -0,0 +1,12 @@
        4016  +
{
        4017  +
    "credentials": {
        4018  +
        "access_key_id": "AKIDEXAMPLE",
        4019  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4020  +
    },
        4021  +
    "expiration_in_seconds": 3600,
        4022  +
    "normalize": true,
        4023  +
    "region": "us-east-1",
        4024  +
    "service": "service",
        4025  +
    "sign_body": false,
        4026  +
    "timestamp": "2015-08-30T12:36:00Z"
        4027  +
}
              \
 No newline at end of file
 3325   4028   
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
 3326   4029   
similarity index 99%
 3327   4030   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 3328   4031   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3329   4032   
index 9375193..533afdb 100644
 3330         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
        4033  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3331   4034   
@@ -1,10 +1,10 @@
 3332   4035   
GET
 3333   4036   
/
 3334   4037   
 3335   4038   
host:example.amazonaws.com
 3336   4039   
my-header1:value4,value1,value3,value2
 3337   4040   
x-amz-date:20150830T123600Z
 3338   4041   
x-amz-region-set:us-east-1
 3339   4042   
 3340   4043   
host;my-header1;x-amz-date;x-amz-region-set
 3341         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4044  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3342   4045   
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
 3343   4046   
new file mode 100644
 3344   4047   
index 0000000..057b426
 3345         -
-- /dev/null
        4048  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 3346   4049   
@@ -0,0 +1 @@
        4050  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 3347   4051   
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
 3348   4052   
new file mode 100644
 3349   4053   
index 0000000..4e4ccf0
 3350         -
-- /dev/null
        4054  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 3351   4055   
@@ -0,0 +1,10 @@
        4056  +
GET / HTTP/1.1
        4057  +
Host:example.amazonaws.com
        4058  +
My-Header1:value4
        4059  +
My-Header1:value1
        4060  +
My-Header1:value3
        4061  +
My-Header1:value2
        4062  +
X-Amz-Date:20150830T123600Z
        4063  +
X-Amz-Region-Set:us-east-1
        4064  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        4065  +
 3352   4066   
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
 3353   4067   
similarity index 99%
 3354   4068   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 3355   4069   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3356   4070   
index 6400baf..e68c952 100644
 3357         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
        4071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3358   4072   
@@ -1,4 +1,4 @@
 3359   4073   
AWS4-ECDSA-P256-SHA256
 3360   4074   
20150830T123600Z
 3361   4075   
20150830/service/aws4_request
 3362         -
e1c3b5d34632ffff080330b3bc31906c8988bf1683f4af689ef3f1811952df36
        4076  +
e1c3b5d34632ffff080330b3bc31906c8988bf1683f4af689ef3f1811952df36
              \
 No newline at end of file
 3363   4077   
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
 3364   4078   
new file mode 100644
 3365   4079   
index 0000000..379dcb2
 3366         -
-- /dev/null
        4080  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 3367   4081   
@@ -0,0 +1,4 @@
        4082  +
{
        4083  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4084  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4085  +
}
 3368   4086   
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
 3369   4087   
similarity index 99%
 3370   4088   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 3371   4089   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3372   4090   
index ecf494a..68450fe 100644
 3373         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
        4091  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3374   4092   
@@ -1,8 +1,8 @@
 3375   4093   
GET
 3376   4094   
/
 3377   4095   
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
 3378   4096   
host:example.amazonaws.com
 3379   4097   
my-header1:value4,value1,value3,value2
 3380   4098   
 3381   4099   
host;my-header1
 3382         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4100  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3383   4101   
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
 3384   4102   
new file mode 100644
 3385   4103   
index 0000000..9df2eb3
 3386         -
-- /dev/null
        4104  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 3387   4105   
@@ -0,0 +1 @@
        4106  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 3388   4107   
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
 3389   4108   
new file mode 100644
 3390   4109   
index 0000000..62f8cb7
 3391         -
-- /dev/null
        4110  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 3392   4111   
@@ -0,0 +1,7 @@
        4112  +
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
        4113  +
Host:example.amazonaws.com
        4114  +
My-Header1:value4
        4115  +
My-Header1:value1
        4116  +
My-Header1:value3
        4117  +
My-Header1:value2
        4118  +
 3393   4119   
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
 3394   4120   
similarity index 99%
 3395   4121   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 3396   4122   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3397   4123   
index b584179..2bcf7b1 100644
 3398         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
        4124  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3399   4125   
@@ -1,4 +1,4 @@
 3400   4126   
AWS4-ECDSA-P256-SHA256
 3401   4127   
20150830T123600Z
 3402   4128   
20150830/service/aws4_request
 3403         -
e2bf35ea25a1943bf52cfc8348c787db8fd8ca642dc9f2b9443939c2fb0d3c54
        4129  +
e2bf35ea25a1943bf52cfc8348c787db8fd8ca642dc9f2b9443939c2fb0d3c54
              \
 No newline at end of file
 3404   4130   
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
 3405   4131   
similarity index 80%
 3406   4132   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 3407   4133   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3408   4134   
index f7bd9e6..2c6f49d 100644
 3409         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        4135  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3410   4136   
@@ -1,7 +1,6 @@
 3411   4137   
GET / HTTP/1.1
 3412   4138   
Host:example.amazonaws.com
 3413   4139   
My-Header1:value4
 3414   4140   
My-Header1:value1
 3415   4141   
My-Header1:value3
 3416   4142   
My-Header1:value2
 3417         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3418   4143   
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
 3419   4144   
new file mode 100644
 3420   4145   
index 0000000..0468d80
 3421         -
-- /dev/null
        4146  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 3422   4147   
@@ -0,0 +1,12 @@
        4148  +
{
        4149  +
    "credentials": {
        4150  +
        "access_key_id": "AKIDEXAMPLE",
        4151  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4152  +
    },
        4153  +
    "expiration_in_seconds": 3600,
        4154  +
    "normalize": true,
        4155  +
    "region": "us-east-1",
        4156  +
    "service": "service",
        4157  +
    "sign_body": false,
        4158  +
    "timestamp": "2015-08-30T12:36:00Z"
        4159  +
}
              \
 No newline at end of file
 3423   4160   
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
 3424   4161   
similarity index 99%
 3425   4162   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 3426   4163   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3427   4164   
index e91e952..94b6be5 100644
 3428         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
        4165  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3429   4166   
@@ -1,11 +1,11 @@
 3430   4167   
GET
 3431   4168   
/
 3432   4169   
 3433   4170   
host:example.amazonaws.com
 3434   4171   
my-header1:value1
 3435   4172   
my-header2:"a b c"
 3436   4173   
x-amz-date:20150830T123600Z
 3437   4174   
x-amz-region-set:us-east-1
 3438   4175   
 3439   4176   
host;my-header1;my-header2;x-amz-date;x-amz-region-set
 3440         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4177  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3441   4178   
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
 3442   4179   
new file mode 100644
 3443   4180   
index 0000000..bf8c3cb
 3444         -
-- /dev/null
        4181  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 3445   4182   
@@ -0,0 +1 @@
        4183  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 3446   4184   
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
 3447   4185   
new file mode 100644
 3448   4186   
index 0000000..f7f054d
 3449         -
-- /dev/null
        4187  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 3450   4188   
@@ -0,0 +1,8 @@
        4189  +
GET / HTTP/1.1
        4190  +
Host:example.amazonaws.com
        4191  +
My-Header1: value1
        4192  +
My-Header2: "a   b   c"
        4193  +
X-Amz-Date:20150830T123600Z
        4194  +
X-Amz-Region-Set:us-east-1
        4195  +
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
        4196  +
 3451   4197   
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
 3452   4198   
similarity index 99%
 3453   4199   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 3454   4200   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3455   4201   
index 0e407d8..a2c9c05 100644
 3456         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
        4202  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3457   4203   
@@ -1,4 +1,4 @@
 3458   4204   
AWS4-ECDSA-P256-SHA256
 3459   4205   
20150830T123600Z
 3460   4206   
20150830/service/aws4_request
 3461         -
18b43001be9b531ebdd8202144dbd7630ea8a35bc328a7d0e561dda03a876095
        4207  +
18b43001be9b531ebdd8202144dbd7630ea8a35bc328a7d0e561dda03a876095
              \
 No newline at end of file
 3462   4208   
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
 3463   4209   
new file mode 100644
 3464   4210   
index 0000000..379dcb2
 3465         -
-- /dev/null
        4211  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3466   4212   
@@ -0,0 +1,4 @@
        4213  +
{
        4214  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4215  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4216  +
}
 3467   4217   
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
 3468   4218   
similarity index 99%
 3469   4219   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 3470   4220   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3471   4221   
index 8a3b042..3a51150 100644
 3472         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
        4222  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3473   4223   
@@ -1,9 +1,9 @@
 3474   4224   
GET
 3475   4225   
/
 3476   4226   
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
 3477   4227   
host:example.amazonaws.com
 3478   4228   
my-header1:value1
 3479   4229   
my-header2:"a b c"
 3480   4230   
 3481   4231   
host;my-header1;my-header2
 3482         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4232  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3483   4233   
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
 3484   4234   
new file mode 100644
 3485   4235   
index 0000000..0033053
 3486         -
-- /dev/null
        4236  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3487   4237   
@@ -0,0 +1 @@
        4238  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 3488   4239   
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
 3489   4240   
new file mode 100644
 3490   4241   
index 0000000..1537888
 3491         -
-- /dev/null
        4242  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3492   4243   
@@ -0,0 +1,5 @@
        4244  +
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
        4245  +
Host:example.amazonaws.com
        4246  +
My-Header1: value1
        4247  +
My-Header2: "a   b   c"
        4248  +
 3493   4249   
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
 3494   4250   
similarity index 99%
 3495   4251   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 3496   4252   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3497   4253   
index 5eead25..633dc1f 100644
 3498         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
        4254  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3499   4255   
@@ -1,4 +1,4 @@
 3500   4256   
AWS4-ECDSA-P256-SHA256
 3501   4257   
20150830T123600Z
 3502   4258   
20150830/service/aws4_request
 3503         -
4f92ebcf5f0844588e443a2243fafdb64319c6d1ad913c07686129b9991326a3
        4259  +
4f92ebcf5f0844588e443a2243fafdb64319c6d1ad913c07686129b9991326a3
              \
 No newline at end of file
 3504   4260   
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
 3505   4261   
similarity index 75%
 3506   4262   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 3507   4263   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3508   4264   
index 901f36c..ad1ea98 100644
 3509         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        4265  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3510   4266   
@@ -1,5 +1,4 @@
 3511   4267   
GET / HTTP/1.1
 3512   4268   
Host:example.amazonaws.com
 3513   4269   
My-Header1: value1
 3514   4270   
My-Header2: "a   b   c"
 3515         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3516   4271   
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
 3517   4272   
new file mode 100644
 3518   4273   
index 0000000..0468d80
 3519         -
-- /dev/null
        4274  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3520   4275   
@@ -0,0 +1,12 @@
        4276  +
{
        4277  +
    "credentials": {
        4278  +
        "access_key_id": "AKIDEXAMPLE",
        4279  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4280  +
    },
        4281  +
    "expiration_in_seconds": 3600,
        4282  +
    "normalize": true,
        4283  +
    "region": "us-east-1",
        4284  +
    "service": "service",
        4285  +
    "sign_body": false,
        4286  +
    "timestamp": "2015-08-30T12:36:00Z"
        4287  +
}
              \
 No newline at end of file
 3521   4288   
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
 3522   4289   
similarity index 99%
 3523   4290   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 3524   4291   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3525   4292   
index 47e7128..76db73d 100644
 3526         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
        4293  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3527   4294   
@@ -1,9 +1,9 @@
 3528   4295   
GET
 3529   4296   
/
 3530   4297   
 3531   4298   
host:example.amazonaws.com
 3532   4299   
x-amz-date:20150830T123600Z
 3533   4300   
x-amz-region-set:us-east-1
 3534   4301   
 3535   4302   
host;x-amz-date;x-amz-region-set
 3536         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4303  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3537   4304   
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
 3538   4305   
new file mode 100644
 3539   4306   
index 0000000..cbd6ae2
 3540         -
-- /dev/null
        4307  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3541   4308   
@@ -0,0 +1 @@
        4309  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 3542   4310   
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
 3543   4311   
new file mode 100644
 3544   4312   
index 0000000..a343fcf
 3545         -
-- /dev/null
        4313  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3546   4314   
@@ -0,0 +1,6 @@
        4315  +
GET /example/.. HTTP/1.1
        4316  +
Host:example.amazonaws.com
        4317  +
X-Amz-Date:20150830T123600Z
        4318  +
X-Amz-Region-Set:us-east-1
        4319  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        4320  +
 3547   4321   
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
 3548   4322   
similarity index 99%
 3549   4323   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 3550   4324   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3551   4325   
index 95d7219..600f1d8 100644
 3552         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
        4326  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3553   4327   
@@ -1,4 +1,4 @@
 3554   4328   
AWS4-ECDSA-P256-SHA256
 3555   4329   
20150830T123600Z
 3556   4330   
20150830/service/aws4_request
 3557         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4331  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3558   4332   
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
 3559   4333   
new file mode 100644
 3560   4334   
index 0000000..379dcb2
 3561         -
-- /dev/null
        4335  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3562   4336   
@@ -0,0 +1,4 @@
        4337  +
{
        4338  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4339  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4340  +
}
 3563   4341   
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
 3564   4342   
similarity index 99%
 3565   4343   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 3566   4344   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3567   4345   
index a34ea26..779c51c 100644
 3568         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
        4346  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3569   4347   
@@ -1,7 +1,7 @@
 3570   4348   
GET
 3571   4349   
/
 3572   4350   
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
 3573   4351   
host:example.amazonaws.com
 3574   4352   
 3575   4353   
host
 3576         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4354  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3577   4355   
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
 3578   4356   
new file mode 100644
 3579   4357   
index 0000000..3cc88e6
 3580         -
-- /dev/null
        4358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3581   4359   
@@ -0,0 +1 @@
        4360  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 3582   4361   
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
 3583   4362   
new file mode 100644
 3584   4363   
index 0000000..f68dde8
 3585         -
-- /dev/null
        4364  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3586   4365   
@@ -0,0 +1,3 @@
        4366  +
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
        4367  +
Host:example.amazonaws.com
        4368  +
 3587   4369   
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
 3588   4370   
similarity index 99%
 3589   4371   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 3590   4372   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3591   4373   
index 48f855c..6e29a7e 100644
 3592         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
        4374  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3593   4375   
@@ -1,4 +1,4 @@
 3594   4376   
AWS4-ECDSA-P256-SHA256
 3595   4377   
20150830T123600Z
 3596   4378   
20150830/service/aws4_request
 3597         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4379  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3598   4380   
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
 3599   4381   
similarity index 65%
 3600   4382   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 3601   4383   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3602   4384   
index 9d6d7ca..6aa9f99 100644
 3603         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        4385  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3604   4386   
@@ -1,3 +1,2 @@
 3605   4387   
GET /example/.. HTTP/1.1
 3606   4388   
Host:example.amazonaws.com
 3607         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3608   4389   
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
 3609   4390   
new file mode 100644
 3610   4391   
index 0000000..0468d80
 3611         -
-- /dev/null
        4392  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3612   4393   
@@ -0,0 +1,12 @@
        4394  +
{
        4395  +
    "credentials": {
        4396  +
        "access_key_id": "AKIDEXAMPLE",
        4397  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4398  +
    },
        4399  +
    "expiration_in_seconds": 3600,
        4400  +
    "normalize": true,
        4401  +
    "region": "us-east-1",
        4402  +
    "service": "service",
        4403  +
    "sign_body": false,
        4404  +
    "timestamp": "2015-08-30T12:36:00Z"
        4405  +
}
              \
 No newline at end of file
 3613   4406   
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
 3614   4407   
similarity index 99%
 3615   4408   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 3616   4409   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3617   4410   
index 47e7128..76db73d 100644
 3618         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
        4411  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3619   4412   
@@ -1,9 +1,9 @@
 3620   4413   
GET
 3621   4414   
/
 3622   4415   
 3623   4416   
host:example.amazonaws.com
 3624   4417   
x-amz-date:20150830T123600Z
 3625   4418   
x-amz-region-set:us-east-1
 3626   4419   
 3627   4420   
host;x-amz-date;x-amz-region-set
 3628         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4421  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3629   4422   
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
 3630   4423   
new file mode 100644
 3631   4424   
index 0000000..f7a7ebe
 3632         -
-- /dev/null
        4425  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3633   4426   
@@ -0,0 +1 @@
        4427  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 3634   4428   
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
 3635   4429   
new file mode 100644
 3636   4430   
index 0000000..9d2c50d
 3637         -
-- /dev/null
        4431  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3638   4432   
@@ -0,0 +1,6 @@
        4433  +
GET /example1/example2/../.. HTTP/1.1
        4434  +
Host:example.amazonaws.com
        4435  +
X-Amz-Date:20150830T123600Z
        4436  +
X-Amz-Region-Set:us-east-1
        4437  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        4438  +
 3639   4439   
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
 3640   4440   
similarity index 99%
 3641   4441   
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
 3642   4442   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3643   4443   
index 95d7219..600f1d8 100644
 3644         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-string-to-sign.txt
        4444  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3645   4445   
@@ -1,4 +1,4 @@
 3646   4446   
AWS4-ECDSA-P256-SHA256
 3647   4447   
20150830T123600Z
 3648   4448   
20150830/service/aws4_request
 3649         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4449  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3650   4450   
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
 3651   4451   
new file mode 100644
 3652   4452   
index 0000000..379dcb2
 3653         -
-- /dev/null
        4453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3654   4454   
@@ -0,0 +1,4 @@
        4455  +
{
        4456  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4457  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4458  +
}
 3655   4459   
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
 3656   4460   
similarity index 99%
 3657   4461   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 3658   4462   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3659   4463   
index a34ea26..779c51c 100644
 3660         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
        4464  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3661   4465   
@@ -1,7 +1,7 @@
 3662   4466   
GET
 3663   4467   
/
 3664   4468   
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
 3665   4469   
host:example.amazonaws.com
 3666   4470   
 3667   4471   
host
 3668         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4472  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3669   4473   
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
 3670   4474   
new file mode 100644
 3671   4475   
index 0000000..45ef286
 3672         -
-- /dev/null
        4476  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3673   4477   
@@ -0,0 +1 @@
        4478  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 3674   4479   
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
 3675   4480   
new file mode 100644
 3676   4481   
index 0000000..0d16f66
 3677         -
-- /dev/null
        4482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3678   4483   
@@ -0,0 +1,3 @@
        4484  +
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
        4485  +
Host:example.amazonaws.com
        4486  +
 3679   4487   
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
 3680   4488   
similarity index 99%
 3681   4489   
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
 3682   4490   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3683   4491   
index 48f855c..6e29a7e 100644
 3684         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-string-to-sign.txt
        4492  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3685   4493   
@@ -1,4 +1,4 @@
 3686   4494   
AWS4-ECDSA-P256-SHA256
 3687   4495   
20150830T123600Z
 3688   4496   
20150830/service/aws4_request
 3689         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4497  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3690   4498   
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
 3691   4499   
similarity index 70%
 3692   4500   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 3693   4501   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3694   4502   
index cfd4e8b..a856c10 100644
 3695         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        4503  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3696   4504   
@@ -1,3 +1,2 @@
 3697   4505   
GET /example1/example2/../.. HTTP/1.1
 3698   4506   
Host:example.amazonaws.com
 3699         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3700   4507   
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
 3701   4508   
new file mode 100644
 3702   4509   
index 0000000..7bee5c7
 3703         -
-- /dev/null
        4510  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3704   4511   
@@ -0,0 +1,12 @@
        4512  +
{
        4513  +
    "credentials": {
        4514  +
        "access_key_id": "AKIDEXAMPLE",
        4515  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4516  +
    },
        4517  +
    "expiration_in_seconds": 3600,
        4518  +
    "normalize": false,
        4519  +
    "region": "us-east-1",
        4520  +
    "service": "service",
        4521  +
    "sign_body": false,
        4522  +
    "timestamp": "2015-08-30T12:36:00Z"
        4523  +
}
              \
 No newline at end of file
 3705   4524   
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
 3706   4525   
similarity index 99%
 3707   4526   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 3708   4527   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3709   4528   
index 5e1d1cf..e4e6d57 100644
 3710         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
        4529  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3711   4530   
@@ -1,9 +1,9 @@
 3712   4531   
GET
 3713   4532   
/example1/example2/../..
 3714   4533   
 3715   4534   
host:example.amazonaws.com
 3716   4535   
x-amz-date:20150830T123600Z
 3717   4536   
x-amz-region-set:us-east-1
 3718   4537   
 3719   4538   
host;x-amz-date;x-amz-region-set
 3720         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4539  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3721   4540   
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
 3722   4541   
new file mode 100644
 3723   4542   
index 0000000..2d1b47c
 3724         -
-- /dev/null
        4543  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3725   4544   
@@ -0,0 +1 @@
        4545  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 3726   4546   
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
 3727   4547   
new file mode 100644
 3728   4548   
index 0000000..7158179
 3729         -
-- /dev/null
        4549  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3730   4550   
@@ -0,0 +1,6 @@
        4551  +
GET /example1/example2/../.. HTTP/1.1
        4552  +
Host:example.amazonaws.com
        4553  +
X-Amz-Date:20150830T123600Z
        4554  +
X-Amz-Region-Set:us-east-1
        4555  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        4556  +
 3731   4557   
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
 3732   4558   
similarity index 99%
 3733   4559   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 3734   4560   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3735   4561   
index 1cca6cf..db60c8e 100644
 3736         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
        4562  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3737   4563   
@@ -1,4 +1,4 @@
 3738   4564   
AWS4-ECDSA-P256-SHA256
 3739   4565   
20150830T123600Z
 3740   4566   
20150830/service/aws4_request
 3741         -
7bad1fab948577ec4e860ff2bb06ce9b69f0dd60eb8a9ad7c016b584254f9b5b
        4567  +
7bad1fab948577ec4e860ff2bb06ce9b69f0dd60eb8a9ad7c016b584254f9b5b
              \
 No newline at end of file
 3742   4568   
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
 3743   4569   
new file mode 100644
 3744   4570   
index 0000000..379dcb2
 3745         -
-- /dev/null
        4571  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3746   4572   
@@ -0,0 +1,4 @@
        4573  +
{
        4574  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4575  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4576  +
}
 3747   4577   
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
 3748   4578   
similarity index 99%
 3749   4579   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 3750   4580   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3751   4581   
index 95dc104..0d963ba 100644
 3752         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
        4582  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3753   4583   
@@ -1,7 +1,7 @@
 3754   4584   
GET
 3755   4585   
/example1/example2/../..
 3756   4586   
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
 3757   4587   
host:example.amazonaws.com
 3758   4588   
 3759   4589   
host
 3760         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4590  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3761   4591   
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
 3762   4592   
new file mode 100644
 3763   4593   
index 0000000..ae774e4
 3764         -
-- /dev/null
        4594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3765   4595   
@@ -0,0 +1 @@
        4596  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 3766   4597   
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
 3767   4598   
new file mode 100644
 3768   4599   
index 0000000..be6b86e
 3769         -
-- /dev/null
        4600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3770   4601   
@@ -0,0 +1,3 @@
        4602  +
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
        4603  +
Host:example.amazonaws.com
        4604  +
 3771   4605   
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
 3772   4606   
similarity index 99%
 3773   4607   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 3774   4608   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3775   4609   
index 50edce6..fcc70cd 100644
 3776         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
        4610  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3777   4611   
@@ -1,4 +1,4 @@
 3778   4612   
AWS4-ECDSA-P256-SHA256
 3779   4613   
20150830T123600Z
 3780   4614   
20150830/service/aws4_request
 3781         -
504892d7f7262dd98d79ab7f3bb6f918cd59d491aacb2d76450f6e065479b31a
        4615  +
504892d7f7262dd98d79ab7f3bb6f918cd59d491aacb2d76450f6e065479b31a
              \
 No newline at end of file
 3782   4616   
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
 3783   4617   
new file mode 100644
 3784   4618   
index 0000000..a856c10
 3785         -
-- /dev/null
        4619  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3786   4620   
@@ -0,0 +1,2 @@
        4621  +
GET /example1/example2/../.. HTTP/1.1
        4622  +
Host:example.amazonaws.com
 3787   4623   
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
 3788   4624   
new file mode 100644
 3789   4625   
index 0000000..7bee5c7
 3790         -
-- /dev/null
        4626  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3791   4627   
@@ -0,0 +1,12 @@
        4628  +
{
        4629  +
    "credentials": {
        4630  +
        "access_key_id": "AKIDEXAMPLE",
        4631  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4632  +
    },
        4633  +
    "expiration_in_seconds": 3600,
        4634  +
    "normalize": false,
        4635  +
    "region": "us-east-1",
        4636  +
    "service": "service",
        4637  +
    "sign_body": false,
        4638  +
    "timestamp": "2015-08-30T12:36:00Z"
        4639  +
}
              \
 No newline at end of file
 3792   4640   
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
 3793   4641   
similarity index 99%
 3794   4642   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 3795   4643   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3796   4644   
index d6a0abe..22def1a 100644
 3797         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
        4645  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3798   4646   
@@ -1,9 +1,9 @@
 3799   4647   
GET
 3800   4648   
/example/..
 3801   4649   
 3802   4650   
host:example.amazonaws.com
 3803   4651   
x-amz-date:20150830T123600Z
 3804   4652   
x-amz-region-set:us-east-1
 3805   4653   
 3806   4654   
host;x-amz-date;x-amz-region-set
 3807         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4655  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3808   4656   
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
 3809   4657   
new file mode 100644
 3810   4658   
index 0000000..9251bad
 3811         -
-- /dev/null
        4659  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 3812   4660   
@@ -0,0 +1 @@
        4661  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 3813   4662   
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
 3814   4663   
new file mode 100644
 3815   4664   
index 0000000..f1bb60f
 3816         -
-- /dev/null
        4665  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 3817   4666   
@@ -0,0 +1,6 @@
        4667  +
GET /example/.. HTTP/1.1
        4668  +
Host:example.amazonaws.com
        4669  +
X-Amz-Date:20150830T123600Z
        4670  +
X-Amz-Region-Set:us-east-1
        4671  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        4672  +
 3818   4673   
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
 3819   4674   
similarity index 99%
 3820   4675   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 3821   4676   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3822   4677   
index 4a34e93..5673a20 100644
 3823         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
        4678  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3824   4679   
@@ -1,4 +1,4 @@
 3825   4680   
AWS4-ECDSA-P256-SHA256
 3826   4681   
20150830T123600Z
 3827   4682   
20150830/service/aws4_request
 3828         -
c859b5032f2ebd5df0285ff633b495b0e6e962e5adb94731c95e8e993a9a8213
        4683  +
c859b5032f2ebd5df0285ff633b495b0e6e962e5adb94731c95e8e993a9a8213
              \
 No newline at end of file
 3829   4684   
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
 3830   4685   
new file mode 100644
 3831   4686   
index 0000000..379dcb2
 3832         -
-- /dev/null
        4687  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 3833   4688   
@@ -0,0 +1,4 @@
        4689  +
{
        4690  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4691  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4692  +
}
 3834   4693   
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
 3835   4694   
similarity index 99%
 3836   4695   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 3837   4696   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3838   4697   
index b1d123e..a1c22e0 100644
 3839         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
        4698  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3840   4699   
@@ -1,7 +1,7 @@
 3841   4700   
GET
 3842   4701   
/example/..
 3843   4702   
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
 3844   4703   
host:example.amazonaws.com
 3845   4704   
 3846   4705   
host
 3847         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4706  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3848   4707   
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
 3849   4708   
new file mode 100644
 3850   4709   
index 0000000..9f0f686
 3851         -
-- /dev/null
        4710  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 3852   4711   
@@ -0,0 +1 @@
        4712  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 3853   4713   
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
 3854   4714   
new file mode 100644
 3855   4715   
index 0000000..d1d451a
 3856         -
-- /dev/null
        4716  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 3857   4717   
@@ -0,0 +1,3 @@
        4718  +
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
        4719  +
Host:example.amazonaws.com
        4720  +
 3858   4721   
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
 3859   4722   
similarity index 99%
 3860   4723   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 3861   4724   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3862   4725   
index a17f5ab..81b41e8 100644
 3863         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
        4726  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3864   4727   
@@ -1,4 +1,4 @@
 3865   4728   
AWS4-ECDSA-P256-SHA256
 3866   4729   
20150830T123600Z
 3867   4730   
20150830/service/aws4_request
 3868         -
bbbb3668f996906ebb2c96ebdc2418af99656315adaf647989ab336c88fb516e
        4731  +
bbbb3668f996906ebb2c96ebdc2418af99656315adaf647989ab336c88fb516e
              \
 No newline at end of file
 3869   4732   
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
 3870   4733   
new file mode 100644
 3871   4734   
index 0000000..6aa9f99
 3872         -
-- /dev/null
        4735  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 3873   4736   
@@ -0,0 +1,2 @@
        4737  +
GET /example/.. HTTP/1.1
        4738  +
Host:example.amazonaws.com
 3874   4739   
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
 3875   4740   
new file mode 100644
 3876   4741   
index 0000000..0468d80
 3877         -
-- /dev/null
        4742  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 3878   4743   
@@ -0,0 +1,12 @@
        4744  +
{
        4745  +
    "credentials": {
        4746  +
        "access_key_id": "AKIDEXAMPLE",
        4747  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4748  +
    },
        4749  +
    "expiration_in_seconds": 3600,
        4750  +
    "normalize": true,
        4751  +
    "region": "us-east-1",
        4752  +
    "service": "service",
        4753  +
    "sign_body": false,
        4754  +
    "timestamp": "2015-08-30T12:36:00Z"
        4755  +
}
              \
 No newline at end of file
 3879   4756   
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
 3880   4757   
similarity index 99%
 3881   4758   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 3882   4759   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3883   4760   
index 47e7128..76db73d 100644
 3884         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
        4761  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3885   4762   
@@ -1,9 +1,9 @@
 3886   4763   
GET
 3887   4764   
/
 3888   4765   
 3889   4766   
host:example.amazonaws.com
 3890   4767   
x-amz-date:20150830T123600Z
 3891   4768   
x-amz-region-set:us-east-1
 3892   4769   
 3893   4770   
host;x-amz-date;x-amz-region-set
 3894         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4771  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3895   4772   
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
 3896   4773   
new file mode 100644
 3897   4774   
index 0000000..ca6e84e
 3898         -
-- /dev/null
        4775  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 3899   4776   
@@ -0,0 +1 @@
        4777  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 3900   4778   
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
 3901   4779   
new file mode 100644
 3902   4780   
index 0000000..a7c764c
 3903         -
-- /dev/null
        4781  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 3904   4782   
@@ -0,0 +1,6 @@
        4783  +
GET /./ HTTP/1.1
        4784  +
Host:example.amazonaws.com
        4785  +
X-Amz-Date:20150830T123600Z
        4786  +
X-Amz-Region-Set:us-east-1
        4787  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        4788  +
 3905   4789   
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
 3906   4790   
similarity index 99%
 3907   4791   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 3908   4792   
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
 3909   4793   
index 95d7219..600f1d8 100644
 3910         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
        4794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-string-to-sign.txt
 3911   4795   
@@ -1,4 +1,4 @@
 3912   4796   
AWS4-ECDSA-P256-SHA256
 3913   4797   
20150830T123600Z
 3914   4798   
20150830/service/aws4_request
 3915         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4799  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3916   4800   
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
 3917   4801   
new file mode 100644
 3918   4802   
index 0000000..379dcb2
 3919         -
-- /dev/null
        4803  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 3920   4804   
@@ -0,0 +1,4 @@
        4805  +
{
        4806  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4807  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4808  +
}
 3921   4809   
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
 3922   4810   
similarity index 99%
 3923   4811   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 3924   4812   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3925   4813   
index a34ea26..779c51c 100644
 3926         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
        4814  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3927   4815   
@@ -1,7 +1,7 @@
 3928   4816   
GET
 3929   4817   
/
 3930   4818   
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
 3931   4819   
host:example.amazonaws.com
 3932   4820   
 3933   4821   
host
 3934         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4822  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3935   4823   
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
 3936   4824   
new file mode 100644
 3937   4825   
index 0000000..4b6ed09
 3938         -
-- /dev/null
        4826  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 3939   4827   
@@ -0,0 +1 @@
        4828  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 3940   4829   
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
 3941   4830   
new file mode 100644
 3942   4831   
index 0000000..d6c7176
 3943         -
-- /dev/null
        4832  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 3944   4833   
@@ -0,0 +1,3 @@
        4834  +
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
        4835  +
Host:example.amazonaws.com
        4836  +
 3945   4837   
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
 3946   4838   
similarity index 99%
 3947   4839   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 3948   4840   
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
 3949   4841   
index 48f855c..6e29a7e 100644
 3950         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
        4842  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-string-to-sign.txt
 3951   4843   
@@ -1,4 +1,4 @@
 3952   4844   
AWS4-ECDSA-P256-SHA256
 3953   4845   
20150830T123600Z
 3954   4846   
20150830/service/aws4_request
 3955         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4847  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3956   4848   
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
 3957   4849   
similarity index 61%
 3958   4850   
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
 3959   4851   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3960   4852   
index f3537b7..2c5ff38 100644
 3961         -
-- 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
        4853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3962   4854   
@@ -1,3 +1,2 @@
 3963   4855   
GET /./ HTTP/1.1
 3964   4856   
Host:example.amazonaws.com
 3965         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3966   4857   
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
 3967   4858   
new file mode 100644
 3968   4859   
index 0000000..7bee5c7
 3969         -
-- /dev/null
        4860  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 3970   4861   
@@ -0,0 +1,12 @@
        4862  +
{
        4863  +
    "credentials": {
        4864  +
        "access_key_id": "AKIDEXAMPLE",
        4865  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4866  +
    },
        4867  +
    "expiration_in_seconds": 3600,
        4868  +
    "normalize": false,
        4869  +
    "region": "us-east-1",
        4870  +
    "service": "service",
        4871  +
    "sign_body": false,
        4872  +
    "timestamp": "2015-08-30T12:36:00Z"
        4873  +
}
              \
 No newline at end of file
 3971   4874   
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
 3972   4875   
similarity index 99%
 3973   4876   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3974   4877   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3975   4878   
index d05303d..9257ac4 100644
 3976         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
        4879  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3977   4880   
@@ -1,9 +1,9 @@
 3978   4881   
GET
 3979   4882   
/./
 3980   4883   
 3981   4884   
host:example.amazonaws.com
 3982   4885   
x-amz-date:20150830T123600Z
 3983   4886   
x-amz-region-set:us-east-1
 3984   4887   
 3985   4888   
host;x-amz-date;x-amz-region-set
 3986         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4889  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3987   4890   
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
 3988   4891   
new file mode 100644
 3989   4892   
index 0000000..2eb1aa5
 3990         -
-- /dev/null
        4893  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 3991   4894   
@@ -0,0 +1 @@
        4895  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 3992   4896   
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
 3993   4897   
new file mode 100644
 3994   4898   
index 0000000..df3b1da
 3995         -
-- /dev/null
        4899  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 3996   4900   
@@ -0,0 +1,6 @@
        4901  +
GET /./ HTTP/1.1
        4902  +
Host:example.amazonaws.com
        4903  +
X-Amz-Date:20150830T123600Z
        4904  +
X-Amz-Region-Set:us-east-1
        4905  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        4906  +
 3997   4907   
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
 3998   4908   
similarity index 99%
 3999   4909   
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
 4000   4910   
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
 4001   4911   
index e1bfb39..754b3ed 100644
 4002         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
        4912  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 4003   4913   
@@ -1,4 +1,4 @@
 4004   4914   
AWS4-ECDSA-P256-SHA256
 4005   4915   
20150830T123600Z
 4006   4916   
20150830/service/aws4_request
 4007         -
a14dce0217a32357c623c3db790988b6b5aa1494a527158b06d3ca4444561a4b
        4917  +
a14dce0217a32357c623c3db790988b6b5aa1494a527158b06d3ca4444561a4b
              \
 No newline at end of file
 4008   4918   
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
 4009   4919   
new file mode 100644
 4010   4920   
index 0000000..379dcb2
 4011         -
-- /dev/null
        4921  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 4012   4922   
@@ -0,0 +1,4 @@
        4923  +
{
        4924  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4925  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4926  +
}
 4013   4927   
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
 4014   4928   
similarity index 99%
 4015   4929   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 4016   4930   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 4017   4931   
index f048d0f..c8edce3 100644
 4018         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
        4932  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 4019   4933   
@@ -1,7 +1,7 @@
 4020   4934   
GET
 4021   4935   
/./
 4022   4936   
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
 4023   4937   
host:example.amazonaws.com
 4024   4938   
 4025   4939   
host
 4026         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4940  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4027   4941   
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
 4028   4942   
new file mode 100644
 4029   4943   
index 0000000..d3af3b8
 4030         -
-- /dev/null
        4944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 4031   4945   
@@ -0,0 +1 @@
        4946  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 4032   4947   
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
 4033   4948   
new file mode 100644
 4034   4949   
index 0000000..eb38155
 4035         -
-- /dev/null
        4950  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 4036   4951   
@@ -0,0 +1,3 @@
        4952  +
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
        4953  +
Host:example.amazonaws.com
        4954  +
 4037   4955   
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
 4038   4956   
similarity index 99%
 4039   4957   
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
 4040   4958   
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
 4041   4959   
index bfcf245..4f20b8f 100644
 4042         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
        4960  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 4043   4961   
@@ -1,4 +1,4 @@
 4044   4962   
AWS4-ECDSA-P256-SHA256
 4045   4963   
20150830T123600Z
 4046   4964   
20150830/service/aws4_request
 4047         -
0d146fed00cdf50d7a87864583b7a33ca75322aab46b0a2d204f5d0c13440917
        4965  +
0d146fed00cdf50d7a87864583b7a33ca75322aab46b0a2d204f5d0c13440917
              \
 No newline at end of file
 4048   4966   
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
 4049   4967   
new file mode 100644
 4050   4968   
index 0000000..2c5ff38
 4051         -
-- /dev/null
        4969  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 4052   4970   
@@ -0,0 +1,2 @@
        4971  +
GET /./ HTTP/1.1
        4972  +
Host:example.amazonaws.com
 4053   4973   
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
 4054   4974   
new file mode 100644
 4055   4975   
index 0000000..0468d80
 4056         -
-- /dev/null
        4976  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 4057   4977   
@@ -0,0 +1,12 @@
        4978  +
{
        4979  +
    "credentials": {
        4980  +
        "access_key_id": "AKIDEXAMPLE",
        4981  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4982  +
    },
        4983  +
    "expiration_in_seconds": 3600,
        4984  +
    "normalize": true,
        4985  +
    "region": "us-east-1",
        4986  +
    "service": "service",
        4987  +
    "sign_body": false,
        4988  +
    "timestamp": "2015-08-30T12:36:00Z"
        4989  +
}
              \
 No newline at end of file
 4058   4990   
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
 4059   4991   
similarity index 99%
 4060   4992   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 4061   4993   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 4062   4994   
index 47e7128..76db73d 100644
 4063         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
        4995  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 4064   4996   
@@ -1,9 +1,9 @@
 4065   4997   
GET
 4066   4998   
/
 4067   4999   
 4068   5000   
host:example.amazonaws.com
 4069   5001   
x-amz-date:20150830T123600Z
 4070   5002   
x-amz-region-set:us-east-1
 4071   5003   
 4072   5004   
host;x-amz-date;x-amz-region-set
 4073         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5005  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4074   5006   
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
 4075   5007   
new file mode 100644
 4076   5008   
index 0000000..0c049ca
 4077         -
-- /dev/null
        5009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 4078   5010   
@@ -0,0 +1 @@
        5011  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 4079   5012   
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
 4080   5013   
new file mode 100644
 4081   5014   
index 0000000..f4bb1e1
 4082         -
-- /dev/null
        5015  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 4083   5016   
@@ -0,0 +1,6 @@
        5017  +
GET // HTTP/1.1
        5018  +
Host:example.amazonaws.com
        5019  +
X-Amz-Date:20150830T123600Z
        5020  +
X-Amz-Region-Set:us-east-1
        5021  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        5022  +
 4084   5023   
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
 4085   5024   
similarity index 99%
 4086   5025   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 4087   5026   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 4088   5027   
index 95d7219..600f1d8 100644
 4089         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
        5028  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 4090   5029   
@@ -1,4 +1,4 @@
 4091   5030   
AWS4-ECDSA-P256-SHA256
 4092   5031   
20150830T123600Z
 4093   5032   
20150830/service/aws4_request
 4094         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        5033  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4095   5034   
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
 4096   5035   
new file mode 100644
 4097   5036   
index 0000000..379dcb2
 4098         -
-- /dev/null
        5037  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 4099   5038   
@@ -0,0 +1,4 @@
        5039  +
{
        5040  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5041  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5042  +
}
 4100   5043   
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
 4101   5044   
similarity index 99%
 4102   5045   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 4103   5046   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 4104   5047   
index a34ea26..779c51c 100644
 4105         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
        5048  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 4106   5049   
@@ -1,7 +1,7 @@
 4107   5050   
GET
 4108   5051   
/
 4109   5052   
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
 4110   5053   
host:example.amazonaws.com
 4111   5054   
 4112   5055   
host
 4113         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5056  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4114   5057   
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
 4115   5058   
new file mode 100644
 4116   5059   
index 0000000..ca52293
 4117         -
-- /dev/null
        5060  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 4118   5061   
@@ -0,0 +1 @@
        5062  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 4119   5063   
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
 4120   5064   
new file mode 100644
 4121   5065   
index 0000000..4a212a9
 4122         -
-- /dev/null
        5066  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 4123   5067   
@@ -0,0 +1,3 @@
        5068  +
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
        5069  +
Host:example.amazonaws.com
        5070  +
 4124   5071   
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
 4125   5072   
similarity index 99%
 4126   5073   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 4127   5074   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 4128   5075   
index 48f855c..6e29a7e 100644
 4129         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
        5076  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 4130   5077   
@@ -1,4 +1,4 @@
 4131   5078   
AWS4-ECDSA-P256-SHA256
 4132   5079   
20150830T123600Z
 4133   5080   
20150830/service/aws4_request
 4134         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        5081  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4135   5082   
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
 4136   5083   
similarity index 61%
 4137   5084   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 4138   5085   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 4139   5086   
index ede8e3c..25bc21e 100644
 4140         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        5087  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 4141   5088   
@@ -1,3 +1,2 @@
 4142   5089   
GET // HTTP/1.1
 4143   5090   
Host:example.amazonaws.com
 4144         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4145   5091   
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
 4146   5092   
new file mode 100644
 4147   5093   
index 0000000..0468d80
 4148         -
-- /dev/null
        5094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 4149   5095   
@@ -0,0 +1,12 @@
        5096  +
{
        5097  +
    "credentials": {
        5098  +
        "access_key_id": "AKIDEXAMPLE",
        5099  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5100  +
    },
        5101  +
    "expiration_in_seconds": 3600,
        5102  +
    "normalize": true,
        5103  +
    "region": "us-east-1",
        5104  +
    "service": "service",
        5105  +
    "sign_body": false,
        5106  +
    "timestamp": "2015-08-30T12:36:00Z"
        5107  +
}
              \
 No newline at end of file
 4150   5108   
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
 4151   5109   
similarity index 99%
 4152   5110   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4153   5111   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4154   5112   
index 2e36c20..a51f1ba 100644
 4155         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
        5113  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4156   5114   
@@ -1,9 +1,9 @@
 4157   5115   
GET
 4158   5116   
/example
 4159   5117   
 4160   5118   
host:example.amazonaws.com
 4161   5119   
x-amz-date:20150830T123600Z
 4162   5120   
x-amz-region-set:us-east-1
 4163   5121   
 4164   5122   
host;x-amz-date;x-amz-region-set
 4165         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5123  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4166   5124   
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
 4167   5125   
new file mode 100644
 4168   5126   
index 0000000..f5c871f
 4169         -
-- /dev/null
        5127  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 4170   5128   
@@ -0,0 +1 @@
        5129  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 4171   5130   
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
 4172   5131   
new file mode 100644
 4173   5132   
index 0000000..bda4718
 4174         -
-- /dev/null
        5133  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 4175   5134   
@@ -0,0 +1,6 @@
        5135  +
GET /./example HTTP/1.1
        5136  +
Host:example.amazonaws.com
        5137  +
X-Amz-Date:20150830T123600Z
        5138  +
X-Amz-Region-Set:us-east-1
        5139  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        5140  +
 4176   5141   
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
 4177   5142   
similarity index 99%
 4178   5143   
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
 4179   5144   
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
 4180   5145   
index cd30e8b..2ffe879 100644
 4181         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-string-to-sign.txt
        5146  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-string-to-sign.txt
 4182   5147   
@@ -1,4 +1,4 @@
 4183   5148   
AWS4-ECDSA-P256-SHA256
 4184   5149   
20150830T123600Z
 4185   5150   
20150830/service/aws4_request
 4186         -
823cb165e35e124f862c99c89a46414c24e3800f149377591e35a4848317e825
        5151  +
823cb165e35e124f862c99c89a46414c24e3800f149377591e35a4848317e825
              \
 No newline at end of file
 4187   5152   
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
 4188   5153   
new file mode 100644
 4189   5154   
index 0000000..379dcb2
 4190         -
-- /dev/null
        5155  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 4191   5156   
@@ -0,0 +1,4 @@
        5157  +
{
        5158  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5159  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5160  +
}
 4192   5161   
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
 4193   5162   
similarity index 99%
 4194   5163   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4195   5164   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4196   5165   
index 77cf28d..45151ea 100644
 4197         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
        5166  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4198   5167   
@@ -1,7 +1,7 @@
 4199   5168   
GET
 4200   5169   
/example
 4201   5170   
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
 4202   5171   
host:example.amazonaws.com
 4203   5172   
 4204   5173   
host
 4205         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5174  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4206   5175   
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
 4207   5176   
new file mode 100644
 4208   5177   
index 0000000..11ad7bf
 4209         -
-- /dev/null
        5178  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 4210   5179   
@@ -0,0 +1 @@
        5180  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 4211   5181   
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
 4212   5182   
new file mode 100644
 4213   5183   
index 0000000..a7537b1
 4214         -
-- /dev/null
        5184  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 4215   5185   
@@ -0,0 +1,3 @@
        5186  +
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
        5187  +
Host:example.amazonaws.com
        5188  +
 4216   5189   
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
 4217   5190   
similarity index 99%
 4218   5191   
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
 4219   5192   
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
 4220   5193   
index 49d9b24..b486672 100644
 4221         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-string-to-sign.txt
        5194  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 4222   5195   
@@ -1,4 +1,4 @@
 4223   5196   
AWS4-ECDSA-P256-SHA256
 4224   5197   
20150830T123600Z
 4225   5198   
20150830/service/aws4_request
 4226         -
0cc67a8acfed5946b645794c649dd98d3485728119cdf17d38985ba0ff55abca
        5199  +
0cc67a8acfed5946b645794c649dd98d3485728119cdf17d38985ba0ff55abca
              \
 No newline at end of file
 4227   5200   
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
 4228   5201   
similarity index 65%
 4229   5202   
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
 4230   5203   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 4231   5204   
index 3c91071..5d919c9 100644
 4232         -
-- 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
        5205  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 4233   5206   
@@ -1,3 +1,2 @@
 4234   5207   
GET /./example HTTP/1.1
 4235   5208   
Host:example.amazonaws.com
 4236         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4237   5209   
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
 4238   5210   
new file mode 100644
 4239   5211   
index 0000000..7bee5c7
 4240         -
-- /dev/null
        5212  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 4241   5213   
@@ -0,0 +1,12 @@
        5214  +
{
        5215  +
    "credentials": {
        5216  +
        "access_key_id": "AKIDEXAMPLE",
        5217  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5218  +
    },
        5219  +
    "expiration_in_seconds": 3600,
        5220  +
    "normalize": false,
        5221  +
    "region": "us-east-1",
        5222  +
    "service": "service",
        5223  +
    "sign_body": false,
        5224  +
    "timestamp": "2015-08-30T12:36:00Z"
        5225  +
}
              \
 No newline at end of file
 4242   5226   
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
 4243   5227   
similarity index 99%
 4244   5228   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4245   5229   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4246   5230   
index 4444842..2355a69 100644
 4247         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
        5231  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4248   5232   
@@ -1,9 +1,9 @@
 4249   5233   
GET
 4250   5234   
/./example
 4251   5235   
 4252   5236   
host:example.amazonaws.com
 4253   5237   
x-amz-date:20150830T123600Z
 4254   5238   
x-amz-region-set:us-east-1
 4255   5239   
 4256   5240   
host;x-amz-date;x-amz-region-set
 4257         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5241  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4258   5242   
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
 4259   5243   
new file mode 100644
 4260   5244   
index 0000000..9c8f737
 4261         -
-- /dev/null
        5245  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 4262   5246   
@@ -0,0 +1 @@
        5247  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 4263   5248   
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
 4264   5249   
new file mode 100644
 4265   5250   
index 0000000..aa5980d
 4266         -
-- /dev/null
        5251  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 4267   5252   
@@ -0,0 +1,6 @@
        5253  +
GET /./example HTTP/1.1
        5254  +
Host:example.amazonaws.com
        5255  +
X-Amz-Date:20150830T123600Z
        5256  +
X-Amz-Region-Set:us-east-1
        5257  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        5258  +
 4268   5259   
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
 4269   5260   
similarity index 99%
 4270   5261   
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
 4271   5262   
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
 4272   5263   
index cc63510..d056816 100644
 4273         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
        5264  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 4274   5265   
@@ -1,4 +1,4 @@
 4275   5266   
AWS4-ECDSA-P256-SHA256
 4276   5267   
20150830T123600Z
 4277   5268   
20150830/service/aws4_request
 4278         -
407314cdff397462b2458ba1860907adefcbb73fd630ddbd3de7300d2f773804
        5269  +
407314cdff397462b2458ba1860907adefcbb73fd630ddbd3de7300d2f773804
              \
 No newline at end of file
 4279   5270   
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
 4280   5271   
new file mode 100644
 4281   5272   
index 0000000..379dcb2
 4282         -
-- /dev/null
        5273  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 4283   5274   
@@ -0,0 +1,4 @@
        5275  +
{
        5276  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5277  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5278  +
}
 4284   5279   
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
 4285   5280   
similarity index 99%
 4286   5281   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4287   5282   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4288   5283   
index ed2cb2d..df9928e 100644
 4289         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
        5284  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4290   5285   
@@ -1,7 +1,7 @@
 4291   5286   
GET
 4292   5287   
/./example
 4293   5288   
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
 4294   5289   
host:example.amazonaws.com
 4295   5290   
 4296   5291   
host
 4297         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5292  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4298   5293   
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
 4299   5294   
new file mode 100644
 4300   5295   
index 0000000..bb4d86b
 4301         -
-- /dev/null
        5296  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 4302   5297   
@@ -0,0 +1 @@
        5298  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 4303   5299   
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
 4304   5300   
new file mode 100644
 4305   5301   
index 0000000..0061136
 4306         -
-- /dev/null
        5302  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 4307   5303   
@@ -0,0 +1,3 @@
        5304  +
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
        5305  +
Host:example.amazonaws.com
        5306  +
 4308   5307   
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
 4309   5308   
similarity index 99%
 4310   5309   
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
 4311   5310   
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
 4312   5311   
index c9f3b6d..418f2d6 100644
 4313         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
        5312  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 4314   5313   
@@ -1,4 +1,4 @@
 4315   5314   
AWS4-ECDSA-P256-SHA256
 4316   5315   
20150830T123600Z
 4317   5316   
20150830/service/aws4_request
 4318         -
efbe4f47c2acbb53fbfd0be6846cfa35a48c21f3f800e741278dae7b721302b4
        5317  +
efbe4f47c2acbb53fbfd0be6846cfa35a48c21f3f800e741278dae7b721302b4
              \
 No newline at end of file
 4319   5318   
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
 4320   5319   
new file mode 100644
 4321   5320   
index 0000000..5d919c9
 4322         -
-- /dev/null
        5321  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 4323   5322   
@@ -0,0 +1,2 @@
        5323  +
GET /./example HTTP/1.1
        5324  +
Host:example.amazonaws.com
 4324   5325   
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
 4325   5326   
new file mode 100644
 4326   5327   
index 0000000..7bee5c7
 4327         -
-- /dev/null
        5328  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 4328   5329   
@@ -0,0 +1,12 @@
        5330  +
{
        5331  +
    "credentials": {
        5332  +
        "access_key_id": "AKIDEXAMPLE",
        5333  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5334  +
    },
        5335  +
    "expiration_in_seconds": 3600,
        5336  +
    "normalize": false,
        5337  +
    "region": "us-east-1",
        5338  +
    "service": "service",
        5339  +
    "sign_body": false,
        5340  +
    "timestamp": "2015-08-30T12:36:00Z"
        5341  +
}
              \
 No newline at end of file
 4329   5342   
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
 4330   5343   
similarity index 99%
 4331   5344   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 4332   5345   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4333   5346   
index 8a4d33b..5f809da 100644
 4334         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
        5347  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4335   5348   
@@ -1,9 +1,9 @@
 4336   5349   
GET
 4337   5350   
//
 4338   5351   
 4339   5352   
host:example.amazonaws.com
 4340   5353   
x-amz-date:20150830T123600Z
 4341   5354   
x-amz-region-set:us-east-1
 4342   5355   
 4343   5356   
host;x-amz-date;x-amz-region-set
 4344         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5357  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4345   5358   
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
 4346   5359   
new file mode 100644
 4347   5360   
index 0000000..60179e9
 4348         -
-- /dev/null
        5361  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 4349   5362   
@@ -0,0 +1 @@
        5363  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 4350   5364   
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
 4351   5365   
new file mode 100644
 4352   5366   
index 0000000..72bf1b7
 4353         -
-- /dev/null
        5367  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 4354   5368   
@@ -0,0 +1,6 @@
        5369  +
GET // HTTP/1.1
        5370  +
Host:example.amazonaws.com
        5371  +
X-Amz-Date:20150830T123600Z
        5372  +
X-Amz-Region-Set:us-east-1
        5373  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        5374  +
 4355   5375   
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
 4356   5376   
similarity index 99%
 4357   5377   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 4358   5378   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4359   5379   
index 874c01c..2b3bf67 100644
 4360         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
        5380  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4361   5381   
@@ -1,4 +1,4 @@
 4362   5382   
AWS4-ECDSA-P256-SHA256
 4363   5383   
20150830T123600Z
 4364   5384   
20150830/service/aws4_request
 4365         -
fc8f42c7ce50ba8830a34b16d9fb478170176d78c81339e8d7e31d4baa9ec9f4
        5385  +
fc8f42c7ce50ba8830a34b16d9fb478170176d78c81339e8d7e31d4baa9ec9f4
              \
 No newline at end of file
 4366   5386   
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
 4367   5387   
new file mode 100644
 4368   5388   
index 0000000..379dcb2
 4369         -
-- /dev/null
        5389  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 4370   5390   
@@ -0,0 +1,4 @@
        5391  +
{
        5392  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5393  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5394  +
}
 4371   5395   
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
 4372   5396   
similarity index 99%
 4373   5397   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 4374   5398   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4375   5399   
index 81d7b0b..d10ad29 100644
 4376         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
        5400  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4377   5401   
@@ -1,7 +1,7 @@
 4378   5402   
GET
 4379   5403   
//
 4380   5404   
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
 4381   5405   
host:example.amazonaws.com
 4382   5406   
 4383   5407   
host
 4384         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5408  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4385   5409   
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
 4386   5410   
new file mode 100644
 4387   5411   
index 0000000..d9bd824
 4388         -
-- /dev/null
        5412  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 4389   5413   
@@ -0,0 +1 @@
        5414  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 4390   5415   
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
 4391   5416   
new file mode 100644
 4392   5417   
index 0000000..19d1d46
 4393         -
-- /dev/null
        5418  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 4394   5419   
@@ -0,0 +1,3 @@
        5420  +
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
        5421  +
Host:example.amazonaws.com
        5422  +
 4395   5423   
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
 4396   5424   
similarity index 99%
 4397   5425   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 4398   5426   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4399   5427   
index 17e5279..24c8a5e 100644
 4400         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
        5428  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4401   5429   
@@ -1,4 +1,4 @@
 4402   5430   
AWS4-ECDSA-P256-SHA256
 4403   5431   
20150830T123600Z
 4404   5432   
20150830/service/aws4_request
 4405         -
633e0570a745c18cc22e43af8be65cfed3e7173061ec403353734bdfae90e0b6
        5433  +
633e0570a745c18cc22e43af8be65cfed3e7173061ec403353734bdfae90e0b6
              \
 No newline at end of file
 4406   5434   
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
 4407   5435   
new file mode 100644
 4408   5436   
index 0000000..25bc21e
 4409         -
-- /dev/null
        5437  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 4410   5438   
@@ -0,0 +1,2 @@
        5439  +
GET // HTTP/1.1
        5440  +
Host:example.amazonaws.com
 4411   5441   
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
 4412   5442   
new file mode 100644
 4413   5443   
index 0000000..0468d80
 4414         -
-- /dev/null
        5444  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 4415   5445   
@@ -0,0 +1,12 @@
        5446  +
{
        5447  +
    "credentials": {
        5448  +
        "access_key_id": "AKIDEXAMPLE",
        5449  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5450  +
    },
        5451  +
    "expiration_in_seconds": 3600,
        5452  +
    "normalize": true,
        5453  +
    "region": "us-east-1",
        5454  +
    "service": "service",
        5455  +
    "sign_body": false,
        5456  +
    "timestamp": "2015-08-30T12:36:00Z"
        5457  +
}
              \
 No newline at end of file
 4416   5458   
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
 4417   5459   
similarity index 99%
 4418   5460   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 4419   5461   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4420   5462   
index fdf9c48..a8e9e02 100644
 4421         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
        5463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4422   5464   
@@ -1,9 +1,9 @@
 4423   5465   
GET
 4424   5466   
/example/
 4425   5467   
 4426   5468   
host:example.amazonaws.com
 4427   5469   
x-amz-date:20150830T123600Z
 4428   5470   
x-amz-region-set:us-east-1
 4429   5471   
 4430   5472   
host;x-amz-date;x-amz-region-set
 4431         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5473  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4432   5474   
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
 4433   5475   
new file mode 100644
 4434   5476   
index 0000000..ffe1b60
 4435         -
-- /dev/null
        5477  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 4436   5478   
@@ -0,0 +1 @@
        5479  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 4437   5480   
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
 4438   5481   
new file mode 100644
 4439   5482   
index 0000000..3189f55
 4440         -
-- /dev/null
        5483  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 4441   5484   
@@ -0,0 +1,6 @@
        5485  +
GET //example// HTTP/1.1
        5486  +
Host:example.amazonaws.com
        5487  +
X-Amz-Date:20150830T123600Z
        5488  +
X-Amz-Region-Set:us-east-1
        5489  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        5490  +
 4442   5491   
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
 4443   5492   
similarity index 99%
 4444   5493   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 4445   5494   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4446   5495   
index 8f9c95e..430020e 100644
 4447         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
        5496  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4448   5497   
@@ -1,4 +1,4 @@
 4449   5498   
AWS4-ECDSA-P256-SHA256
 4450   5499   
20150830T123600Z
 4451   5500   
20150830/service/aws4_request
 4452         -
ea6c9c4bc1e85b94f2579cebbc85a84c3f8eaa055c006697555f074dd68509a6
        5501  +
ea6c9c4bc1e85b94f2579cebbc85a84c3f8eaa055c006697555f074dd68509a6
              \
 No newline at end of file
 4453   5502   
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
 4454   5503   
new file mode 100644
 4455   5504   
index 0000000..379dcb2
 4456         -
-- /dev/null
        5505  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 4457   5506   
@@ -0,0 +1,4 @@
        5507  +
{
        5508  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5509  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5510  +
}
 4458   5511   
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
 4459   5512   
similarity index 99%
 4460   5513   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 4461   5514   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4462   5515   
index 1046735..8d41e37 100644
 4463         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
        5516  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4464   5517   
@@ -1,7 +1,7 @@
 4465   5518   
GET
 4466   5519   
/example/
 4467   5520   
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
 4468   5521   
host:example.amazonaws.com
 4469   5522   
 4470   5523   
host
 4471         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5524  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4472   5525   
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
 4473   5526   
new file mode 100644
 4474   5527   
index 0000000..93a0fa4
 4475         -
-- /dev/null
        5528  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 4476   5529   
@@ -0,0 +1 @@
        5530  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 4477   5531   
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
 4478   5532   
new file mode 100644
 4479   5533   
index 0000000..65c8cb6
 4480         -
-- /dev/null
        5534  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 4481   5535   
@@ -0,0 +1,3 @@
        5536  +
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
        5537  +
Host:example.amazonaws.com
        5538  +
 4482   5539   
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
 4483   5540   
similarity index 99%
 4484   5541   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 4485   5542   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4486   5543   
index b293cc2..0f4c4c5 100644
 4487         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
        5544  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4488   5545   
@@ -1,4 +1,4 @@
 4489   5546   
AWS4-ECDSA-P256-SHA256
 4490   5547   
20150830T123600Z
 4491   5548   
20150830/service/aws4_request
 4492         -
ab3f7b8af0ce16e0faf508160fb13d890874992d74f36214ae9eec7437361f2b
        5549  +
ab3f7b8af0ce16e0faf508160fb13d890874992d74f36214ae9eec7437361f2b
              \
 No newline at end of file
 4493   5550   
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
 4494   5551   
similarity index 65%
 4495   5552   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 4496   5553   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4497   5554   
index a4307ce..12e0931 100644
 4498         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        5555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4499   5556   
@@ -1,3 +1,2 @@
 4500   5557   
GET //example// HTTP/1.1
 4501   5558   
Host:example.amazonaws.com
 4502         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4503   5559   
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
 4504   5560   
new file mode 100644
 4505   5561   
index 0000000..7bee5c7
 4506         -
-- /dev/null
        5562  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 4507   5563   
@@ -0,0 +1,12 @@
        5564  +
{
        5565  +
    "credentials": {
        5566  +
        "access_key_id": "AKIDEXAMPLE",
        5567  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5568  +
    },
        5569  +
    "expiration_in_seconds": 3600,
        5570  +
    "normalize": false,
        5571  +
    "region": "us-east-1",
        5572  +
    "service": "service",
        5573  +
    "sign_body": false,
        5574  +
    "timestamp": "2015-08-30T12:36:00Z"
        5575  +
}
              \
 No newline at end of file
 4508   5576   
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
 4509   5577   
similarity index 99%
 4510   5578   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 4511   5579   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4512   5580   
index a9c55f6..76f55ed 100644
 4513         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
        5581  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4514   5582   
@@ -1,9 +1,9 @@
 4515   5583   
GET
 4516   5584   
//example//
 4517   5585   
 4518   5586   
host:example.amazonaws.com
 4519   5587   
x-amz-date:20150830T123600Z
 4520   5588   
x-amz-region-set:us-east-1
 4521   5589   
 4522   5590   
host;x-amz-date;x-amz-region-set
 4523         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5591  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4524   5592   
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
 4525   5593   
new file mode 100644
 4526   5594   
index 0000000..de333b2
 4527         -
-- /dev/null
        5595  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 4528   5596   
@@ -0,0 +1 @@
        5597  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 4529   5598   
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
 4530   5599   
new file mode 100644
 4531   5600   
index 0000000..773ce63
 4532         -
-- /dev/null
        5601  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 4533   5602   
@@ -0,0 +1,6 @@
        5603  +
GET //example// HTTP/1.1
        5604  +
Host:example.amazonaws.com
        5605  +
X-Amz-Date:20150830T123600Z
        5606  +
X-Amz-Region-Set:us-east-1
        5607  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        5608  +
 4534   5609   
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
 4535   5610   
similarity index 99%
 4536   5611   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 4537   5612   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4538   5613   
index 5c4c2cd..46c3265 100644
 4539         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
        5614  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4540   5615   
@@ -1,4 +1,4 @@
 4541   5616   
AWS4-ECDSA-P256-SHA256
 4542   5617   
20150830T123600Z
 4543   5618   
20150830/service/aws4_request
 4544         -
bf8c459a6a7f3879f55bff41e4dca65f69df4628456904e47f83013c0deb7276
        5619  +
bf8c459a6a7f3879f55bff41e4dca65f69df4628456904e47f83013c0deb7276
              \
 No newline at end of file
 4545   5620   
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
 4546   5621   
new file mode 100644
 4547   5622   
index 0000000..379dcb2
 4548         -
-- /dev/null
        5623  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 4549   5624   
@@ -0,0 +1,4 @@
        5625  +
{
        5626  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5627  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5628  +
}
 4550   5629   
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
 4551   5630   
similarity index 99%
 4552   5631   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 4553   5632   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4554   5633   
index c878ab4..6047ccf 100644
 4555         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
        5634  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4556   5635   
@@ -1,7 +1,7 @@
 4557   5636   
GET
 4558   5637   
//example//
 4559   5638   
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
 4560   5639   
host:example.amazonaws.com
 4561   5640   
 4562   5641   
host
 4563         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5642  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4564   5643   
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
 4565   5644   
new file mode 100644
 4566   5645   
index 0000000..d61fcd0
 4567         -
-- /dev/null
        5646  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 4568   5647   
@@ -0,0 +1 @@
        5648  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 4569   5649   
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
 4570   5650   
new file mode 100644
 4571   5651   
index 0000000..3e37b5b
 4572         -
-- /dev/null
        5652  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 4573   5653   
@@ -0,0 +1,3 @@
        5654  +
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
        5655  +
Host:example.amazonaws.com
        5656  +
 4574   5657   
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
 4575   5658   
similarity index 99%
 4576   5659   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 4577   5660   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4578   5661   
index 5f59645..2537d28 100644
 4579         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
        5662  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4580   5663   
@@ -1,4 +1,4 @@
 4581   5664   
AWS4-ECDSA-P256-SHA256
 4582   5665   
20150830T123600Z
 4583   5666   
20150830/service/aws4_request
 4584         -
660b4a6f0bd53b287cefb21cdf69c1574303de44d2e9f7759b5379b428b70157
        5667  +
660b4a6f0bd53b287cefb21cdf69c1574303de44d2e9f7759b5379b428b70157
              \
 No newline at end of file
 4585   5668   
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
 4586   5669   
new file mode 100644
 4587   5670   
index 0000000..12e0931
 4588         -
-- /dev/null
        5671  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 4589   5672   
@@ -0,0 +1,2 @@
        5673  +
GET //example// HTTP/1.1
        5674  +
Host:example.amazonaws.com
 4590   5675   
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
 4591   5676   
new file mode 100644
 4592   5677   
index 0000000..0468d80
 4593         -
-- /dev/null
        5678  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 4594   5679   
@@ -0,0 +1,12 @@
        5680  +
{
        5681  +
    "credentials": {
        5682  +
        "access_key_id": "AKIDEXAMPLE",
        5683  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5684  +
    },
        5685  +
    "expiration_in_seconds": 3600,
        5686  +
    "normalize": true,
        5687  +
    "region": "us-east-1",
        5688  +
    "service": "service",
        5689  +
    "sign_body": false,
        5690  +
    "timestamp": "2015-08-30T12:36:00Z"
        5691  +
}
              \
 No newline at end of file
 4595   5692   
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
 4596   5693   
new file mode 100644
 4597   5694   
index 0000000..0b2b616
 4598         -
-- /dev/null
        5695  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 4599   5696   
@@ -0,0 +1,9 @@
        5697  +
GET
        5698  +
/example%20space/
        5699  +
        5700  +
host:example.amazonaws.com
        5701  +
x-amz-date:20150830T123600Z
        5702  +
x-amz-region-set:us-east-1
        5703  +
        5704  +
host;x-amz-date;x-amz-region-set
        5705  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4600   5706   
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
 4601   5707   
new file mode 100644
 4602   5708   
index 0000000..6e7841d
 4603         -
-- /dev/null
        5709  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 4604   5710   
@@ -0,0 +1 @@
        5711  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 4605   5712   
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
 4606   5713   
new file mode 100644
 4607   5714   
index 0000000..0969cd3
 4608         -
-- /dev/null
        5715  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 4609   5716   
@@ -0,0 +1,6 @@
        5717  +
GET /example space/ HTTP/1.1
        5718  +
Host:example.amazonaws.com
        5719  +
X-Amz-Date:20150830T123600Z
        5720  +
X-Amz-Region-Set:us-east-1
        5721  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        5722  +
 4610   5723   
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
 4611   5724   
new file mode 100644
 4612   5725   
index 0000000..ddae6e2
 4613         -
-- /dev/null
        5726  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 4614   5727   
@@ -0,0 +1,4 @@
        5728  +
AWS4-ECDSA-P256-SHA256
        5729  +
20150830T123600Z
        5730  +
20150830/service/aws4_request
        5731  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4615   5732   
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
 4616   5733   
new file mode 100644
 4617   5734   
index 0000000..379dcb2
 4618         -
-- /dev/null
        5735  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 4619   5736   
@@ -0,0 +1,4 @@
        5737  +
{
        5738  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5739  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5740  +
}
 4620   5741   
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
 4621   5742   
new file mode 100644
 4622   5743   
index 0000000..a66b3cb
 4623         -
-- /dev/null
        5744  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 4624   5745   
@@ -0,0 +1,7 @@
        5746  +
GET
        5747  +
/example%20space/
        5748  +
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
        5749  +
host:example.amazonaws.com
        5750  +
        5751  +
host
        5752  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4625   5753   
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
 4626   5754   
new file mode 100644
 4627   5755   
index 0000000..b3253ae
 4628         -
-- /dev/null
        5756  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 4629   5757   
@@ -0,0 +1 @@
        5758  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 4630   5759   
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
 4631   5760   
new file mode 100644
 4632   5761   
index 0000000..9e335b2
 4633         -
-- /dev/null
        5762  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 4634   5763   
@@ -0,0 +1,3 @@
        5764  +
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
        5765  +
Host:example.amazonaws.com
        5766  +
 4635   5767   
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
 4636   5768   
new file mode 100644
 4637   5769   
index 0000000..b6ff6fb
 4638         -
-- /dev/null
        5770  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 4639   5771   
@@ -0,0 +1,4 @@
        5772  +
AWS4-ECDSA-P256-SHA256
        5773  +
20150830T123600Z
        5774  +
20150830/service/aws4_request
        5775  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4640   5776   
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
 4641   5777   
new file mode 100644
 4642   5778   
index 0000000..ab509ab
 4643         -
-- /dev/null
        5779  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 4644   5780   
@@ -0,0 +1,2 @@
        5781  +
GET /example space/ HTTP/1.1
        5782  +
Host:example.amazonaws.com
 4645   5783   
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
 4646   5784   
new file mode 100644
 4647   5785   
index 0000000..7bee5c7
 4648         -
-- /dev/null
        5786  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 4649   5787   
@@ -0,0 +1,12 @@
        5788  +
{
        5789  +
    "credentials": {
        5790  +
        "access_key_id": "AKIDEXAMPLE",
        5791  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5792  +
    },
        5793  +
    "expiration_in_seconds": 3600,
        5794  +
    "normalize": false,
        5795  +
    "region": "us-east-1",
        5796  +
    "service": "service",
        5797  +
    "sign_body": false,
        5798  +
    "timestamp": "2015-08-30T12:36:00Z"
        5799  +
}
              \
 No newline at end of file
 4650   5800   
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
 4651   5801   
new file mode 100644
 4652   5802   
index 0000000..0b2b616
 4653         -
-- /dev/null
        5803  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 4654   5804   
@@ -0,0 +1,9 @@
        5805  +
GET
        5806  +
/example%20space/
        5807  +
        5808  +
host:example.amazonaws.com
        5809  +
x-amz-date:20150830T123600Z
        5810  +
x-amz-region-set:us-east-1
        5811  +
        5812  +
host;x-amz-date;x-amz-region-set
        5813  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4655   5814   
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
 4656   5815   
new file mode 100644
 4657   5816   
index 0000000..e75ae08
 4658         -
-- /dev/null
        5817  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 4659   5818   
@@ -0,0 +1 @@
        5819  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 4660   5820   
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
 4661   5821   
new file mode 100644
 4662   5822   
index 0000000..cb089db
 4663         -
-- /dev/null
        5823  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 4664   5824   
@@ -0,0 +1,6 @@
        5825  +
GET /example space/ HTTP/1.1
        5826  +
Host:example.amazonaws.com
        5827  +
X-Amz-Date:20150830T123600Z
        5828  +
X-Amz-Region-Set:us-east-1
        5829  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        5830  +
 4665   5831   
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
 4666   5832   
new file mode 100644
 4667   5833   
index 0000000..ddae6e2
 4668         -
-- /dev/null
        5834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 4669   5835   
@@ -0,0 +1,4 @@
        5836  +
AWS4-ECDSA-P256-SHA256
        5837  +
20150830T123600Z
        5838  +
20150830/service/aws4_request
        5839  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4670   5840   
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
 4671   5841   
new file mode 100644
 4672   5842   
index 0000000..379dcb2
 4673         -
-- /dev/null
        5843  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 4674   5844   
@@ -0,0 +1,4 @@
        5845  +
{
        5846  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5847  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5848  +
}
 4675   5849   
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
 4676   5850   
new file mode 100644
 4677   5851   
index 0000000..a66b3cb
 4678         -
-- /dev/null
        5852  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 4679   5853   
@@ -0,0 +1,7 @@
        5854  +
GET
        5855  +
/example%20space/
        5856  +
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
        5857  +
host:example.amazonaws.com
        5858  +
        5859  +
host
        5860  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4680   5861   
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
 4681   5862   
new file mode 100644
 4682   5863   
index 0000000..66a80c3
 4683         -
-- /dev/null
        5864  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 4684   5865   
@@ -0,0 +1 @@
        5866  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 4685   5867   
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
 4686   5868   
new file mode 100644
 4687   5869   
index 0000000..7d1b9d9
 4688         -
-- /dev/null
        5870  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 4689   5871   
@@ -0,0 +1,3 @@
        5872  +
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
        5873  +
Host:example.amazonaws.com
        5874  +
 4690   5875   
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
 4691   5876   
new file mode 100644
 4692   5877   
index 0000000..b6ff6fb
 4693         -
-- /dev/null
        5878  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 4694   5879   
@@ -0,0 +1,4 @@
        5880  +
AWS4-ECDSA-P256-SHA256
        5881  +
20150830T123600Z
        5882  +
20150830/service/aws4_request
        5883  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4695   5884   
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
 4696   5885   
new file mode 100644
 4697   5886   
index 0000000..ab509ab
 4698         -
-- /dev/null
        5887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 4699   5888   
@@ -0,0 +1,2 @@
        5889  +
GET /example space/ HTTP/1.1
        5890  +
Host:example.amazonaws.com
 4700   5891   
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
 4701   5892   
new file mode 100644
 4702   5893   
index 0000000..0468d80
 4703         -
-- /dev/null
        5894  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 4704   5895   
@@ -0,0 +1,12 @@
        5896  +
{
        5897  +
    "credentials": {
        5898  +
        "access_key_id": "AKIDEXAMPLE",
        5899  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5900  +
    },
        5901  +
    "expiration_in_seconds": 3600,
        5902  +
    "normalize": true,
        5903  +
    "region": "us-east-1",
        5904  +
    "service": "service",
        5905  +
    "sign_body": false,
        5906  +
    "timestamp": "2015-08-30T12:36:00Z"
        5907  +
}
              \
 No newline at end of file
 4705   5908   
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
 4706   5909   
similarity index 99%
 4707   5910   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 4708   5911   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4709   5912   
index b0db648..46d76bb 100644
 4710         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
        5913  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4711   5914   
@@ -1,9 +1,9 @@
 4712   5915   
GET
 4713   5916   
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4714   5917   
 4715   5918   
host:example.amazonaws.com
 4716   5919   
x-amz-date:20150830T123600Z
 4717   5920   
x-amz-region-set:us-east-1
 4718   5921   
 4719   5922   
host;x-amz-date;x-amz-region-set
 4720         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5923  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4721   5924   
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
 4722   5925   
new file mode 100644
 4723   5926   
index 0000000..53c0cb6
 4724         -
-- /dev/null
        5927  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 4725   5928   
@@ -0,0 +1 @@
        5929  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 4726   5930   
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
 4727   5931   
new file mode 100644
 4728   5932   
index 0000000..3bdb653
 4729         -
-- /dev/null
        5933  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 4730   5934   
@@ -0,0 +1,6 @@
        5935  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5936  +
Host:example.amazonaws.com
        5937  +
X-Amz-Date:20150830T123600Z
        5938  +
X-Amz-Region-Set:us-east-1
        5939  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        5940  +
 4731   5941   
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
 4732   5942   
similarity index 99%
 4733   5943   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 4734   5944   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4735   5945   
index 20c7cd6..3b30173 100644
 4736         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
        5946  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4737   5947   
@@ -1,4 +1,4 @@
 4738   5948   
AWS4-ECDSA-P256-SHA256
 4739   5949   
20150830T123600Z
 4740   5950   
20150830/service/aws4_request
 4741         -
b48c0f7d7cdaa2cd05e4b789c913063becd96ccace5296a334c950040e58bcac
        5951  +
b48c0f7d7cdaa2cd05e4b789c913063becd96ccace5296a334c950040e58bcac
              \
 No newline at end of file
 4742   5952   
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
 4743   5953   
new file mode 100644
 4744   5954   
index 0000000..379dcb2
 4745         -
-- /dev/null
        5955  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 4746   5956   
@@ -0,0 +1,4 @@
        5957  +
{
        5958  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5959  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5960  +
}
 4747   5961   
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
 4748   5962   
similarity index 99%
 4749   5963   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 4750   5964   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4751   5965   
index f9fb726..7e93f58 100644
 4752         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
        5966  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4753   5967   
@@ -1,7 +1,7 @@
 4754   5968   
GET
 4755   5969   
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4756   5970   
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
 4757   5971   
host:example.amazonaws.com
 4758   5972   
 4759   5973   
host
 4760         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5974  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4761   5975   
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
 4762   5976   
new file mode 100644
 4763   5977   
index 0000000..48311a8
 4764         -
-- /dev/null
        5978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 4765   5979   
@@ -0,0 +1 @@
        5980  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 4766   5981   
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
 4767   5982   
new file mode 100644
 4768   5983   
index 0000000..82da9be
 4769         -
-- /dev/null
        5984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 4770   5985   
@@ -0,0 +1,3 @@
        5986  +
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
        5987  +
Host:example.amazonaws.com
        5988  +
 4771   5989   
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
 4772   5990   
similarity index 99%
 4773   5991   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 4774   5992   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4775   5993   
index ef06e89..4aab9a2 100644
 4776         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
        5994  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4777   5995   
@@ -1,4 +1,4 @@
 4778   5996   
AWS4-ECDSA-P256-SHA256
 4779   5997   
20150830T123600Z
 4780   5998   
20150830/service/aws4_request
 4781         -
a967a5035e5dc574f94fb9f0de0faf9d56e889c26d9a65d7d0a15d89690280d1
        5999  +
a967a5035e5dc574f94fb9f0de0faf9d56e889c26d9a65d7d0a15d89690280d1
              \
 No newline at end of file
 4782   6000   
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
 4783   6001   
similarity index 80%
 4784   6002   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 4785   6003   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4786   6004   
index da760cd..a149694 100644
 4787         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        6005  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4788   6006   
@@ -1,3 +1,2 @@
 4789   6007   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4790   6008   
Host:example.amazonaws.com
 4791         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4792   6009   
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
 4793   6010   
new file mode 100644
 4794   6011   
index 0000000..0468d80
 4795         -
-- /dev/null
        6012  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 4796   6013   
@@ -0,0 +1,12 @@
        6014  +
{
        6015  +
    "credentials": {
        6016  +
        "access_key_id": "AKIDEXAMPLE",
        6017  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6018  +
    },
        6019  +
    "expiration_in_seconds": 3600,
        6020  +
    "normalize": true,
        6021  +
    "region": "us-east-1",
        6022  +
    "service": "service",
        6023  +
    "sign_body": false,
        6024  +
    "timestamp": "2015-08-30T12:36:00Z"
        6025  +
}
              \
 No newline at end of file
 4797   6026   
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
 4798   6027   
new file mode 100644
 4799   6028   
index 0000000..0f1afe7
 4800         -
-- /dev/null
        6029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 4801   6030   
@@ -0,0 +1,9 @@
        6031  +
GET
        6032  +
/%E1%88%B4
        6033  +
        6034  +
host:example.amazonaws.com
        6035  +
x-amz-date:20150830T123600Z
        6036  +
x-amz-region-set:us-east-1
        6037  +
        6038  +
host;x-amz-date;x-amz-region-set
        6039  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4802   6040   
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
 4803   6041   
new file mode 100644
 4804   6042   
index 0000000..4b9af6c
 4805         -
-- /dev/null
        6043  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 4806   6044   
@@ -0,0 +1 @@
        6045  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 4807   6046   
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
 4808   6047   
new file mode 100644
 4809   6048   
index 0000000..d42d7b3
 4810         -
-- /dev/null
        6049  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 4811   6050   
@@ -0,0 +1,6 @@
        6051  +
GET /ሴ HTTP/1.1
        6052  +
Host:example.amazonaws.com
        6053  +
X-Amz-Date:20150830T123600Z
        6054  +
X-Amz-Region-Set:us-east-1
        6055  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        6056  +
 4812   6057   
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
 4813   6058   
new file mode 100644
 4814   6059   
index 0000000..0827f62
 4815         -
-- /dev/null
        6060  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 4816   6061   
@@ -0,0 +1,4 @@
        6062  +
AWS4-ECDSA-P256-SHA256
        6063  +
20150830T123600Z
        6064  +
20150830/service/aws4_request
        6065  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 4817   6066   
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
 4818   6067   
new file mode 100644
 4819   6068   
index 0000000..379dcb2
 4820         -
-- /dev/null
        6069  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 4821   6070   
@@ -0,0 +1,4 @@
        6071  +
{
        6072  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6073  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6074  +
}
 4822   6075   
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
 4823   6076   
new file mode 100644
 4824   6077   
index 0000000..a41a2f8
 4825         -
-- /dev/null
        6078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 4826   6079   
@@ -0,0 +1,7 @@
        6080  +
GET
        6081  +
/%E1%88%B4
        6082  +
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
        6083  +
host:example.amazonaws.com
        6084  +
        6085  +
host
        6086  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4827   6087   
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
 4828   6088   
new file mode 100644
 4829   6089   
index 0000000..a5c7f4f
 4830         -
-- /dev/null
        6090  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 4831   6091   
@@ -0,0 +1 @@
        6092  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 4832   6093   
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
 4833   6094   
new file mode 100644
 4834   6095   
index 0000000..492ed33
 4835         -
-- /dev/null
        6096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 4836   6097   
@@ -0,0 +1,3 @@
        6098  +
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
        6099  +
Host:example.amazonaws.com
        6100  +
 4837   6101   
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
 4838   6102   
new file mode 100644
 4839   6103   
index 0000000..a93108f
 4840         -
-- /dev/null
        6104  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 4841   6105   
@@ -0,0 +1,4 @@
        6106  +
AWS4-ECDSA-P256-SHA256
        6107  +
20150830T123600Z
        6108  +
20150830/service/aws4_request
        6109  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 4842   6110   
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
 4843   6111   
new file mode 100644
 4844   6112   
index 0000000..9e273f6
 4845         -
-- /dev/null
        6113  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 4846   6114   
@@ -0,0 +1,2 @@
        6115  +
GET /ሴ HTTP/1.1
        6116  +
Host:example.amazonaws.com
 4847   6117   
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
 4848   6118   
new file mode 100644
 4849   6119   
index 0000000..0468d80
 4850         -
-- /dev/null
        6120  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 4851   6121   
@@ -0,0 +1,12 @@
        6122  +
{
        6123  +
    "credentials": {
        6124  +
        "access_key_id": "AKIDEXAMPLE",
        6125  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6126  +
    },
        6127  +
    "expiration_in_seconds": 3600,
        6128  +
    "normalize": true,
        6129  +
    "region": "us-east-1",
        6130  +
    "service": "service",
        6131  +
    "sign_body": false,
        6132  +
    "timestamp": "2015-08-30T12:36:00Z"
        6133  +
}
              \
 No newline at end of file
 4852   6134   
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
 4853   6135   
similarity index 99%
 4854   6136   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 4855   6137   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4856   6138   
index bb9d4bf..edc0bb4 100644
 4857         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
        6139  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4858   6140   
@@ -1,9 +1,9 @@
 4859   6141   
GET
 4860   6142   
/
 4861   6143   
Param1=value1
 4862   6144   
host:example.amazonaws.com
 4863   6145   
x-amz-date:20150830T123600Z
 4864   6146   
x-amz-region-set:us-east-1
 4865   6147   
 4866   6148   
host;x-amz-date;x-amz-region-set
 4867         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6149  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4868   6150   
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
 4869   6151   
new file mode 100644
 4870   6152   
index 0000000..ee9a272
 4871         -
-- /dev/null
        6153  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 4872   6154   
@@ -0,0 +1 @@
        6155  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 4873   6156   
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
 4874   6157   
new file mode 100644
 4875   6158   
index 0000000..2090343
 4876         -
-- /dev/null
        6159  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 4877   6160   
@@ -0,0 +1,6 @@
        6161  +
GET /?Param1=value1 HTTP/1.1
        6162  +
Host:example.amazonaws.com
        6163  +
X-Amz-Date:20150830T123600Z
        6164  +
X-Amz-Region-Set:us-east-1
        6165  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        6166  +
 4878   6167   
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
 4879   6168   
similarity index 99%
 4880   6169   
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
 4881   6170   
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
 4882   6171   
index a176f1d..06ed74f 100644
 4883         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-string-to-sign.txt
        6172  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-string-to-sign.txt
 4884   6173   
@@ -1,4 +1,4 @@
 4885   6174   
AWS4-ECDSA-P256-SHA256
 4886   6175   
20150830T123600Z
 4887   6176   
20150830/service/aws4_request
 4888         -
894f4237e92aae973c992da1d1f39d7a5913a23e9f7cbcf085e9550685eb498a
        6177  +
894f4237e92aae973c992da1d1f39d7a5913a23e9f7cbcf085e9550685eb498a
              \
 No newline at end of file
 4889   6178   
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
 4890   6179   
new file mode 100644
 4891   6180   
index 0000000..379dcb2
 4892         -
-- /dev/null
        6181  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 4893   6182   
@@ -0,0 +1,4 @@
        6183  +
{
        6184  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6185  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6186  +
}
 4894   6187   
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
 4895   6188   
similarity index 99%
 4896   6189   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 4897   6190   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4898   6191   
index 344384b..a875d70 100644
 4899         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
        6192  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4900   6193   
@@ -1,7 +1,7 @@
 4901   6194   
GET
 4902   6195   
/
 4903   6196   
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
 4904   6197   
host:example.amazonaws.com
 4905   6198   
 4906   6199   
host
 4907         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6200  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4908   6201   
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
 4909   6202   
new file mode 100644
 4910   6203   
index 0000000..ef93624
 4911         -
-- /dev/null
        6204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 4912   6205   
@@ -0,0 +1 @@
        6206  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 4913   6207   
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
 4914   6208   
new file mode 100644
 4915   6209   
index 0000000..92829f7
 4916         -
-- /dev/null
        6210  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 4917   6211   
@@ -0,0 +1,3 @@
        6212  +
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
        6213  +
Host:example.amazonaws.com
        6214  +
 4918   6215   
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
 4919   6216   
similarity index 99%
 4920   6217   
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
 4921   6218   
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
 4922   6219   
index b625052..4ff9191 100644
 4923         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-string-to-sign.txt
        6220  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-string-to-sign.txt
 4924   6221   
@@ -1,4 +1,4 @@
 4925   6222   
AWS4-ECDSA-P256-SHA256
 4926   6223   
20150830T123600Z
 4927   6224   
20150830/service/aws4_request
 4928         -
07551f1d699afeb50d6811a527ab7b0270b60448ea27d8cbccb9750d68287b3f
        6225  +
07551f1d699afeb50d6811a527ab7b0270b60448ea27d8cbccb9750d68287b3f
              \
 No newline at end of file
 4929   6226   
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
 4930   6227   
similarity index 67%
 4931   6228   
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
 4932   6229   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4933   6230   
index 970d0a0..f4a03bb 100644
 4934         -
-- 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
        6231  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4935   6232   
@@ -1,3 +1,2 @@
 4936   6233   
GET /?Param1=value1 HTTP/1.1
 4937   6234   
Host:example.amazonaws.com
 4938         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4939   6235   
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
 4940   6236   
new file mode 100644
 4941   6237   
index 0000000..0468d80
 4942         -
-- /dev/null
        6238  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 4943   6239   
@@ -0,0 +1,12 @@
        6240  +
{
        6241  +
    "credentials": {
        6242  +
        "access_key_id": "AKIDEXAMPLE",
        6243  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6244  +
    },
        6245  +
    "expiration_in_seconds": 3600,
        6246  +
    "normalize": true,
        6247  +
    "region": "us-east-1",
        6248  +
    "service": "service",
        6249  +
    "sign_body": false,
        6250  +
    "timestamp": "2015-08-30T12:36:00Z"
        6251  +
}
              \
 No newline at end of file
 4944   6252   
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
 4945   6253   
new file mode 100644
 4946   6254   
index 0000000..da07537
 4947         -
-- /dev/null
        6255  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 4948   6256   
@@ -0,0 +1,9 @@
        6257  +
GET
        6258  +
/
        6259  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        6260  +
host:example.amazonaws.com
        6261  +
x-amz-date:20150830T123600Z
        6262  +
x-amz-region-set:us-east-1
        6263  +
        6264  +
host;x-amz-date;x-amz-region-set
        6265  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4949   6266   
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
 4950   6267   
new file mode 100644
 4951   6268   
index 0000000..edb21e5
 4952         -
-- /dev/null
        6269  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 4953   6270   
@@ -0,0 +1 @@
        6271  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 4954   6272   
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
 4955   6273   
new file mode 100644
 4956   6274   
index 0000000..e60394c
 4957         -
-- /dev/null
        6275  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 4958   6276   
@@ -0,0 +1,6 @@
        6277  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        6278  +
Host:example.amazonaws.com
        6279  +
X-Amz-Date:20150830T123600Z
        6280  +
X-Amz-Region-Set:us-east-1
        6281  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        6282  +
 4959   6283   
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
 4960   6284   
new file mode 100644
 4961   6285   
index 0000000..1dfc886
 4962         -
-- /dev/null
        6286  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 4963   6287   
@@ -0,0 +1,4 @@
        6288  +
AWS4-ECDSA-P256-SHA256
        6289  +
20150830T123600Z
        6290  +
20150830/service/aws4_request
        6291  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 4964   6292   
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
 4965   6293   
new file mode 100644
 4966   6294   
index 0000000..379dcb2
 4967         -
-- /dev/null
        6295  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 4968   6296   
@@ -0,0 +1,4 @@
        6297  +
{
        6298  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6299  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6300  +
}
 4969   6301   
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
 4970   6302   
new file mode 100644
 4971   6303   
index 0000000..e94dc0c
 4972         -
-- /dev/null
        6304  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 4973   6305   
@@ -0,0 +1,7 @@
        6306  +
GET
        6307  +
/
        6308  +
%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
        6309  +
host:example.amazonaws.com
        6310  +
        6311  +
host
        6312  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4974   6313   
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
 4975   6314   
new file mode 100644
 4976   6315   
index 0000000..7489437
 4977         -
-- /dev/null
        6316  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 4978   6317   
@@ -0,0 +1 @@
        6318  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 4979   6319   
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
 4980   6320   
new file mode 100644
 4981   6321   
index 0000000..90c0e73
 4982         -
-- /dev/null
        6322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 4983   6323   
@@ -0,0 +1,3 @@
        6324  +
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
        6325  +
Host:example.amazonaws.com
        6326  +
 4984   6327   
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
 4985   6328   
new file mode 100644
 4986   6329   
index 0000000..ab8a711
 4987         -
-- /dev/null
        6330  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 4988   6331   
@@ -0,0 +1,4 @@
        6332  +
AWS4-ECDSA-P256-SHA256
        6333  +
20150830T123600Z
        6334  +
20150830/service/aws4_request
        6335  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 4989   6336   
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
 4990   6337   
new file mode 100644
 4991   6338   
index 0000000..368c6e3
 4992         -
-- /dev/null
        6339  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 4993   6340   
@@ -0,0 +1,2 @@
        6341  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        6342  +
Host:example.amazonaws.com
 4994   6343   
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
 4995   6344   
new file mode 100644
 4996   6345   
index 0000000..0468d80
 4997         -
-- /dev/null
        6346  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 4998   6347   
@@ -0,0 +1,12 @@
        6348  +
{
        6349  +
    "credentials": {
        6350  +
        "access_key_id": "AKIDEXAMPLE",
        6351  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6352  +
    },
        6353  +
    "expiration_in_seconds": 3600,
        6354  +
    "normalize": true,
        6355  +
    "region": "us-east-1",
        6356  +
    "service": "service",
        6357  +
    "sign_body": false,
        6358  +
    "timestamp": "2015-08-30T12:36:00Z"
        6359  +
}
              \
 No newline at end of file
 4999   6360   
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
 5000   6361   
similarity index 99%
 5001   6362   
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
 5002   6363   
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
 5003   6364   
index 74f625a..3db56f7 100644
 5004         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/header-canonical-request.txt
        6365  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-canonical-request.txt
 5005   6366   
@@ -1,9 +1,9 @@
 5006   6367   
GET
 5007   6368   
/
 5008   6369   
Param1=value1&Param2=value2
 5009   6370   
host:example.amazonaws.com
 5010   6371   
x-amz-date:20150830T123600Z
 5011   6372   
x-amz-region-set:us-east-1
 5012   6373   
 5013   6374   
host;x-amz-date;x-amz-region-set
 5014         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6375  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5015   6376   
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
 5016   6377   
new file mode 100644
 5017   6378   
index 0000000..e6042bc
 5018         -
-- /dev/null
        6379  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 5019   6380   
@@ -0,0 +1 @@
        6381  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 5020   6382   
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
 5021   6383   
new file mode 100644
 5022   6384   
index 0000000..5505969
 5023         -
-- /dev/null
        6385  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 5024   6386   
@@ -0,0 +1,6 @@
        6387  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        6388  +
Host:example.amazonaws.com
        6389  +
X-Amz-Date:20150830T123600Z
        6390  +
X-Amz-Region-Set:us-east-1
        6391  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        6392  +
 5025   6393   
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
 5026   6394   
similarity index 99%
 5027   6395   
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
 5028   6396   
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
 5029   6397   
index 44873b7..e8f5e31 100644
 5030         -
-- 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
        6398  +
++ 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
 5031   6399   
@@ -1,4 +1,4 @@
 5032   6400   
AWS4-ECDSA-P256-SHA256
 5033   6401   
20150830T123600Z
 5034   6402   
20150830/service/aws4_request
 5035         -
cc07b29e0d0f0b2d6aa296621a5608fd9c2271159b9b2f737f682704ebb96482
        6403  +
cc07b29e0d0f0b2d6aa296621a5608fd9c2271159b9b2f737f682704ebb96482
              \
 No newline at end of file
 5036   6404   
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
 5037   6405   
new file mode 100644
 5038   6406   
index 0000000..379dcb2
 5039         -
-- /dev/null
        6407  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 5040   6408   
@@ -0,0 +1,4 @@
        6409  +
{
        6410  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6411  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6412  +
}
 5041   6413   
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
 5042   6414   
similarity index 99%
 5043   6415   
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
 5044   6416   
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
 5045   6417   
index 6d30727..3fe6a9f 100644
 5046         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/query-canonical-request.txt
        6418  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-canonical-request.txt
 5047   6419   
@@ -1,7 +1,7 @@
 5048   6420   
GET
 5049   6421   
/
 5050   6422   
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
 5051   6423   
host:example.amazonaws.com
 5052   6424   
 5053   6425   
host
 5054         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6426  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5055   6427   
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
 5056   6428   
new file mode 100644
 5057   6429   
index 0000000..3f35de8
 5058         -
-- /dev/null
        6430  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 5059   6431   
@@ -0,0 +1 @@
        6432  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 5060   6433   
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
 5061   6434   
new file mode 100644
 5062   6435   
index 0000000..30b336b
 5063         -
-- /dev/null
        6436  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 5064   6437   
@@ -0,0 +1,3 @@
        6438  +
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
        6439  +
Host:example.amazonaws.com
        6440  +
 5065   6441   
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
 5066   6442   
similarity index 99%
 5067   6443   
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
 5068   6444   
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
 5069   6445   
index 99d0510..7f0565f 100644
 5070         -
-- 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
        6446  +
++ 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
 5071   6447   
@@ -1,4 +1,4 @@
 5072   6448   
AWS4-ECDSA-P256-SHA256
 5073   6449   
20150830T123600Z
 5074   6450   
20150830/service/aws4_request
 5075         -
c688584c3dbae2868c4911c825239f2c9375e66b9962f21db60b9b2fcd75bf45
        6451  +
c688584c3dbae2868c4911c825239f2c9375e66b9962f21db60b9b2fcd75bf45
              \
 No newline at end of file
 5076   6452   
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
 5077   6453   
similarity index 100%
 5078   6454   
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
 5079   6455   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 5080   6456   
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
 5081   6457   
new file mode 100644
 5082   6458   
index 0000000..0468d80
 5083         -
-- /dev/null
        6459  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 5084   6460   
@@ -0,0 +1,12 @@
        6461  +
{
        6462  +
    "credentials": {
        6463  +
        "access_key_id": "AKIDEXAMPLE",
        6464  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6465  +
    },
        6466  +
    "expiration_in_seconds": 3600,
        6467  +
    "normalize": true,
        6468  +
    "region": "us-east-1",
        6469  +
    "service": "service",
        6470  +
    "sign_body": false,
        6471  +
    "timestamp": "2015-08-30T12:36:00Z"
        6472  +
}
              \
 No newline at end of file
 5085   6473   
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
 5086   6474   
similarity index 99%
 5087   6475   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 5088   6476   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 5089   6477   
index 816c862..cc4537a 100644
 5090         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
        6478  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 5091   6479   
@@ -1,9 +1,9 @@
 5092   6480   
GET
 5093   6481   
/
 5094   6482   
-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 5095   6483   
host:example.amazonaws.com
 5096   6484   
x-amz-date:20150830T123600Z
 5097   6485   
x-amz-region-set:us-east-1
 5098   6486   
 5099   6487   
host;x-amz-date;x-amz-region-set
 5100         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6488  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5101   6489   
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
 5102   6490   
new file mode 100644
 5103   6491   
index 0000000..70d38c1
 5104         -
-- /dev/null
        6492  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 5105   6493   
@@ -0,0 +1 @@
        6494  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 5106   6495   
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
 5107   6496   
new file mode 100644
 5108   6497   
index 0000000..0647eea
 5109         -
-- /dev/null
        6498  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 5110   6499   
@@ -0,0 +1,6 @@
        6500  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        6501  +
Host:example.amazonaws.com
        6502  +
X-Amz-Date:20150830T123600Z
        6503  +
X-Amz-Region-Set:us-east-1
        6504  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        6505  +
 5111   6506   
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
 5112   6507   
similarity index 99%
 5113   6508   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 5114   6509   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 5115   6510   
index 6129fc5..cc19d14 100644
 5116         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
        6511  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 5117   6512   
@@ -1,4 +1,4 @@
 5118   6513   
AWS4-ECDSA-P256-SHA256
 5119   6514   
20150830T123600Z
 5120   6515   
20150830/service/aws4_request
 5121         -
377b8a3e195894659b84cd1c475dc8a3663a663360a349430c0c3b82bd82b77b
        6516  +
377b8a3e195894659b84cd1c475dc8a3663a663360a349430c0c3b82bd82b77b
              \
 No newline at end of file
 5122   6517   
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
 5123   6518   
new file mode 100644
 5124   6519   
index 0000000..379dcb2
 5125         -
-- /dev/null
        6520  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 5126   6521   
@@ -0,0 +1,4 @@
        6522  +
{
        6523  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6524  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6525  +
}
 5127   6526   
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
 5128   6527   
similarity index 99%
 5129   6528   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 5130   6529   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 5131   6530   
index b77ee9f..ed6a10e 100644
 5132         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
        6531  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 5133   6532   
@@ -1,7 +1,7 @@
 5134   6533   
GET
 5135   6534   
/
 5136   6535   
-._~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
 5137   6536   
host:example.amazonaws.com
 5138   6537   
 5139   6538   
host
 5140         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6539  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5141   6540   
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
 5142   6541   
new file mode 100644
 5143   6542   
index 0000000..2ceba7b
 5144         -
-- /dev/null
        6543  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 5145   6544   
@@ -0,0 +1 @@
        6545  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 5146   6546   
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
 5147   6547   
new file mode 100644
 5148   6548   
index 0000000..0cd6d0a
 5149         -
-- /dev/null
        6549  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 5150   6550   
@@ -0,0 +1,3 @@
        6551  +
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
        6552  +
Host:example.amazonaws.com
        6553  +
 5151   6554   
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
 5152   6555   
similarity index 99%
 5153   6556   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 5154   6557   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 5155   6558   
index 1cfed7a..aad1421 100644
 5156         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
        6559  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 5157   6560   
@@ -1,4 +1,4 @@
 5158   6561   
AWS4-ECDSA-P256-SHA256
 5159   6562   
20150830T123600Z
 5160   6563   
20150830/service/aws4_request
 5161         -
5d8923c620c699f856a35a6eb8dd786fd4c8c6ab0a35c552caeb5b648989433f
        6564  +
5d8923c620c699f856a35a6eb8dd786fd4c8c6ab0a35c552caeb5b648989433f
              \
 No newline at end of file
 5162   6565   
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
 5163   6566   
similarity index 86%
 5164   6567   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 5165   6568   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 5166   6569   
index d2833b3..36b2fe3 100644
 5167         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        6570  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 5168   6571   
@@ -1,3 +1,2 @@
 5169   6572   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 5170   6573   
Host:example.amazonaws.com
 5171         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5172   6574   
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
 5173   6575   
new file mode 100644
 5174   6576   
index 0000000..0468d80
 5175         -
-- /dev/null
        6577  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 5176   6578   
@@ -0,0 +1,12 @@
        6579  +
{
        6580  +
    "credentials": {
        6581  +
        "access_key_id": "AKIDEXAMPLE",
        6582  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6583  +
    },
        6584  +
    "expiration_in_seconds": 3600,
        6585  +
    "normalize": true,
        6586  +
    "region": "us-east-1",
        6587  +
    "service": "service",
        6588  +
    "sign_body": false,
        6589  +
    "timestamp": "2015-08-30T12:36:00Z"
        6590  +
}
              \
 No newline at end of file
 5177   6591   
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
 5178   6592   
new file mode 100644
 5179   6593   
index 0000000..76db73d
 5180         -
-- /dev/null
        6594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 5181   6595   
@@ -0,0 +1,9 @@
        6596  +
GET
        6597  +
/
        6598  +
        6599  +
host:example.amazonaws.com
        6600  +
x-amz-date:20150830T123600Z
        6601  +
x-amz-region-set:us-east-1
        6602  +
        6603  +
host;x-amz-date;x-amz-region-set
        6604  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5182   6605   
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
 5183   6606   
new file mode 100644
 5184   6607   
index 0000000..281cc62
 5185         -
-- /dev/null
        6608  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 5186   6609   
@@ -0,0 +1 @@
        6610  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 5187   6611   
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
 5188   6612   
new file mode 100644
 5189   6613   
index 0000000..cce9925
 5190         -
-- /dev/null
        6614  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 5191   6615   
@@ -0,0 +1,6 @@
        6616  +
GET / HTTP/1.1
        6617  +
Host:example.amazonaws.com
        6618  +
X-Amz-Date:20150830T123600Z
        6619  +
X-Amz-Region-Set:us-east-1
        6620  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        6621  +
 5192   6622   
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
 5193   6623   
new file mode 100644
 5194   6624   
index 0000000..600f1d8
 5195         -
-- /dev/null
        6625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 5196   6626   
@@ -0,0 +1,4 @@
        6627  +
AWS4-ECDSA-P256-SHA256
        6628  +
20150830T123600Z
        6629  +
20150830/service/aws4_request
        6630  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5197   6631   
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
 5198   6632   
new file mode 100644
 5199   6633   
index 0000000..379dcb2
 5200         -
-- /dev/null
        6634  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 5201   6635   
@@ -0,0 +1,4 @@
        6636  +
{
        6637  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6638  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6639  +
}
 5202   6640   
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
 5203   6641   
new file mode 100644
 5204   6642   
index 0000000..779c51c
 5205         -
-- /dev/null
        6643  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 5206   6644   
@@ -0,0 +1,7 @@
        6645  +
GET
        6646  +
/
        6647  +
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
        6648  +
host:example.amazonaws.com
        6649  +
        6650  +
host
        6651  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5207   6652   
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
 5208   6653   
new file mode 100644
 5209   6654   
index 0000000..2979e5e
 5210         -
-- /dev/null
        6655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 5211   6656   
@@ -0,0 +1 @@
        6657  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 5212   6658   
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
 5213   6659   
new file mode 100644
 5214   6660   
index 0000000..1b3179c
 5215         -
-- /dev/null
        6661  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 5216   6662   
@@ -0,0 +1,3 @@
        6663  +
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
        6664  +
Host:example.amazonaws.com
        6665  +
 5217   6666   
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
 5218   6667   
new file mode 100644
 5219   6668   
index 0000000..6e29a7e
 5220         -
-- /dev/null
        6669  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 5221   6670   
@@ -0,0 +1,4 @@
        6671  +
AWS4-ECDSA-P256-SHA256
        6672  +
20150830T123600Z
        6673  +
20150830/service/aws4_request
        6674  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 5222   6675   
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
 5223   6676   
similarity index 60%
 5224   6677   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 5225   6678   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 5226   6679   
index 0f7a9bf..e659c3b 100644
 5227         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        6680  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 5228   6681   
@@ -1,3 +1,2 @@
 5229   6682   
GET / HTTP/1.1
 5230   6683   
Host:example.amazonaws.com
 5231         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5232   6684   
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
 5233   6685   
new file mode 100644
 5234   6686   
index 0000000..0468d80
 5235         -
-- /dev/null
        6687  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 5236   6688   
@@ -0,0 +1,12 @@
        6689  +
{
        6690  +
    "credentials": {
        6691  +
        "access_key_id": "AKIDEXAMPLE",
        6692  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6693  +
    },
        6694  +
    "expiration_in_seconds": 3600,
        6695  +
    "normalize": true,
        6696  +
    "region": "us-east-1",
        6697  +
    "service": "service",
        6698  +
    "sign_body": false,
        6699  +
    "timestamp": "2015-08-30T12:36:00Z"
        6700  +
}
              \
 No newline at end of file
 5237   6701   
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
 5238   6702   
new file mode 100644
 5239   6703   
index 0000000..8841ddf
 5240         -
-- /dev/null
        6704  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 5241   6705   
@@ -0,0 +1,9 @@
        6706  +
GET
        6707  +
/
        6708  +
%E1%88%B4=bar
        6709  +
host:example.amazonaws.com
        6710  +
x-amz-date:20150830T123600Z
        6711  +
x-amz-region-set:us-east-1
        6712  +
        6713  +
host;x-amz-date;x-amz-region-set
        6714  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5242   6715   
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
 5243   6716   
new file mode 100644
 5244   6717   
index 0000000..1497add
 5245         -
-- /dev/null
        6718  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 5246   6719   
@@ -0,0 +1 @@
        6720  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 5247   6721   
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
 5248   6722   
new file mode 100644
 5249   6723   
index 0000000..961bc10
 5250         -
-- /dev/null
        6724  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 5251   6725   
@@ -0,0 +1,6 @@
        6726  +
GET /?ሴ=bar HTTP/1.1
        6727  +
Host:example.amazonaws.com
        6728  +
X-Amz-Date:20150830T123600Z
        6729  +
X-Amz-Region-Set:us-east-1
        6730  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        6731  +
 5252   6732   
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
 5253   6733   
new file mode 100644
 5254   6734   
index 0000000..e78ed70
 5255         -
-- /dev/null
        6735  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 5256   6736   
@@ -0,0 +1,4 @@
        6737  +
AWS4-ECDSA-P256-SHA256
        6738  +
20150830T123600Z
        6739  +
20150830/service/aws4_request
        6740  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 5257   6741   
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
 5258   6742   
new file mode 100644
 5259   6743   
index 0000000..379dcb2
 5260         -
-- /dev/null
        6744  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 5261   6745   
@@ -0,0 +1,4 @@
        6746  +
{
        6747  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6748  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6749  +
}
 5262   6750   
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
 5263   6751   
new file mode 100644
 5264   6752   
index 0000000..6d5ae93
 5265         -
-- /dev/null
        6753  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 5266   6754   
@@ -0,0 +1,7 @@
        6755  +
GET
        6756  +
/
        6757  +
%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
        6758  +
host:example.amazonaws.com
        6759  +
        6760  +
host
        6761  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5267   6762   
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
 5268   6763   
new file mode 100644
 5269   6764   
index 0000000..92107f2
 5270         -
-- /dev/null
        6765  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 5271   6766   
@@ -0,0 +1 @@
        6767  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 5272   6768   
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
 5273   6769   
new file mode 100644
 5274   6770   
index 0000000..bb8a75b
 5275         -
-- /dev/null
        6771  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 5276   6772   
@@ -0,0 +1,3 @@
        6773  +
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
        6774  +
Host:example.amazonaws.com
        6775  +
 5277   6776   
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
 5278   6777   
new file mode 100644
 5279   6778   
index 0000000..9fa94c7
 5280         -
-- /dev/null
        6779  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 5281   6780   
@@ -0,0 +1,4 @@
        6781  +
AWS4-ECDSA-P256-SHA256
        6782  +
20150830T123600Z
        6783  +
20150830/service/aws4_request
        6784  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 5282   6785   
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
 5283   6786   
new file mode 100644
 5284   6787   
index 0000000..aff333a
 5285         -
-- /dev/null
        6788  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 5286   6789   
@@ -0,0 +1,2 @@
        6790  +
GET /?ሴ=bar HTTP/1.1
        6791  +
Host:example.amazonaws.com
 5287   6792   
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
 5288   6793   
new file mode 100644
 5289   6794   
index 0000000..a334e18
 5290         -
-- /dev/null
        6795  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 5291   6796   
@@ -0,0 +1,13 @@
        6797  +
{
        6798  +
    "credentials": {
        6799  +
        "access_key_id": "AKIDEXAMPLE",
        6800  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6801  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        6802  +
    },
        6803  +
    "expiration_in_seconds": 3600,
        6804  +
    "normalize": true,
        6805  +
    "region": "us-east-1",
        6806  +
    "service": "service",
        6807  +
    "sign_body": false,
        6808  +
    "timestamp": "2015-08-30T12:36:00Z"
        6809  +
}
              \
 No newline at end of file
 5292   6810   
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
 5293   6811   
similarity index 99%
 5294   6812   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 5295   6813   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5296   6814   
index f14defd..0e9ad42 100644
 5297         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
        6815  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5298   6816   
@@ -1,10 +1,10 @@
 5299   6817   
GET
 5300   6818   
/
 5301   6819   
 5302   6820   
host:example.amazonaws.com
 5303   6821   
x-amz-date:20150830T123600Z
 5304   6822   
x-amz-region-set:us-east-1
 5305   6823   
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
 5306   6824   
 5307   6825   
host;x-amz-date;x-amz-region-set;x-amz-security-token
 5308         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6826  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5309   6827   
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
 5310   6828   
new file mode 100644
 5311   6829   
index 0000000..a7673b5
 5312         -
-- /dev/null
        6830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 5313   6831   
@@ -0,0 +1 @@
        6832  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 5314   6833   
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
 5315   6834   
new file mode 100644
 5316   6835   
index 0000000..ed16e76
 5317         -
-- /dev/null
        6836  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 5318   6837   
@@ -0,0 +1,7 @@
        6838  +
GET / HTTP/1.1
        6839  +
Host:example.amazonaws.com
        6840  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        6841  +
X-Amz-Date:20150830T123600Z
        6842  +
X-Amz-Region-Set:us-east-1
        6843  +
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
        6844  +
 5319   6845   
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
 5320   6846   
similarity index 99%
 5321   6847   
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
 5322   6848   
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
 5323   6849   
index 4edece5..6c1ec65 100644
 5324         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-string-to-sign.txt
        6850  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-string-to-sign.txt
 5325   6851   
@@ -1,4 +1,4 @@
 5326   6852   
AWS4-ECDSA-P256-SHA256
 5327   6853   
20150830T123600Z
 5328   6854   
20150830/service/aws4_request
 5329         -
79893373104239a0547df489af395ec3c1b8873a8601f07f11ffd3f1ac557e7d
        6855  +
79893373104239a0547df489af395ec3c1b8873a8601f07f11ffd3f1ac557e7d
              \
 No newline at end of file
 5330   6856   
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
 5331   6857   
new file mode 100644
 5332   6858   
index 0000000..379dcb2
 5333         -
-- /dev/null
        6859  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 5334   6860   
@@ -0,0 +1,4 @@
        6861  +
{
        6862  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6863  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6864  +
}
 5335   6865   
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
 5336   6866   
similarity index 99%
 5337   6867   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 5338   6868   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5339   6869   
index 7c042af..1876b42 100644
 5340         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
        6870  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5341   6871   
@@ -1,7 +1,7 @@
 5342   6872   
GET
 5343   6873   
/
 5344   6874   
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
 5345   6875   
host:example.amazonaws.com
 5346   6876   
 5347   6877   
host
 5348         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6878  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5349   6879   
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
 5350   6880   
new file mode 100644
 5351   6881   
index 0000000..903dfb4
 5352         -
-- /dev/null
        6882  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 5353   6883   
@@ -0,0 +1 @@
        6884  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 5354   6885   
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
 5355   6886   
new file mode 100644
 5356   6887   
index 0000000..bf1d246
 5357         -
-- /dev/null
        6888  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 5358   6889   
@@ -0,0 +1,3 @@
        6890  +
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
        6891  +
Host:example.amazonaws.com
        6892  +
 5359   6893   
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
 5360   6894   
similarity index 99%
 5361   6895   
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
 5362   6896   
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
 5363   6897   
index 0fd066a..f1b1790 100644
 5364         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-string-to-sign.txt
        6898  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-string-to-sign.txt
 5365   6899   
@@ -1,4 +1,4 @@
 5366   6900   
AWS4-ECDSA-P256-SHA256
 5367   6901   
20150830T123600Z
 5368   6902   
20150830/service/aws4_request
 5369         -
496062b4c2ed2175fe08ad084158783fa8d013c694542af721d49b25d1ebd390
        6903  +
496062b4c2ed2175fe08ad084158783fa8d013c694542af721d49b25d1ebd390
              \
 No newline at end of file
 5370   6904   
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
 5371   6905   
similarity index 60%
 5372   6906   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 5373   6907   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5374   6908   
index 0f7a9bf..e659c3b 100644
 5375         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        6909  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5376   6910   
@@ -1,3 +1,2 @@
 5377   6911   
GET / HTTP/1.1
 5378   6912   
Host:example.amazonaws.com
 5379         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5380   6913   
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
 5381   6914   
new file mode 100644
 5382   6915   
index 0000000..76db73d
 5383         -
-- /dev/null
        6916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 5384   6917   
@@ -0,0 +1,9 @@
        6918  +
GET
        6919  +
/
        6920  +
        6921  +
host:example.amazonaws.com
        6922  +
x-amz-date:20150830T123600Z
        6923  +
x-amz-region-set:us-east-1
        6924  +
        6925  +
host;x-amz-date;x-amz-region-set
        6926  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5385   6927   
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
 5386   6928   
new file mode 100644
 5387   6929   
index 0000000..0468d80
 5388         -
-- /dev/null
        6930  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 5389   6931   
@@ -0,0 +1,12 @@
        6932  +
{
        6933  +
    "credentials": {
        6934  +
        "access_key_id": "AKIDEXAMPLE",
        6935  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6936  +
    },
        6937  +
    "expiration_in_seconds": 3600,
        6938  +
    "normalize": true,
        6939  +
    "region": "us-east-1",
        6940  +
    "service": "service",
        6941  +
    "sign_body": false,
        6942  +
    "timestamp": "2015-08-30T12:36:00Z"
        6943  +
}
              \
 No newline at end of file
 5390   6944   
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
 5391   6945   
new file mode 100644
 5392   6946   
index 0000000..76db73d
 5393         -
-- /dev/null
        6947  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 5394   6948   
@@ -0,0 +1,9 @@
        6949  +
GET
        6950  +
/
        6951  +
        6952  +
host:example.amazonaws.com
        6953  +
x-amz-date:20150830T123600Z
        6954  +
x-amz-region-set:us-east-1
        6955  +
        6956  +
host;x-amz-date;x-amz-region-set
        6957  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5395   6958   
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
 5396   6959   
new file mode 100644
 5397   6960   
index 0000000..a96ff24
 5398         -
-- /dev/null
        6961  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 5399   6962   
@@ -0,0 +1 @@
        6963  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 5400   6964   
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
 5401   6965   
new file mode 100644
 5402   6966   
index 0000000..689078b
 5403         -
-- /dev/null
        6967  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 5404   6968   
@@ -0,0 +1,6 @@
        6969  +
GET / HTTP/1.1
        6970  +
Host:example.amazonaws.com
        6971  +
X-Amz-Date:20150830T123600Z
        6972  +
X-Amz-Region-Set:us-east-1
        6973  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        6974  +
 5405   6975   
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
 5406   6976   
new file mode 100644
 5407   6977   
index 0000000..600f1d8
 5408         -
-- /dev/null
        6978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 5409   6979   
@@ -0,0 +1,4 @@
        6980  +
AWS4-ECDSA-P256-SHA256
        6981  +
20150830T123600Z
        6982  +
20150830/service/aws4_request
        6983  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5410   6984   
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
 5411   6985   
new file mode 100644
 5412   6986   
index 0000000..379dcb2
 5413         -
-- /dev/null
        6987  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 5414   6988   
@@ -0,0 +1,4 @@
        6989  +
{
        6990  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6991  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6992  +
}
 5415   6993   
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
 5416   6994   
new file mode 100644
 5417   6995   
index 0000000..779c51c
 5418         -
-- /dev/null
        6996  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 5419   6997   
@@ -0,0 +1,7 @@
        6998  +
GET
        6999  +
/
        7000  +
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
        7001  +
host:example.amazonaws.com
        7002  +
        7003  +
host
        7004  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5420   7005   
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
 5421   7006   
new file mode 100644
 5422   7007   
index 0000000..cc42158
 5423         -
-- /dev/null
        7008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 5424   7009   
@@ -0,0 +1 @@
        7010  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 5425   7011   
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
 5426   7012   
new file mode 100644
 5427   7013   
index 0000000..dc6d01d
 5428         -
-- /dev/null
        7014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 5429   7015   
@@ -0,0 +1,3 @@
        7016  +
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
        7017  +
Host:example.amazonaws.com
        7018  +
 5430   7019   
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
 5431   7020   
new file mode 100644
 5432   7021   
index 0000000..6e29a7e
 5433         -
-- /dev/null
        7022  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 5434   7023   
@@ -0,0 +1,4 @@
        7024  +
AWS4-ECDSA-P256-SHA256
        7025  +
20150830T123600Z
        7026  +
20150830/service/aws4_request
        7027  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 5435   7028   
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
 5436   7029   
new file mode 100644
 5437   7030   
index 0000000..e659c3b
 5438         -
-- /dev/null
        7031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 5439   7032   
@@ -0,0 +1,2 @@
        7033  +
GET / HTTP/1.1
        7034  +
Host:example.amazonaws.com
 5440   7035   
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
 5441   7036   
new file mode 100644
 5442   7037   
index 0000000..600f1d8
 5443         -
-- /dev/null
        7038  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 5444   7039   
@@ -0,0 +1,4 @@
        7040  +
AWS4-ECDSA-P256-SHA256
        7041  +
20150830T123600Z
        7042  +
20150830/service/aws4_request
        7043  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5445   7044   
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
 5446   7045   
new file mode 100644
 5447   7046   
index 0000000..0468d80
 5448         -
-- /dev/null
        7047  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 5449   7048   
@@ -0,0 +1,12 @@
        7049  +
{
        7050  +
    "credentials": {
        7051  +
        "access_key_id": "AKIDEXAMPLE",
        7052  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7053  +
    },
        7054  +
    "expiration_in_seconds": 3600,
        7055  +
    "normalize": true,
        7056  +
    "region": "us-east-1",
        7057  +
    "service": "service",
        7058  +
    "sign_body": false,
        7059  +
    "timestamp": "2015-08-30T12:36:00Z"
        7060  +
}
              \
 No newline at end of file
 5450   7061   
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
 5451   7062   
similarity index 99%
 5452   7063   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 5453   7064   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5454   7065   
index a6942c1..e881ac7 100644
 5455         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
        7066  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5456   7067   
@@ -1,9 +1,9 @@
 5457   7068   
POST
 5458   7069   
/
 5459   7070   
 5460   7071   
host:example.amazonaws.com
 5461   7072   
x-amz-date:20150830T123600Z
 5462   7073   
x-amz-region-set:us-east-1
 5463   7074   
 5464   7075   
host;x-amz-date;x-amz-region-set
 5465         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7076  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5466   7077   
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
 5467   7078   
new file mode 100644
 5468   7079   
index 0000000..4210210
 5469         -
-- /dev/null
        7080  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 5470   7081   
@@ -0,0 +1 @@
        7082  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 5471   7083   
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
 5472   7084   
new file mode 100644
 5473   7085   
index 0000000..257b110
 5474         -
-- /dev/null
        7086  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 5475   7087   
@@ -0,0 +1,6 @@
        7088  +
POST / HTTP/1.1
        7089  +
Host:example.amazonaws.com
        7090  +
X-Amz-Date:20150830T123600Z
        7091  +
X-Amz-Region-Set:us-east-1
        7092  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        7093  +
 5476   7094   
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
 5477   7095   
similarity index 99%
 5478   7096   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 5479   7097   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5480   7098   
index d5650cb..f8adf13 100644
 5481         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
        7099  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5482   7100   
@@ -1,4 +1,4 @@
 5483   7101   
AWS4-ECDSA-P256-SHA256
 5484   7102   
20150830T123600Z
 5485   7103   
20150830/service/aws4_request
 5486         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7104  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5487   7105   
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
 5488   7106   
new file mode 100644
 5489   7107   
index 0000000..379dcb2
 5490         -
-- /dev/null
        7108  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 5491   7109   
@@ -0,0 +1,4 @@
        7110  +
{
        7111  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7112  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7113  +
}
 5492   7114   
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
 5493   7115   
similarity index 99%
 5494   7116   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 5495   7117   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5496   7118   
index e48ce07..5ea8e3c 100644
 5497         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
        7119  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5498   7120   
@@ -1,7 +1,7 @@
 5499   7121   
POST
 5500   7122   
/
 5501   7123   
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
 5502   7124   
host:example.amazonaws.com
 5503   7125   
 5504   7126   
host
 5505         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7127  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5506   7128   
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
 5507   7129   
new file mode 100644
 5508   7130   
index 0000000..9e2069e
 5509         -
-- /dev/null
        7131  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 5510   7132   
@@ -0,0 +1 @@
        7133  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 5511   7134   
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
 5512   7135   
new file mode 100644
 5513   7136   
index 0000000..67f5d29
 5514         -
-- /dev/null
        7137  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 5515   7138   
@@ -0,0 +1,3 @@
        7139  +
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
        7140  +
Host:example.amazonaws.com
        7141  +
 5516   7142   
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
 5517   7143   
similarity index 99%
 5518   7144   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 5519   7145   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5520   7146   
index 34e3382..711c162 100644
 5521         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
        7147  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5522   7148   
@@ -1,4 +1,4 @@
 5523   7149   
AWS4-ECDSA-P256-SHA256
 5524   7150   
20150830T123600Z
 5525   7151   
20150830/service/aws4_request
 5526         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7152  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5527   7153   
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
 5528   7154   
similarity index 61%
 5529   7155   
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
 5530   7156   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5531   7157   
index 3dc4179..3f0a82a 100644
 5532         -
-- 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
        7158  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5533   7159   
@@ -1,3 +1,2 @@
 5534   7160   
POST / HTTP/1.1
 5535   7161   
Host:example.amazonaws.com
 5536         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5537   7162   
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
 5538   7163   
new file mode 100644
 5539   7164   
index 0000000..0468d80
 5540         -
-- /dev/null
        7165  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 5541   7166   
@@ -0,0 +1,12 @@
        7167  +
{
        7168  +
    "credentials": {
        7169  +
        "access_key_id": "AKIDEXAMPLE",
        7170  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7171  +
    },
        7172  +
    "expiration_in_seconds": 3600,
        7173  +
    "normalize": true,
        7174  +
    "region": "us-east-1",
        7175  +
    "service": "service",
        7176  +
    "sign_body": false,
        7177  +
    "timestamp": "2015-08-30T12:36:00Z"
        7178  +
}
              \
 No newline at end of file
 5542   7179   
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
 5543   7180   
similarity index 99%
 5544   7181   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 5545   7182   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5546   7183   
index a8e1727..2883822 100644
 5547         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
        7184  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5548   7185   
@@ -1,10 +1,10 @@
 5549   7186   
POST
 5550   7187   
/
 5551   7188   
 5552   7189   
host:example.amazonaws.com
 5553   7190   
my-header1:value1
 5554   7191   
x-amz-date:20150830T123600Z
 5555   7192   
x-amz-region-set:us-east-1
 5556   7193   
 5557   7194   
host;my-header1;x-amz-date;x-amz-region-set
 5558         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7195  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5559   7196   
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
 5560   7197   
new file mode 100644
 5561   7198   
index 0000000..e3c2e6e
 5562         -
-- /dev/null
        7199  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 5563   7200   
@@ -0,0 +1 @@
        7201  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 5564   7202   
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
 5565   7203   
new file mode 100644
 5566   7204   
index 0000000..1d6e288
 5567         -
-- /dev/null
        7205  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 5568   7206   
@@ -0,0 +1,7 @@
        7207  +
POST / HTTP/1.1
        7208  +
Host:example.amazonaws.com
        7209  +
My-Header1:value1
        7210  +
X-Amz-Date:20150830T123600Z
        7211  +
X-Amz-Region-Set:us-east-1
        7212  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        7213  +
 5569   7214   
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
 5570   7215   
similarity index 99%
 5571   7216   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 5572   7217   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5573   7218   
index f6e3e9b..7c5236a 100644
 5574         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
        7219  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5575   7220   
@@ -1,4 +1,4 @@
 5576   7221   
AWS4-ECDSA-P256-SHA256
 5577   7222   
20150830T123600Z
 5578   7223   
20150830/service/aws4_request
 5579         -
b92b1e85236a12f9d118f85fb6686c83b0e83fb3428f8d4da3cc9acb2851fcfa
        7224  +
b92b1e85236a12f9d118f85fb6686c83b0e83fb3428f8d4da3cc9acb2851fcfa
              \
 No newline at end of file
 5580   7225   
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
 5581   7226   
new file mode 100644
 5582   7227   
index 0000000..379dcb2
 5583         -
-- /dev/null
        7228  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 5584   7229   
@@ -0,0 +1,4 @@
        7230  +
{
        7231  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7232  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7233  +
}
 5585   7234   
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
 5586   7235   
similarity index 99%
 5587   7236   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 5588   7237   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5589   7238   
index 0ae73e1..2cf3f29 100644
 5590         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
        7239  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5591   7240   
@@ -1,8 +1,8 @@
 5592   7241   
POST
 5593   7242   
/
 5594   7243   
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
 5595   7244   
host:example.amazonaws.com
 5596   7245   
my-header1:value1
 5597   7246   
 5598   7247   
host;my-header1
 5599         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7248  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5600   7249   
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
 5601   7250   
new file mode 100644
 5602   7251   
index 0000000..2a08401
 5603         -
-- /dev/null
        7252  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 5604   7253   
@@ -0,0 +1 @@
        7254  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 5605   7255   
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
 5606   7256   
new file mode 100644
 5607   7257   
index 0000000..8d2343f
 5608         -
-- /dev/null
        7258  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 5609   7259   
@@ -0,0 +1,4 @@
        7260  +
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
        7261  +
Host:example.amazonaws.com
        7262  +
My-Header1:value1
        7263  +
 5610   7264   
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
 5611   7265   
similarity index 99%
 5612   7266   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 5613   7267   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5614   7268   
index 8cb96bf..2c4db7a 100644
 5615         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
        7269  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5616   7270   
@@ -1,4 +1,4 @@
 5617   7271   
AWS4-ECDSA-P256-SHA256
 5618   7272   
20150830T123600Z
 5619   7273   
20150830/service/aws4_request
 5620         -
336638ab840d4785edc7db35ab9c036bc15ffb2dc1a4e05b04f3a7cd7407593f
        7274  +
336638ab840d4785edc7db35ab9c036bc15ffb2dc1a4e05b04f3a7cd7407593f
              \
 No newline at end of file
 5621   7275   
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
 5622   7276   
similarity index 69%
 5623   7277   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 5624   7278   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5625   7279   
index 0253f19..917720e 100644
 5626         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        7280  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5627   7281   
@@ -1,4 +1,3 @@
 5628   7282   
POST / HTTP/1.1
 5629   7283   
Host:example.amazonaws.com
 5630   7284   
My-Header1:value1
 5631         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5632   7285   
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
 5633   7286   
new file mode 100644
 5634   7287   
index 0000000..0468d80
 5635         -
-- /dev/null
        7288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 5636   7289   
@@ -0,0 +1,12 @@
        7290  +
{
        7291  +
    "credentials": {
        7292  +
        "access_key_id": "AKIDEXAMPLE",
        7293  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7294  +
    },
        7295  +
    "expiration_in_seconds": 3600,
        7296  +
    "normalize": true,
        7297  +
    "region": "us-east-1",
        7298  +
    "service": "service",
        7299  +
    "sign_body": false,
        7300  +
    "timestamp": "2015-08-30T12:36:00Z"
        7301  +
}
              \
 No newline at end of file
 5637   7302   
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
 5638   7303   
similarity index 99%
 5639   7304   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 5640   7305   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5641   7306   
index 1dc3ef8..164e65c 100644
 5642         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
        7307  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5643   7308   
@@ -1,10 +1,10 @@
 5644   7309   
POST
 5645   7310   
/
 5646   7311   
 5647   7312   
host:example.amazonaws.com
 5648   7313   
my-header1:VALUE1
 5649   7314   
x-amz-date:20150830T123600Z
 5650   7315   
x-amz-region-set:us-east-1
 5651   7316   
 5652   7317   
host;my-header1;x-amz-date;x-amz-region-set
 5653         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7318  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5654   7319   
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
 5655   7320   
new file mode 100644
 5656   7321   
index 0000000..7072b0e
 5657         -
-- /dev/null
        7322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 5658   7323   
@@ -0,0 +1 @@
        7324  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 5659   7325   
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
 5660   7326   
new file mode 100644
 5661   7327   
index 0000000..17f5e3e
 5662         -
-- /dev/null
        7328  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 5663   7329   
@@ -0,0 +1,7 @@
        7330  +
POST / HTTP/1.1
        7331  +
Host:example.amazonaws.com
        7332  +
My-Header1:VALUE1
        7333  +
X-Amz-Date:20150830T123600Z
        7334  +
X-Amz-Region-Set:us-east-1
        7335  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        7336  +
 5664   7337   
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
 5665   7338   
similarity index 99%
 5666   7339   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 5667   7340   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5668   7341   
index 59c7e45..620f54e 100644
 5669         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
        7342  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5670   7343   
@@ -1,4 +1,4 @@
 5671   7344   
AWS4-ECDSA-P256-SHA256
 5672   7345   
20150830T123600Z
 5673   7346   
20150830/service/aws4_request
 5674         -
7de5a74bc45fb5c8a90faada2ab9538e69e4a5eb7f330f62387715669cecd492
        7347  +
7de5a74bc45fb5c8a90faada2ab9538e69e4a5eb7f330f62387715669cecd492
              \
 No newline at end of file
 5675   7348   
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
 5676   7349   
new file mode 100644
 5677   7350   
index 0000000..379dcb2
 5678         -
-- /dev/null
        7351  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 5679   7352   
@@ -0,0 +1,4 @@
        7353  +
{
        7354  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7355  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7356  +
}
 5680   7357   
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
 5681   7358   
similarity index 99%
 5682   7359   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 5683   7360   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5684   7361   
index 377e6f3..23e0da3 100644
 5685         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
        7362  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5686   7363   
@@ -1,8 +1,8 @@
 5687   7364   
POST
 5688   7365   
/
 5689   7366   
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
 5690   7367   
host:example.amazonaws.com
 5691   7368   
my-header1:VALUE1
 5692   7369   
 5693   7370   
host;my-header1
 5694         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7371  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5695   7372   
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
 5696   7373   
new file mode 100644
 5697   7374   
index 0000000..a18acb8
 5698         -
-- /dev/null
        7375  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 5699   7376   
@@ -0,0 +1 @@
        7377  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 5700   7378   
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
 5701   7379   
new file mode 100644
 5702   7380   
index 0000000..7cbdcfa
 5703         -
-- /dev/null
        7381  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 5704   7382   
@@ -0,0 +1,4 @@
        7383  +
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
        7384  +
Host:example.amazonaws.com
        7385  +
My-Header1:VALUE1
        7386  +
 5705   7387   
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
 5706   7388   
similarity index 99%
 5707   7389   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 5708   7390   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5709   7391   
index 84a7afd..0c90627 100644
 5710         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
        7392  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5711   7393   
@@ -1,4 +1,4 @@
 5712   7394   
AWS4-ECDSA-P256-SHA256
 5713   7395   
20150830T123600Z
 5714   7396   
20150830/service/aws4_request
 5715         -
949fb555e05d3289760ff0f0566ad73a69ed865000d9843b93a15b916dbc8b6f
        7397  +
949fb555e05d3289760ff0f0566ad73a69ed865000d9843b93a15b916dbc8b6f
              \
 No newline at end of file
 5716   7398   
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
 5717   7399   
similarity index 69%
 5718   7400   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 5719   7401   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5720   7402   
index 3f9987a..5f14c91 100644
 5721         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        7403  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5722   7404   
@@ -1,4 +1,3 @@
 5723   7405   
POST / HTTP/1.1
 5724   7406   
Host:example.amazonaws.com
 5725   7407   
My-Header1:VALUE1
 5726         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5727   7408   
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
 5728   7409   
new file mode 100644
 5729   7410   
index 0000000..8f1d5ce
 5730         -
-- /dev/null
        7411  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 5731   7412   
@@ -0,0 +1,14 @@
        7413  +
{
        7414  +
    "credentials": {
        7415  +
        "access_key_id": "AKIDEXAMPLE",
        7416  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        7417  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        7418  +
    },
        7419  +
    "expiration_in_seconds": 3600,
        7420  +
    "normalize": true,
        7421  +
    "region": "us-east-1",
        7422  +
    "service": "service",
        7423  +
    "sign_body": false,
        7424  +
    "timestamp": "2015-08-30T12:36:00Z",
        7425  +
    "omit_session_token": true
        7426  +
}
 5732   7427   
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
 5733   7428   
similarity index 99%
 5734   7429   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 5735   7430   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5736   7431   
index a6942c1..e881ac7 100644
 5737         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
        7432  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5738   7433   
@@ -1,9 +1,9 @@
 5739   7434   
POST
 5740   7435   
/
 5741   7436   
 5742   7437   
host:example.amazonaws.com
 5743   7438   
x-amz-date:20150830T123600Z
 5744   7439   
x-amz-region-set:us-east-1
 5745   7440   
 5746   7441   
host;x-amz-date;x-amz-region-set
 5747         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7442  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5748   7443   
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
 5749   7444   
new file mode 100644
 5750   7445   
index 0000000..9c5ecb9
 5751         -
-- /dev/null
        7446  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 5752   7447   
@@ -0,0 +1 @@
        7448  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 5753   7449   
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
 5754   7450   
similarity index 52%
 5755   7451   
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
 5756   7452   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5757   7453   
index 9d91775..61b6527 100644
 5758         -
-- 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
        7454  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5759   7455   
@@ -1,4 +1,7 @@
 5760   7456   
POST / HTTP/1.1
 5761   7457   
Host:example.amazonaws.com
        7458  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 5762   7459   
X-Amz-Date:20150830T123600Z
 5763         -
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
        7460  +
X-Amz-Region-Set:us-east-1
        7461  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        7462  +
 5764   7463   
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
 5765   7464   
similarity index 99%
 5766   7465   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 5767   7466   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5768   7467   
index d5650cb..f8adf13 100644
 5769         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
        7468  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5770   7469   
@@ -1,4 +1,4 @@
 5771   7470   
AWS4-ECDSA-P256-SHA256
 5772   7471   
20150830T123600Z
 5773   7472   
20150830/service/aws4_request
 5774         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7473  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5775   7474   
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
 5776   7475   
new file mode 100644
 5777   7476   
index 0000000..379dcb2
 5778         -
-- /dev/null
        7477  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 5779   7478   
@@ -0,0 +1,4 @@
        7479  +
{
        7480  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7481  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7482  +
}
 5780   7483   
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
 5781   7484   
similarity index 99%
 5782   7485   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 5783   7486   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5784   7487   
index e48ce07..5ea8e3c 100644
 5785         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
        7488  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5786   7489   
@@ -1,7 +1,7 @@
 5787   7490   
POST
 5788   7491   
/
 5789   7492   
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
 5790   7493   
host:example.amazonaws.com
 5791   7494   
 5792   7495   
host
 5793         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7496  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5794   7497   
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
 5795   7498   
new file mode 100644
 5796   7499   
index 0000000..ff8823a
 5797         -
-- /dev/null
        7500  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 5798   7501   
@@ -0,0 +1 @@
        7502  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 5799   7503   
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
 5800   7504   
new file mode 100644
 5801   7505   
index 0000000..cfac41b
 5802         -
-- /dev/null
        7506  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 5803   7507   
@@ -0,0 +1,3 @@
        7508  +
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
        7509  +
Host:example.amazonaws.com
        7510  +
 5804   7511   
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
 5805   7512   
similarity index 99%
 5806   7513   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 5807   7514   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5808   7515   
index 34e3382..711c162 100644
 5809         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
        7516  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5810   7517   
@@ -1,4 +1,4 @@
 5811   7518   
AWS4-ECDSA-P256-SHA256
 5812   7519   
20150830T123600Z
 5813   7520   
20150830/service/aws4_request
 5814         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7521  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5815   7522   
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
 5816   7523   
similarity index 61%
 5817   7524   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 5818   7525   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 5819   7526   
index 3dc4179..3f0a82a 100644
 5820         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        7527  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 5821   7528   
@@ -1,3 +1,2 @@
 5822   7529   
POST / HTTP/1.1
 5823   7530   
Host:example.amazonaws.com
 5824         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5825   7531   
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
 5826   7532   
new file mode 100644
 5827   7533   
index 0000000..5187392
 5828         -
-- /dev/null
        7534  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 5829   7535   
@@ -0,0 +1,14 @@
        7536  +
{
        7537  +
    "credentials": {
        7538  +
        "access_key_id": "AKIDEXAMPLE",
        7539  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        7540  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        7541  +
    },
        7542  +
    "expiration_in_seconds": 3600,
        7543  +
    "normalize": true,
        7544  +
    "region": "us-east-1",
        7545  +
    "service": "service",
        7546  +
    "sign_body": false,
        7547  +
    "timestamp": "2015-08-30T12:36:00Z",
        7548  +
    "omit_session_token": false
        7549  +
}
 5830   7550   
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
 5831   7551   
similarity index 99%
 5832   7552   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 5833   7553   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 5834   7554   
index dd408c8..e95924e 100644
 5835         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
        7555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 5836   7556   
@@ -1,10 +1,10 @@
 5837   7557   
POST
 5838   7558   
/
 5839   7559   
 5840   7560   
host:example.amazonaws.com
 5841   7561   
x-amz-date:20150830T123600Z
 5842   7562   
x-amz-region-set:us-east-1
 5843   7563   
x-amz-security-token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 5844   7564   
 5845   7565   
host;x-amz-date;x-amz-region-set;x-amz-security-token
 5846         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7566  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5847   7567   
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
 5848   7568   
new file mode 100644
 5849   7569   
index 0000000..1573f07
 5850         -
-- /dev/null
        7570  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 5851   7571   
@@ -0,0 +1 @@
        7572  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 5852   7573   
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
 5853   7574   
new file mode 100644
 5854   7575   
index 0000000..6ef9a08
 5855         -
-- /dev/null
        7576  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 5856   7577   
@@ -0,0 +1,7 @@
        7578  +
POST / HTTP/1.1
        7579  +
Host:example.amazonaws.com
        7580  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        7581  +
X-Amz-Date:20150830T123600Z
        7582  +
X-Amz-Region-Set:us-east-1
        7583  +
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
        7584  +
 5857   7585   
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
 5858   7586   
similarity index 99%
 5859   7587   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 5860   7588   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 5861   7589   
index f352b54..3c3235f 100644
 5862         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
        7590  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 5863   7591   
@@ -1,4 +1,4 @@
 5864   7592   
AWS4-ECDSA-P256-SHA256
 5865   7593   
20150830T123600Z
 5866   7594   
20150830/service/aws4_request
 5867         -
964c15d46a67b327b877c02d680c81cb75df04e85144142e190da565ff0d029f
        7595  +
964c15d46a67b327b877c02d680c81cb75df04e85144142e190da565ff0d029f
              \
 No newline at end of file
 5868   7596   
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
 5869   7597   
new file mode 100644
 5870   7598   
index 0000000..379dcb2
 5871         -
-- /dev/null
        7599  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 5872   7600   
@@ -0,0 +1,4 @@
        7601  +
{
        7602  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7603  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7604  +
}
 5873   7605   
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
 5874   7606   
similarity index 99%
 5875   7607   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 5876   7608   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 5877   7609   
index 832cdc0..63b7de5 100644
 5878         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
        7610  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 5879   7611   
@@ -1,7 +1,7 @@
 5880   7612   
POST
 5881   7613   
/
 5882   7614   
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
 5883   7615   
host:example.amazonaws.com
 5884   7616   
 5885   7617   
host
 5886         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7618  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5887   7619   
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
 5888   7620   
new file mode 100644
 5889   7621   
index 0000000..713f57c
 5890         -
-- /dev/null
        7622  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 5891   7623   
@@ -0,0 +1 @@
        7624  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 5892   7625   
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
 5893   7626   
new file mode 100644
 5894   7627   
index 0000000..32c3bb3
 5895         -
-- /dev/null
        7628  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 5896   7629   
@@ -0,0 +1,3 @@
        7630  +
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
        7631  +
Host:example.amazonaws.com
        7632  +
 5897   7633   
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
 5898   7634   
similarity index 99%
 5899   7635   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 5900   7636   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 5901   7637   
index d7f3668..b46cd8c 100644
 5902         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
        7638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 5903   7639   
@@ -1,4 +1,4 @@
 5904   7640   
AWS4-ECDSA-P256-SHA256
 5905   7641   
20150830T123600Z
 5906   7642   
20150830/service/aws4_request
 5907         -
c3a8ba26c461df46b5010b756fb8644fd922a2aea95d77b56295e5e4d3bb155f
        7643  +
c3a8ba26c461df46b5010b756fb8644fd922a2aea95d77b56295e5e4d3bb155f
              \
 No newline at end of file
 5908   7644   
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
 5909   7645   
similarity index 60%
 5910   7646   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 5911   7647   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5912   7648   
index 8b5efc8..3f0a82a 100644
 5913         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        7649  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5914   7650   
@@ -1,3 +1,2 @@
 5915   7651   
POST / HTTP/1.1
 5916   7652   
Host:example.amazonaws.com
 5917         -
X-Amz-Date:20150830T123600Z
 5918   7653   
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
 5919   7654   
new file mode 100644
 5920   7655   
index 0000000..0468d80
 5921         -
-- /dev/null
        7656  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 5922   7657   
@@ -0,0 +1,12 @@
        7658  +
{
        7659  +
    "credentials": {
        7660  +
        "access_key_id": "AKIDEXAMPLE",
        7661  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7662  +
    },
        7663  +
    "expiration_in_seconds": 3600,
        7664  +
    "normalize": true,
        7665  +
    "region": "us-east-1",
        7666  +
    "service": "service",
        7667  +
    "sign_body": false,
        7668  +
    "timestamp": "2015-08-30T12:36:00Z"
        7669  +
}
              \
 No newline at end of file
 5923   7670   
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
 5924   7671   
similarity index 99%
 5925   7672   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 5926   7673   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 5927   7674   
index 02af60f..34b8c11 100644
 5928         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
        7675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 5929   7676   
@@ -1,9 +1,9 @@
 5930   7677   
POST
 5931   7678   
/
 5932   7679   
Param1=value1
 5933   7680   
host:example.amazonaws.com
 5934   7681   
x-amz-date:20150830T123600Z
 5935   7682   
x-amz-region-set:us-east-1
 5936   7683   
 5937   7684   
host;x-amz-date;x-amz-region-set
 5938         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7685  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5939   7686   
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
 5940   7687   
new file mode 100644
 5941   7688   
index 0000000..aac6427
 5942         -
-- /dev/null
        7689  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 5943   7690   
@@ -0,0 +1 @@
        7691  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 5944   7692   
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
 5945   7693   
new file mode 100644
 5946   7694   
index 0000000..a611436
 5947         -
-- /dev/null
        7695  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 5948   7696   
@@ -0,0 +1,6 @@
        7697  +
POST /?Param1=value1 HTTP/1.1
        7698  +
Host:example.amazonaws.com
        7699  +
X-Amz-Date:20150830T123600Z
        7700  +
X-Amz-Region-Set:us-east-1
        7701  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        7702  +
 5949   7703   
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
 5950   7704   
similarity index 99%
 5951   7705   
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
 5952   7706   
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
 5953   7707   
index 4256b4f..ad88dff 100644
 5954         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-string-to-sign.txt
        7708  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-string-to-sign.txt
 5955   7709   
@@ -1,4 +1,4 @@
 5956   7710   
AWS4-ECDSA-P256-SHA256
 5957   7711   
20150830T123600Z
 5958   7712   
20150830/service/aws4_request
 5959         -
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
        7713  +
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
              \
 No newline at end of file
 5960   7714   
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
 5961   7715   
new file mode 100644
 5962   7716   
index 0000000..379dcb2
 5963         -
-- /dev/null
        7717  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 5964   7718   
@@ -0,0 +1,4 @@
        7719  +
{
        7720  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7721  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7722  +
}
 5965   7723   
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
 5966   7724   
similarity index 99%
 5967   7725   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 5968   7726   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 5969   7727   
index fa84bbd..76d5ad6 100644
 5970         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
        7728  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 5971   7729   
@@ -1,7 +1,7 @@
 5972   7730   
POST
 5973   7731   
/
 5974   7732   
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
 5975   7733   
host:example.amazonaws.com
 5976   7734   
 5977   7735   
host
 5978         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7736  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5979   7737   
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
 5980   7738   
new file mode 100644
 5981   7739   
index 0000000..4cb1c94
 5982         -
-- /dev/null
        7740  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 5983   7741   
@@ -0,0 +1 @@
        7742  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 5984   7743   
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
 5985   7744   
new file mode 100644
 5986   7745   
index 0000000..bd22b97
 5987         -
-- /dev/null
        7746  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 5988   7747   
@@ -0,0 +1,3 @@
        7748  +
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
        7749  +
Host:example.amazonaws.com
        7750  +
 5989   7751   
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
 5990   7752   
similarity index 99%
 5991   7753   
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
 5992   7754   
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
 5993   7755   
index de270ef..8c9d319 100644
 5994         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-string-to-sign.txt
        7756  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-string-to-sign.txt
 5995   7757   
@@ -1,4 +1,4 @@
 5996   7758   
AWS4-ECDSA-P256-SHA256
 5997   7759   
20150830T123600Z
 5998   7760   
20150830/service/aws4_request
 5999         -
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
        7761  +
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
              \
 No newline at end of file
 6000   7762   
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
 6001   7763   
similarity index 67%
 6002   7764   
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
 6003   7765   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 6004   7766   
index 9157bc7..c9d6e5d 100644
 6005         -
-- 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
        7767  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 6006   7768   
@@ -1,3 +1,2 @@
 6007   7769   
POST /?Param1=value1 HTTP/1.1
 6008   7770   
Host:example.amazonaws.com
 6009         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 6010   7771   
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
 6011   7772   
new file mode 100644
 6012   7773   
index 0000000..0468d80
 6013         -
-- /dev/null
        7774  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 6014   7775   
@@ -0,0 +1,12 @@
        7776  +
{
        7777  +
    "credentials": {
        7778  +
        "access_key_id": "AKIDEXAMPLE",
        7779  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7780  +
    },
        7781  +
    "expiration_in_seconds": 3600,
        7782  +
    "normalize": true,
        7783  +
    "region": "us-east-1",
        7784  +
    "service": "service",
        7785  +
    "sign_body": false,
        7786  +
    "timestamp": "2015-08-30T12:36:00Z"
        7787  +
}
              \
 No newline at end of file
 6015   7788   
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
 6016   7789   
similarity index 99%
 6017   7790   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 6018   7791   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 6019   7792   
index 02af60f..34b8c11 100644
 6020         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
        7793  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 6021   7794   
@@ -1,9 +1,9 @@
 6022   7795   
POST
 6023   7796   
/
 6024   7797   
Param1=value1
 6025   7798   
host:example.amazonaws.com
 6026   7799   
x-amz-date:20150830T123600Z
 6027   7800   
x-amz-region-set:us-east-1
 6028   7801   
 6029   7802   
host;x-amz-date;x-amz-region-set
 6030         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7803  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6031   7804   
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
 6032   7805   
new file mode 100644
 6033   7806   
index 0000000..34f75c8
 6034         -
-- /dev/null
        7807  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 6035   7808   
@@ -0,0 +1 @@
        7809  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 6036   7810   
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
 6037   7811   
new file mode 100644
 6038   7812   
index 0000000..c731408
 6039         -
-- /dev/null
        7813  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 6040   7814   
@@ -0,0 +1,6 @@
        7815  +
POST /?Param1=value1 HTTP/1.1
        7816  +
Host:example.amazonaws.com
        7817  +
X-Amz-Date:20150830T123600Z
        7818  +
X-Amz-Region-Set:us-east-1
        7819  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        7820  +
 6041   7821   
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
 6042   7822   
similarity index 99%
 6043   7823   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 6044   7824   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 6045   7825   
index 4256b4f..ad88dff 100644
 6046         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
        7826  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 6047   7827   
@@ -1,4 +1,4 @@
 6048   7828   
AWS4-ECDSA-P256-SHA256
 6049   7829   
20150830T123600Z
 6050   7830   
20150830/service/aws4_request
 6051         -
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
        7831  +
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
              \
 No newline at end of file
 6052   7832   
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
 6053   7833   
new file mode 100644
 6054   7834   
index 0000000..379dcb2
 6055         -
-- /dev/null
        7835  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 6056   7836   
@@ -0,0 +1,4 @@
        7837  +
{
        7838  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7839  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7840  +
}
 6057   7841   
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
 6058   7842   
similarity index 99%
 6059   7843   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 6060   7844   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 6061   7845   
index fa84bbd..76d5ad6 100644
 6062         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
        7846  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 6063   7847   
@@ -1,7 +1,7 @@
 6064   7848   
POST
 6065   7849   
/
 6066   7850   
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
 6067   7851   
host:example.amazonaws.com
 6068   7852   
 6069   7853   
host
 6070         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7854  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6071   7855   
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
 6072   7856   
new file mode 100644
 6073   7857   
index 0000000..ae000d6
 6074         -
-- /dev/null
        7858  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 6075   7859   
@@ -0,0 +1 @@
        7860  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 6076   7861   
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
 6077   7862   
new file mode 100644
 6078   7863   
index 0000000..a868f7d
 6079         -
-- /dev/null
        7864  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 6080   7865   
@@ -0,0 +1,3 @@
        7866  +
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
        7867  +
Host:example.amazonaws.com
        7868  +
 6081   7869   
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
 6082   7870   
similarity index 99%
 6083   7871   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 6084   7872   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 6085   7873   
index de270ef..8c9d319 100644
 6086         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
        7874  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 6087   7875   
@@ -1,4 +1,4 @@
 6088   7876   
AWS4-ECDSA-P256-SHA256
 6089   7877   
20150830T123600Z
 6090   7878   
20150830/service/aws4_request
 6091         -
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
        7879  +
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
              \
 No newline at end of file
 6092   7880   
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
 6093   7881   
similarity index 67%
 6094   7882   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 6095   7883   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 6096   7884   
index 9157bc7..c9d6e5d 100644
 6097         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        7885  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 6098   7886   
@@ -1,3 +1,2 @@
 6099   7887   
POST /?Param1=value1 HTTP/1.1
 6100   7888   
Host:example.amazonaws.com
 6101         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 6102   7889   
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
 6103   7890   
new file mode 100644
 6104   7891   
index 0000000..0468d80
 6105         -
-- /dev/null
        7892  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 6106   7893   
@@ -0,0 +1,12 @@
        7894  +
{
        7895  +
    "credentials": {
        7896  +
        "access_key_id": "AKIDEXAMPLE",
        7897  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7898  +
    },
        7899  +
    "expiration_in_seconds": 3600,
        7900  +
    "normalize": true,
        7901  +
    "region": "us-east-1",
        7902  +
    "service": "service",
        7903  +
    "sign_body": false,
        7904  +
    "timestamp": "2015-08-30T12:36:00Z"
        7905  +
}
              \
 No newline at end of file
 6107   7906   
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
 6108   7907   
similarity index 99%
 6109   7908   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 6110   7909   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 6111   7910   
index a6942c1..e881ac7 100644
 6112         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
        7911  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 6113   7912   
@@ -1,9 +1,9 @@
 6114   7913   
POST
 6115   7914   
/
 6116   7915   
 6117   7916   
host:example.amazonaws.com
 6118   7917   
x-amz-date:20150830T123600Z
 6119   7918   
x-amz-region-set:us-east-1
 6120   7919   
 6121   7920   
host;x-amz-date;x-amz-region-set
 6122         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7921  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6123   7922   
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
 6124   7923   
new file mode 100644
 6125   7924   
index 0000000..7c5e47b
 6126         -
-- /dev/null
        7925  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 6127   7926   
@@ -0,0 +1 @@
        7927  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 6128   7928   
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
 6129   7929   
new file mode 100644
 6130   7930   
index 0000000..c0e50a0
 6131         -
-- /dev/null
        7931  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 6132   7932   
@@ -0,0 +1,6 @@
        7933  +
POST / HTTP/1.1
        7934  +
Host:example.amazonaws.com
        7935  +
X-Amz-Date:20150830T123600Z
        7936  +
X-Amz-Region-Set:us-east-1
        7937  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        7938  +
 6133   7939   
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
 6134   7940   
similarity index 99%
 6135   7941   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 6136   7942   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 6137   7943   
index d5650cb..f8adf13 100644
 6138         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
        7944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 6139   7945   
@@ -1,4 +1,4 @@
 6140   7946   
AWS4-ECDSA-P256-SHA256
 6141   7947   
20150830T123600Z
 6142   7948   
20150830/service/aws4_request
 6143         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7949  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 6144   7950   
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
 6145   7951   
new file mode 100644
 6146   7952   
index 0000000..379dcb2
 6147         -
-- /dev/null
        7953  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 6148   7954   
@@ -0,0 +1,4 @@
        7955  +
{
        7956  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7957  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7958  +
}
 6149   7959   
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
 6150   7960   
similarity index 99%
 6151   7961   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 6152   7962   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 6153   7963   
index e48ce07..5ea8e3c 100644
 6154         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
        7964  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 6155   7965   
@@ -1,7 +1,7 @@
 6156   7966   
POST
 6157   7967   
/
 6158   7968   
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
 6159   7969   
host:example.amazonaws.com
 6160   7970   
 6161   7971   
host
 6162         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7972  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6163   7973   
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
 6164   7974   
new file mode 100644
 6165   7975   
index 0000000..ea8e3b4
 6166         -
-- /dev/null
        7976  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 6167   7977   
@@ -0,0 +1 @@
        7978  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 6168   7979   
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
 6169   7980   
new file mode 100644
 6170   7981   
index 0000000..616973f
 6171         -
-- /dev/null
        7982  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 6172   7983   
@@ -0,0 +1,3 @@
        7984  +
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
        7985  +
Host:example.amazonaws.com
        7986  +
 6173   7987   
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
 6174   7988   
similarity index 99%
 6175   7989   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 6176   7990   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 6177   7991   
index 34e3382..711c162 100644
 6178         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
        7992  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 6179   7993   
@@ -1,4 +1,4 @@
 6180   7994   
AWS4-ECDSA-P256-SHA256
 6181   7995   
20150830T123600Z
 6182   7996   
20150830/service/aws4_request
 6183         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7997  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 6184   7998   
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
 6185   7999   
new file mode 100644
 6186   8000   
index 0000000..3f0a82a
 6187         -
-- /dev/null
        8001  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 6188   8002   
@@ -0,0 +1,2 @@
        8003  +
POST / HTTP/1.1
        8004  +
Host:example.amazonaws.com
 6189   8005   
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
 6190   8006   
new file mode 100644
 6191   8007   
index 0000000..0db1df1
 6192         -
-- /dev/null
        8008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 6193   8009   
@@ -0,0 +1,12 @@
        8010  +
{
        8011  +
    "credentials": {
        8012  +
        "access_key_id": "AKIDEXAMPLE",
        8013  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        8014  +
    },
        8015  +
    "expiration_in_seconds": 3600,
        8016  +
    "normalize": true,
        8017  +
    "region": "us-east-1",
        8018  +
    "service": "service",
        8019  +
    "sign_body": true,
        8020  +
    "timestamp": "2015-08-30T12:36:00Z"
        8021  +
}
              \
 No newline at end of file
 6194   8022   
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
 6195   8023   
similarity index 62%
 6196   8024   
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
 6197   8025   
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
 6198   8026   
index 05ab787..62639b2 100644
 6199         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        8027  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 6200   8028   
@@ -1,12 +1,12 @@
 6201   8029   
POST
 6202   8030   
/
 6203   8031   
 6204   8032   
content-length:13
 6205   8033   
content-type:application/x-www-form-urlencoded; charset=utf-8
 6206   8034   
host:example.amazonaws.com
 6207         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8035  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 6208   8036   
x-amz-date:20150830T123600Z
 6209   8037   
x-amz-region-set:us-east-1
 6210   8038   
 6211   8039   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 6212         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8040  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6213   8041   
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
 6214   8042   
new file mode 100644
 6215   8043   
index 0000000..006ec2e
 6216         -
-- /dev/null
        8044  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 6217   8045   
@@ -0,0 +1 @@
        8046  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 6218   8047   
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
 6219   8048   
new file mode 100644
 6220   8049   
index 0000000..87a11f2
 6221         -
-- /dev/null
        8050  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 6222   8051   
@@ -0,0 +1,10 @@
        8052  +
POST / HTTP/1.1
        8053  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        8054  +
Host:example.amazonaws.com
        8055  +
Content-Length:13
        8056  +
X-Amz-Date:20150830T123600Z
        8057  +
X-Amz-Region-Set:us-east-1
        8058  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8059  +
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
        8060  +
        8061  +
Param1=value1
              \
 No newline at end of file
 6223   8062   
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
 6224   8063   
new file mode 100644
 6225   8064   
index 0000000..c047afb
 6226         -
-- /dev/null
        8065  +
++ 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
 6227   8066   
@@ -0,0 +1,4 @@
        8067  +
AWS4-ECDSA-P256-SHA256
        8068  +
20150830T123600Z
        8069  +
20150830/service/aws4_request
        8070  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 6228   8071   
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
 6229   8072   
new file mode 100644
 6230   8073   
index 0000000..379dcb2
 6231         -
-- /dev/null
        8074  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 6232   8075   
@@ -0,0 +1,4 @@
        8076  +
{
        8077  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        8078  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        8079  +
}
 6233   8080   
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
 6234   8081   
similarity index 85%
 6235   8082   
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
 6236   8083   
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
 6237   8084   
index fcc454f..6933a8c 100644
 6238         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        8085  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 6239   8086   
@@ -1,9 +1,9 @@
 6240   8087   
POST
 6241   8088   
/
 6242   8089   
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
 6243   8090   
content-length:13
 6244   8091   
content-type:application/x-www-form-urlencoded; charset=utf-8
 6245   8092   
host:example.amazonaws.com
 6246   8093   
 6247   8094   
content-length;content-type;host
 6248         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8095  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6249   8096   
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
 6250   8097   
new file mode 100644
 6251   8098   
index 0000000..34a2e12
 6252         -
-- /dev/null
        8099  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 6253   8100   
@@ -0,0 +1 @@
        8101  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 6254   8102   
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
 6255   8103   
new file mode 100644
 6256   8104   
index 0000000..197b99e
 6257         -
-- /dev/null
        8105  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 6258   8106   
@@ -0,0 +1,6 @@
        8107  +
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
        8108  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        8109  +
Host:example.amazonaws.com
        8110  +
Content-Length:13
        8111  +
        8112  +
Param1=value1
              \
 No newline at end of file
 6259   8113   
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
 6260   8114   
new file mode 100644
 6261   8115   
index 0000000..9d2bc74
 6262         -
-- /dev/null
        8116  +
++ 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
 6263   8117   
@@ -0,0 +1,4 @@
        8118  +
AWS4-ECDSA-P256-SHA256
        8119  +
20150830T123600Z
        8120  +
20150830/service/aws4_request
        8121  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 6264   8122   
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
 6265   8123   
similarity index 80%
 6266   8124   
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
 6267   8125   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6268   8126   
index 36015f1..8289eaa 100644
 6269         -
-- 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
        8127  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6270   8128   
@@ -1,6 +1,6 @@
 6271   8129   
POST / HTTP/1.1
 6272   8130   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 6273   8131   
Host:example.amazonaws.com
 6274         -
X-Amz-Date:20150830T123600Z
        8132  +
Content-Length:13
 6275   8133   
 6276   8134   
Param1=value1
              \
 No newline at end of file
 6277   8135   
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
 6278   8136   
new file mode 100644
 6279   8137   
index 0000000..0db1df1
 6280         -
-- /dev/null
        8138  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 6281   8139   
@@ -0,0 +1,12 @@
        8140  +
{
        8141  +
    "credentials": {
        8142  +
        "access_key_id": "AKIDEXAMPLE",
        8143  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        8144  +
    },
        8145  +
    "expiration_in_seconds": 3600,
        8146  +
    "normalize": true,
        8147  +
    "region": "us-east-1",
        8148  +
    "service": "service",
        8149  +
    "sign_body": true,
        8150  +
    "timestamp": "2015-08-30T12:36:00Z"
        8151  +
}
              \
 No newline at end of file
 6282   8152   
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
 6283   8153   
similarity index 61%
 6284   8154   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 6285   8155   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6286   8156   
index 69009dc..797632b 100644
 6287         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        8157  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6288   8158   
@@ -1,12 +1,12 @@
 6289   8159   
POST
 6290   8160   
/
 6291   8161   
 6292   8162   
content-length:13
 6293   8163   
content-type:application/x-www-form-urlencoded
 6294   8164   
host:example.amazonaws.com
 6295         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8165  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 6296   8166   
x-amz-date:20150830T123600Z
 6297   8167   
x-amz-region-set:us-east-1
 6298   8168   
 6299   8169   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 6300         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8170  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6301   8171   
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
 6302   8172   
new file mode 100644
 6303   8173   
index 0000000..f5a641c
 6304         -
-- /dev/null
        8174  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 6305   8175   
@@ -0,0 +1 @@
        8176  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 6306   8177   
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
 6307   8178   
new file mode 100644
 6308   8179   
index 0000000..7bd94a7
 6309         -
-- /dev/null
        8180  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 6310   8181   
@@ -0,0 +1,10 @@
        8182  +
POST / HTTP/1.1
        8183  +
Content-Type:application/x-www-form-urlencoded
        8184  +
Host:example.amazonaws.com
        8185  +
Content-Length:13
        8186  +
X-Amz-Date:20150830T123600Z
        8187  +
X-Amz-Region-Set:us-east-1
        8188  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8189  +
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
        8190  +
        8191  +
Param1=value1
              \
 No newline at end of file
 6311   8192   
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
 6312   8193   
new file mode 100644
 6313   8194   
index 0000000..8d25ba9
 6314         -
-- /dev/null
        8195  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 6315   8196   
@@ -0,0 +1,4 @@
        8197  +
AWS4-ECDSA-P256-SHA256
        8198  +
20150830T123600Z
        8199  +
20150830/service/aws4_request
        8200  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 6316   8201   
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
 6317   8202   
new file mode 100644
 6318   8203   
index 0000000..379dcb2
 6319         -
-- /dev/null
        8204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 6320   8205   
@@ -0,0 +1,4 @@
        8206  +
{
        8207  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        8208  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        8209  +
}
 6321   8210   
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
 6322   8211   
similarity index 99%
 6323   8212   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 6324   8213   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6325   8214   
index 9ed065b..563ff58 100644
 6326         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
        8215  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6327   8216   
@@ -1,9 +1,9 @@
 6328   8217   
POST
 6329   8218   
/
 6330   8219   
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
 6331   8220   
content-length:13
 6332   8221   
content-type:application/x-www-form-urlencoded
 6333   8222   
host:example.amazonaws.com
 6334   8223   
 6335   8224   
content-length;content-type;host
 6336         -
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8225  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6337   8226   
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
 6338   8227   
new file mode 100644
 6339   8228   
index 0000000..0c77daf
 6340         -
-- /dev/null
        8229  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 6341   8230   
@@ -0,0 +1 @@
        8231  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 6342   8232   
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
 6343   8233   
new file mode 100644
 6344   8234   
index 0000000..71d6de9
 6345         -
-- /dev/null
        8235  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 6346   8236   
@@ -0,0 +1,6 @@
        8237  +
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
        8238  +
Content-Type:application/x-www-form-urlencoded
        8239  +
Host:example.amazonaws.com
        8240  +
Content-Length:13
        8241  +
        8242  +
Param1=value1
              \
 No newline at end of file
 6347   8243   
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
 6348   8244   
similarity index 99%
 6349   8245   
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
 6350   8246   
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
 6351   8247   
index bef3143..cc7a224 100644
 6352         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-string-to-sign.txt
        8248  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-string-to-sign.txt
 6353   8249   
@@ -1,4 +1,4 @@
 6354   8250   
AWS4-ECDSA-P256-SHA256
 6355   8251   
20150830T123600Z
 6356   8252   
20150830/service/aws4_request
 6357         -
4e4122984d30d13170a298ece62cc30f8da12578fb3b482616b1f11036b13934
        8253  +
4e4122984d30d13170a298ece62cc30f8da12578fb3b482616b1f11036b13934
              \
 No newline at end of file
 6358   8254   
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
 6359   8255   
new file mode 100644
 6360   8256   
index 0000000..760b2d3
 6361         -
-- /dev/null
        8257  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 6362   8258   
@@ -0,0 +1,6 @@
        8259  +
POST / HTTP/1.1
        8260  +
Content-Type:application/x-www-form-urlencoded
        8261  +
Host:example.amazonaws.com
        8262  +
Content-Length:13
        8263  +
        8264  +
Param1=value1
              \
 No newline at end of file
 6363   8265   
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
 6364   8266   
index 9bd636f..b53f33f 100644
 6365         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        8267  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 6366   8268   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 6367   8269   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 6368   8270   
        }
 6369   8271   
 6370   8272   
        if let SignatureValues::QueryParams(values) = values {
 6371   8273   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 6372   8274   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 6373   8275   
 6374   8276   
            #[cfg(feature = "sigv4a")]
 6375   8277   
            if let Some(regions) = values.region_set {
 6376   8278   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 6377   8279   
            }
 6378   8280   
 6379   8281   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 6380   8282   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 6381   8283   
            add_param(
 6382   8284   
                &mut params,
 6383   8285   
                param::X_AMZ_SIGNED_HEADERS,
 6384   8286   
                values.signed_headers.as_str(),
 6385   8287   
            );
 6386   8288   
 6387   8289   
            if let Some(security_token) = values.security_token {
 6388   8290   
                add_param(
 6389   8291   
                    &mut params,
 6390   8292   
                    settings
 6391   8293   
                        .session_token_name_override
 6392   8294   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 6393   8295   
                    security_token,
 6394   8296   
                );
 6395   8297   
            }
 6396   8298   
        }
 6397         -
        // Sort by param name, and then by param value
        8299  +
        8300  +
        // Sort on the _encoded_ key/value pairs
        8301  +
        let mut params: Vec<(String, String)> = params
        8302  +
            .into_iter()
        8303  +
            .map(|x| {
        8304  +
                use aws_smithy_http::query::fmt_string;
        8305  +
                let enc_k = fmt_string(&x.0);
        8306  +
                let enc_v = fmt_string(&x.1);
        8307  +
                (enc_k, enc_v)
        8308  +
            })
        8309  +
            .collect();
        8310  +
 6398   8311   
        params.sort();
 6399   8312   
 6400   8313   
        let mut query = QueryWriter::new(uri);
 6401   8314   
        query.clear_params();
 6402   8315   
        for (key, value) in params {
 6403         -
            query.insert(&key, &value);
        8316  +
            query.insert_encoded(&key, &value);
 6404   8317   
        }
 6405   8318   
 6406   8319   
        let query = query.build_query();
 6407   8320   
        if query.is_empty() {
 6408   8321   
            None
 6409   8322   
        } else {
 6410   8323   
            Some(query)
 6411   8324   
        }
 6412   8325   
    }
 6413   8326   
 6414   8327   
    fn insert_host_header(
 6415   8328   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 6416   8329   
        uri: &Uri,
 6417   8330   
    ) -> HeaderValue {
 6418   8331   
        match canonical_headers.get(&HOST) {
 6419   8332   
            Some(header) => header.clone(),
 6420   8333   
            None => {
 6421   8334   
                let port = uri.port();
 6422   8335   
                let scheme = uri.scheme();
 6423   8336   
                let authority = uri
 6424   8337   
                    .authority()
 6425   8338   
                    .expect("request uri authority must be set for signing")
 6426   8339   
                    .as_str();
 6427   8340   
                let host = uri
 6428   8341   
                    .host()
 6429   8342   
                    .expect("request uri host must be set for signing");
 6430   8343   
 6431   8344   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 6432   8345   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 6433   8346   
                // sent in the Host header (and Hyper strips default ports if they are present)
 6434   8347   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 6435   8348   
            service,
 6436   8349   
            hashed_creq,
 6437   8350   
            signature_version: SignatureVersion::V4a,
 6438   8351   
        }
 6439   8352   
    }
 6440   8353   
}
 6441   8354   
 6442   8355   
impl fmt::Display for StringToSign<'_> {
 6443   8356   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 6444   8357   
        write!(
 6445   8358   
            f,
 6446   8359   
            "{}\n{}\n{}\n{}",
 6447   8360   
            self.algorithm,
 6448   8361   
            format_date_time(self.time),
 6449   8362   
            match self.signature_version {
 6450   8363   
                SignatureVersion::V4 => self.scope.to_string(),
 6451   8364   
                SignatureVersion::V4a => self.scope.v4a_display(),
 6452   8365   
            },
 6453   8366   
            self.hashed_creq
 6454   8367   
        )
 6455   8368   
    }
 6456   8369   
}
 6457   8370   
 6458   8371   
#[cfg(test)]
 6459   8372   
mod tests {
 6460   8373   
    use crate::date_time::test_parsers::parse_date_time;
 6461   8374   
    use crate::http_request::canonical_request::{
 6462   8375   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 6463   8376   
    };
 6464   8377   
    use crate::http_request::test;
        8378  +
    use crate::http_request::test::SigningSuiteTest;
 6465   8379   
    use crate::http_request::{
 6466   8380   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 6467   8381   
        SigningParams, SigningSettings,
 6468   8382   
    };
 6469   8383   
    use crate::sign::v4;
 6470   8384   
    use crate::sign::v4::sha256_hex_string;
 6471   8385   
    use aws_credential_types::Credentials;
 6472   8386   
    use aws_smithy_http::query_writer::QueryWriter;
 6473   8387   
    use aws_smithy_runtime_api::client::identity::Identity;
 6474   8388   
    use http0::{HeaderValue, Uri};
 6475   8389   
    use pretty_assertions::assert_eq;
 6476   8390   
    use proptest::{prelude::*, proptest};
 6477   8391   
    use std::borrow::Cow;
 6478   8392   
    use std::time::Duration;
 6479   8393   
 6480   8394   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 6481   8395   
        v4::signing_params::Builder::default()
 6482   8396   
            .identity(identity)
 6483   8397   
            .region("test-region")
 6484   8398   
            .name("testservicename")
 6485   8399   
            .time(parse_date_time("20210511T154045Z").unwrap())
 6486   8400   
            .settings(settings)
 6487   8401   
            .build()
 6488   8402   
            .unwrap()
 6489   8403   
            .into()
 6490   8404   
    }
 6491   8405   
 6492   8406   
    #[test]
 6493   8407   
    fn test_repeated_header() {
 6494         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8408  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8409  +
        let mut req = test.request();
 6495   8410   
        req.headers.push((
 6496   8411   
            "x-amz-object-attributes".to_string(),
 6497   8412   
            "Checksum".to_string(),
 6498   8413   
        ));
 6499   8414   
        req.headers.push((
 6500   8415   
            "x-amz-object-attributes".to_string(),
 6501   8416   
            "ObjectSize".to_string(),
 6502   8417   
        ));
 6503   8418   
        let req = SignableRequest::from(&req);
 6504   8419   
        let settings = SigningSettings {
 6505   8420   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6506   8421   
            session_token_mode: SessionTokenMode::Exclude,
 6507   8422   
            ..Default::default()
 6508   8423   
        };
 6509   8424   
        let identity = Credentials::for_tests().into();
 6510   8425   
        let signing_params = signing_params(&identity, settings);
 6511   8426   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6512   8427   
 6513   8428   
        assert_eq!(
 6514   8429   
            creq.values.signed_headers().to_string(),
 6515   8430   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 6516   8431   
        );
 6517   8432   
        assert_eq!(
 6518   8433   
            creq.header_values_for("x-amz-object-attributes"),
 6519   8434   
            "Checksum,ObjectSize",
 6520   8435   
        );
 6521   8436   
    }
 6522   8437   
 6523   8438   
    #[test]
 6524   8439   
    fn test_host_header_properly_handles_ports() {
 6525   8440   
        fn host_header_test_setup(endpoint: String) -> String {
 6526         -
            let mut req = test::v4::test_request("get-vanilla");
        8441  +
            let test = SigningSuiteTest::v4("get-vanilla");
        8442  +
            let mut req = test.request();
 6527   8443   
            req.uri = endpoint;
 6528   8444   
            let req = SignableRequest::from(&req);
 6529   8445   
            let settings = SigningSettings {
 6530   8446   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6531   8447   
                session_token_mode: SessionTokenMode::Exclude,
 6532   8448   
                ..Default::default()
 6533   8449   
            };
 6534   8450   
            let identity = Credentials::for_tests().into();
 6535   8451   
            let signing_params = signing_params(&identity, settings);
 6536   8452   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6537   8453   
            creq.header_values_for("host")
 6538   8454   
        }
 6539   8455   
 6540   8456   
        // HTTP request with 80 port should not be signed with that port
 6541   8457   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 6542   8458   
        assert_eq!(http_80_host_header, "localhost",);
 6543   8459   
 6544   8460   
        // HTTP request with non-80 port should be signed with that port
 6545   8461   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 6546   8462   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 6547   8463   
 6548   8464   
        // HTTPS request with 443 port should not be signed with that port
 6549   8465   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 6550   8466   
        assert_eq!(https_443_host_header, "localhost",);
 6551   8467   
 6552   8468   
        // HTTPS request with non-443 port should be signed with that port
 6553   8469   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 6554   8470   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 6555   8471   
    }
 6556   8472   
 6557   8473   
    #[test]
 6558   8474   
    fn test_set_xamz_sha_256() {
 6559         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        8475  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8476  +
        let req = test.request();
 6560   8477   
        let req = SignableRequest::from(&req);
 6561   8478   
        let settings = SigningSettings {
 6562   8479   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6563   8480   
            session_token_mode: SessionTokenMode::Exclude,
 6564   8481   
            ..Default::default()
 6565   8482   
        };
 6566   8483   
        let identity = Credentials::for_tests().into();
 6567   8484   
        let mut signing_params = signing_params(&identity, settings);
 6568   8485   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6569   8486   
        assert_eq!(
 6570   8487   
            creq.values.content_sha256(),
 6571   8488   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 6572   8489   
        );
 6573   8490   
        // assert that the sha256 header was added
 6574   8491   
        assert_eq!(
 6575   8492   
            creq.values.signed_headers().as_str(),
 6576   8493   
            "host;x-amz-content-sha256;x-amz-date"
 6577   8494   
        );
 6578   8495   
 6579   8496   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 6580   8497   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6581   8498   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 6582   8499   
    }
 6583   8500   
 6584   8501   
    #[test]
 6585   8502   
    fn test_unsigned_payload() {
 6586         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8503  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8504  +
        let mut req = test.request();
 6587   8505   
        req.set_body(SignableBody::UnsignedPayload);
 6588   8506   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 6589   8507   
 6590   8508   
        let settings = SigningSettings {
 6591   8509   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6592   8510   
            ..Default::default()
 6593   8511   
        };
 6594   8512   
        let identity = Credentials::for_tests().into();
 6595   8513   
        let signing_params = signing_params(&identity, settings);
 6596   8514   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6597   8515   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 6598   8516   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 6599   8517   
    }
 6600   8518   
 6601   8519   
    #[test]
 6602   8520   
    fn test_precomputed_payload() {
 6603   8521   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 6604         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8522  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8523  +
        let mut req = test.request();
 6605   8524   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 6606   8525   
        let req = SignableRequest::from(&req);
 6607   8526   
        let settings = SigningSettings {
 6608   8527   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6609   8528   
            ..Default::default()
 6610   8529   
        };
 6611   8530   
        let identity = Credentials::for_tests().into();
 6612   8531   
        let signing_params = signing_params(&identity, settings);
 6613   8532   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6614   8533   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 6615   8534   
        assert!(creq.to_string().ends_with(payload_hash));
 6616   8535   
    }
 6617   8536   
 6618   8537   
    #[test]
 6619   8538   
    fn test_generate_scope() {
 6620   8539   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 6621   8540   
        let scope = SigningScope {
 6622   8541   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6623   8542   
            region: "us-east-1",
 6624   8543   
            service: "iam",
 6625   8544   
        };
 6626   8545   
        assert_eq!(format!("{}\n", scope), expected);
 6627   8546   
    }
 6628   8547   
 6629   8548   
    #[test]
 6630   8549   
    fn test_string_to_sign() {
 6631   8550   
        let time = parse_date_time("20150830T123600Z").unwrap();
 6632         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 6633         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        8551  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8552  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        8553  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 6634   8554   
        let encoded = sha256_hex_string(creq.as_bytes());
 6635   8555   
 6636   8556   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 6637   8557   
        assert_eq!(expected_sts, actual.to_string());
 6638   8558   
    }
 6639   8559   
 6640   8560   
    #[test]
 6641   8561   
    fn test_digest_of_canonical_request() {
 6642         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        8562  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8563  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 6643   8564   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 6644   8565   
        let actual = sha256_hex_string(creq.as_bytes());
 6645   8566   
        assert_eq!(expected, actual);
 6646   8567   
    }
 6647   8568   
 6648   8569   
    #[test]
 6649   8570   
    fn test_double_url_encode_path() {
 6650         -
        let req = test::v4::test_request("double-encode-path");
        8571  +
        let test = SigningSuiteTest::v4("double-encode-path");
        8572  +
        let req = test.request();
 6651   8573   
        let req = SignableRequest::from(&req);
 6652   8574   
        let identity = Credentials::for_tests().into();
 6653   8575   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6654   8576   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6655   8577   
 6656         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        8578  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 6657   8579   
        let actual = format!("{}", creq);
 6658   8580   
        assert_eq!(actual, expected);
 6659   8581   
    }
 6660   8582   
 6661   8583   
    #[test]
 6662   8584   
    fn test_double_url_encode() {
 6663         -
        let req = test::v4::test_request("double-url-encode");
        8585  +
        let test = SigningSuiteTest::v4("double-url-encode");
        8586  +
        let req = test.request();
 6664   8587   
        let req = SignableRequest::from(&req);
 6665   8588   
        let identity = Credentials::for_tests().into();
 6666   8589   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6667   8590   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6668         -
 6669         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        8591  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 6670   8592   
        let actual = format!("{}", creq);
 6671   8593   
        assert_eq!(actual, expected);
 6672   8594   
    }
 6673   8595   
 6674   8596   
    #[test]
 6675   8597   
    fn test_tilde_in_uri() {
 6676   8598   
        let req = http0::Request::builder()
 6677   8599   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 6678   8600   
        let req = SignableRequest::from(&req);
 6679   8601   
        let identity = Credentials::for_tests().into();
 6680   8602   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6681   8603   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6682   8604   
        assert_eq!(
 6683   8605   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 6684   8606   
            creq.params.as_deref(),
 6685   8607   
        );
 6686   8608   
    }
 6687   8609   
 6688   8610   
    #[test]
 6689   8611   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 6690   8612   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 6691   8613   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 6692   8614   
 6693   8615   
        let mut query_writer = QueryWriter::new(&uri);
 6694   8616   
        query_writer.insert("list-type", "2");
 6695   8617   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 6696   8618   
 6697   8619   
        let req = http0::Request::builder()
 6698   8620   
            .uri(query_writer.build_uri())
 6699   8621   
            .body("")
 6700   8622   
            .unwrap()
 6701   8623   
            .into();
 6702   8624   
        let req = SignableRequest::from(&req);
 6703   8625   
        let identity = Credentials::for_tests().into();
 6704   8626   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6705   8627   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6706   8628   
 6707   8629   
        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~";
 6708   8630   
        let actual = creq.params.unwrap();
 6709   8631   
        assert_eq!(expected, actual);
 6710   8632   
    }
 6711   8633   
 6712   8634   
    #[test]
 6713   8635   
    fn test_omit_session_token() {
 6714         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        8636  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8637  +
        let req = test.request();
 6715   8638   
        let req = SignableRequest::from(&req);
 6716   8639   
        let settings = SigningSettings {
 6717   8640   
            session_token_mode: SessionTokenMode::Include,
 6718   8641   
            ..Default::default()
 6719   8642   
        };
 6720   8643   
        let identity = Credentials::for_tests_with_session_token().into();
 6721   8644   
        let mut signing_params = signing_params(&identity, settings);
 6722   8645   
 6723   8646   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6724   8647   
        assert_eq!(
 6725   8648   
            creq.values.signed_headers().as_str(),
 6726   8649   
            "host;x-amz-date;x-amz-security-token"
 6727   8650   
        );
 6728   8651   
        assert_eq!(
 6729   8652   
            creq.headers.get("x-amz-security-token").unwrap(),
 6730   8653   
            "notarealsessiontoken"
 6731   8654   
        );
 6732   8655   
 6733   8656   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 6734   8657   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6735   8658   
        assert_eq!(
 6736   8659   
            creq.headers.get("x-amz-security-token").unwrap(),
 6737   8660   
            "notarealsessiontoken"
 6738   8661   
        );
 6739   8662   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 6740   8663   
    }
 6741   8664   
 6742   8665   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 6743   8666   
    #[test]
 6744   8667   
    fn non_presigning_header_exclusion() {
 6745   8668   
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
 6746   8669   
index c4bbbee..363fc2c 100644
 6747         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        8670  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 6748   8671   
@@ -6,60 +6,62 @@
 6749   8672   
use super::error::SigningError;
 6750   8673   
use super::{PayloadChecksumKind, SignatureLocation};
 6751   8674   
use crate::http_request::canonical_request::header;
 6752   8675   
use crate::http_request::canonical_request::param;
 6753   8676   
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 6754   8677   
use crate::http_request::error::CanonicalRequestError;
 6755   8678   
use crate::http_request::SigningParams;
 6756   8679   
use crate::sign::v4;
 6757   8680   
#[cfg(feature = "sigv4a")]
 6758   8681   
use crate::sign::v4a;
 6759   8682   
use crate::{SignatureVersion, SigningOutput};
 6760   8683   
use http0::Uri;
 6761   8684   
use std::borrow::Cow;
 6762   8685   
use std::fmt::{Debug, Formatter};
 6763   8686   
use std::str;
 6764   8687   
 6765   8688   
const LOG_SIGNABLE_BODY: &str = "LOG_SIGNABLE_BODY";
 6766   8689   
 6767   8690   
/// Represents all of the information necessary to sign an HTTP request.
 6768   8691   
#[derive(Debug)]
 6769   8692   
#[non_exhaustive]
 6770   8693   
pub struct SignableRequest<'a> {
 6771   8694   
    method: &'a str,
 6772   8695   
    uri: Uri,
 6773   8696   
    headers: Vec<(&'a str, &'a str)>,
 6774   8697   
    body: SignableBody<'a>,
 6775   8698   
}
 6776   8699   
 6777   8700   
impl<'a> SignableRequest<'a> {
 6778   8701   
    /// Creates a new `SignableRequest`.
        8702  +
    ///
        8703  +
    /// NOTE: The `uri` is expected to already in encoded form.
 6779   8704   
    pub fn new(
 6780   8705   
        method: &'a str,
 6781   8706   
        uri: impl Into<Cow<'a, str>>,
 6782   8707   
        headers: impl Iterator<Item = (&'a str, &'a str)>,
 6783   8708   
        body: SignableBody<'a>,
 6784   8709   
    ) -> Result<Self, SigningError> {
 6785   8710   
        let uri = uri
 6786   8711   
            .into()
 6787   8712   
            .parse()
 6788   8713   
            .map_err(|e| SigningError::from(CanonicalRequestError::from(e)))?;
 6789   8714   
        let headers = headers.collect();
 6790   8715   
        Ok(Self {
 6791   8716   
            method,
 6792   8717   
            uri,
 6793   8718   
            headers,
 6794   8719   
            body,
 6795   8720   
        })
 6796   8721   
    }
 6797   8722   
 6798   8723   
    /// Returns the signable URI
 6799   8724   
    pub(crate) fn uri(&self) -> &Uri {
 6800   8725   
        &self.uri
 6801   8726   
    }
 6802   8727   
 6803   8728   
    /// Returns the signable HTTP method
 6804   8729   
    pub(crate) fn method(&self) -> &str {
 6805   8730   
        self.method
 6806   8731   
    }
 6807   8732   
 6808   8733   
    /// Returns the request headers
 6809   8734   
@@ -478,436 +480,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 6810   8735   
        sensitive,
 6811   8736   
    });
 6812   8737   
}
 6813   8738   
 6814   8739   
// add signature to authorization header
 6815   8740   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 6816   8741   
fn build_authorization_header(
 6817   8742   
    access_key: &str,
 6818   8743   
    creq: &CanonicalRequest<'_>,
 6819   8744   
    sts: StringToSign<'_>,
 6820   8745   
    signature: &str,
 6821   8746   
    signature_version: SignatureVersion,
 6822   8747   
) -> String {
 6823   8748   
    let scope = match signature_version {
 6824   8749   
        SignatureVersion::V4 => sts.scope.to_string(),
 6825   8750   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 6826   8751   
    };
 6827   8752   
    format!(
 6828   8753   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 6829   8754   
        sts.algorithm,
 6830   8755   
        access_key,
 6831   8756   
        scope,
 6832   8757   
        creq.values.signed_headers().as_str(),
 6833   8758   
        signature
 6834   8759   
    )
 6835   8760   
}
 6836   8761   
#[cfg(test)]
 6837   8762   
mod tests {
 6838   8763   
    use crate::date_time::test_parsers::parse_date_time;
 6839   8764   
    use crate::http_request::sign::{add_header, SignableRequest};
        8765  +
    use crate::http_request::test::SigningSuiteTest;
 6840   8766   
    use crate::http_request::{
 6841         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        8767  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 6842   8768   
        SigningSettings,
 6843   8769   
    };
 6844   8770   
    use crate::sign::v4;
 6845   8771   
    use aws_credential_types::Credentials;
 6846   8772   
    use http0::{HeaderValue, Request};
 6847   8773   
    use pretty_assertions::assert_eq;
 6848   8774   
    use proptest::proptest;
 6849   8775   
    use std::borrow::Cow;
 6850   8776   
    use std::iter;
 6851         -
    use std::time::Duration;
 6852   8777   
 6853   8778   
    macro_rules! assert_req_eq {
 6854   8779   
        (http: $expected:expr, $actual:expr) => {
 6855   8780   
            let mut expected = ($expected).map(|_b|"body");
 6856   8781   
            let mut actual = ($actual).map(|_b|"body");
 6857   8782   
            make_headers_comparable(&mut expected);
 6858   8783   
            make_headers_comparable(&mut actual);
 6859   8784   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 6860   8785   
        };
 6861   8786   
        ($expected:tt, $actual:tt) => {
 6862   8787   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 6863   8788   
        };
 6864   8789   
    }
 6865   8790   
 6866   8791   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 6867   8792   
        for (_name, value) in request.headers_mut() {
 6868   8793   
            value.set_sensitive(false);
 6869   8794   
        }
 6870   8795   
    }
 6871   8796   
 6872         -
    #[test]
 6873         -
    fn test_sign_vanilla_with_headers() {
 6874         -
        let settings = SigningSettings::default();
 6875         -
        let identity = &Credentials::for_tests().into();
 6876         -
        let params = v4::SigningParams {
 6877         -
            identity,
 6878         -
            region: "us-east-1",
 6879         -
            name: "service",
 6880         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 6881         -
            settings,
 6882         -
        }
 6883         -
        .into();
 6884         -
 6885         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 6886         -
        let signable = SignableRequest::from(&original);
 6887         -
        let out = sign(signable, &params).unwrap();
 6888         -
        assert_eq!(
 6889         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 6890         -
            out.signature
 6891         -
        );
 6892         -
 6893         -
        let mut signed = original.as_http_request();
 6894         -
        out.output.apply_to_request_http0x(&mut signed);
 6895         -
 6896         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 6897         -
        assert_req_eq!(expected, signed);
 6898         -
    }
 6899         -
        8797  +
    // Sigv4A suite tests
 6900   8798   
    #[cfg(feature = "sigv4a")]
 6901         -
    mod sigv4a_tests {
 6902         -
        use super::*;
 6903         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 6904         -
        use crate::http_request::{sign, test, SigningParams};
 6905         -
        use crate::sign::v4a;
 6906         -
        use p256::ecdsa::signature::{Signature, Verifier};
 6907         -
        use p256::ecdsa::{DerSignature, SigningKey};
 6908         -
        use pretty_assertions::assert_eq;
 6909         -
 6910         -
        fn new_v4a_signing_params_from_context(
 6911         -
            test_context: &'_ test::v4a::TestContext,
 6912         -
            signature_location: SignatureLocation,
 6913         -
        ) -> SigningParams<'_> {
 6914         -
            let mut params = v4a::SigningParams::from(test_context);
 6915         -
            params.settings.signature_location = signature_location;
 6916         -
 6917         -
            params.into()
 6918         -
        }
 6919         -
 6920         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 6921         -
            let tc = test::v4a::test_context(test_name);
 6922         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 6923         -
 6924         -
            let req = test::v4a::test_request(test_name);
 6925         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 6926         -
            let signable_req = SignableRequest::from(&req);
 6927         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
 6928         -
 6929         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
 6930         -
 6931         -
            let expected_string_to_sign =
 6932         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 6933         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 6934         -
            let actual_string_to_sign = StringToSign::new_v4a(
 6935         -
                *params.time(),
 6936         -
                params.region_set().unwrap(),
 6937         -
                params.name(),
 6938         -
                hashed_creq,
 6939         -
            )
 6940         -
            .to_string();
        8799  +
    mod v4a_suite {
        8800  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 6941   8801   
 6942         -
            assert_eq!(
 6943         -
                expected_string_to_sign, actual_string_to_sign,
 6944         -
                "'string to sign' didn't match"
 6945         -
            );
 6946         -
 6947         -
            let out = sign(signable_req, &params).unwrap();
 6948         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 6949         -
            out.output
 6950         -
                .apply_to_request_http0x(&mut req.as_http_request());
 6951         -
 6952         -
            let creds = params.credentials().unwrap();
 6953         -
            let signing_key =
 6954         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 6955         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 6956         -
            let sig = sig
 6957         -
                .try_into()
 6958         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 6959         -
 6960         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 6961         -
            let peer_public_key = signing_key.verifying_key();
 6962         -
            let sts = actual_string_to_sign.as_bytes();
 6963         -
            peer_public_key.verify(sts, &sig).unwrap();
        8802  +
        #[test]
        8803  +
        fn test_get_header_key_duplicate() {
        8804  +
            run_test_suite_v4a("get-header-key-duplicate")
 6964   8805   
        }
 6965   8806   
 6966   8807   
        #[test]
 6967         -
        fn test_get_header_key_duplicate() {
 6968         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        8808  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        8809  +
        fn test_get_header_value_multiline() {
        8810  +
            run_test_suite_v4a("get-header-value-multiline")
 6969   8811   
        }
 6970   8812   
 6971   8813   
        #[test]
 6972   8814   
        fn test_get_header_value_order() {
 6973         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        8815  +
            run_test_suite_v4a("get-header-value-order")
 6974   8816   
        }
 6975   8817   
 6976   8818   
        #[test]
 6977   8819   
        fn test_get_header_value_trim() {
 6978         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        8820  +
            run_test_suite_v4a("get-header-value-trim");
 6979   8821   
        }
 6980   8822   
 6981   8823   
        #[test]
 6982   8824   
        fn test_get_relative_normalized() {
 6983         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        8825  +
            run_test_suite_v4a("get-relative-normalized");
 6984   8826   
        }
 6985   8827   
 6986   8828   
        #[test]
 6987   8829   
        fn test_get_relative_relative_normalized() {
 6988         -
            run_v4a_test_suite(
 6989         -
                "get-relative-relative-normalized",
 6990         -
                SignatureLocation::Headers,
 6991         -
            );
        8830  +
            run_test_suite_v4a("get-relative-relative-normalized");
 6992   8831   
        }
 6993   8832   
 6994   8833   
        #[test]
 6995   8834   
        fn test_get_relative_relative_unnormalized() {
 6996         -
            run_v4a_test_suite(
 6997         -
                "get-relative-relative-unnormalized",
 6998         -
                SignatureLocation::Headers,
 6999         -
            );
        8835  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 7000   8836   
        }
 7001   8837   
 7002   8838   
        #[test]
 7003   8839   
        fn test_get_relative_unnormalized() {
 7004         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        8840  +
            run_test_suite_v4a("get-relative-unnormalized");
 7005   8841   
        }
 7006   8842   
 7007   8843   
        #[test]
 7008   8844   
        fn test_get_slash_dot_slash_normalized() {
 7009         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        8845  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 7010   8846   
        }
 7011   8847   
 7012   8848   
        #[test]
 7013   8849   
        fn test_get_slash_dot_slash_unnormalized() {
 7014         -
            run_v4a_test_suite(
 7015         -
                "get-slash-dot-slash-unnormalized",
 7016         -
                SignatureLocation::Headers,
 7017         -
            );
        8850  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 7018   8851   
        }
 7019   8852   
 7020   8853   
        #[test]
 7021   8854   
        fn test_get_slash_normalized() {
 7022         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        8855  +
            run_test_suite_v4a("get-slash-normalized");
 7023   8856   
        }
 7024   8857   
 7025   8858   
        #[test]
 7026   8859   
        fn test_get_slash_pointless_dot_normalized() {
 7027         -
            run_v4a_test_suite(
 7028         -
                "get-slash-pointless-dot-normalized",
 7029         -
                SignatureLocation::Headers,
 7030         -
            );
        8860  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 7031   8861   
        }
 7032   8862   
 7033   8863   
        #[test]
 7034   8864   
        fn test_get_slash_pointless_dot_unnormalized() {
 7035         -
            run_v4a_test_suite(
 7036         -
                "get-slash-pointless-dot-unnormalized",
 7037         -
                SignatureLocation::Headers,
 7038         -
            );
        8865  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 7039   8866   
        }
 7040   8867   
 7041   8868   
        #[test]
 7042   8869   
        fn test_get_slash_unnormalized() {
 7043         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        8870  +
            run_test_suite_v4a("get-slash-unnormalized");
 7044   8871   
        }
 7045   8872   
 7046   8873   
        #[test]
 7047   8874   
        fn test_get_slashes_normalized() {
 7048         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        8875  +
            run_test_suite_v4a("get-slashes-normalized");
 7049   8876   
        }
 7050   8877   
 7051   8878   
        #[test]
 7052   8879   
        fn test_get_slashes_unnormalized() {
 7053         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        8880  +
            run_test_suite_v4a("get-slashes-unnormalized");
        8881  +
        }
        8882  +
        8883  +
        #[test]
        8884  +
        #[ignore = "relies on single encode of path segments"]
        8885  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        8886  +
        // skipped until we add control over double_uri_encode in context.json
        8887  +
        fn test_get_space_normalized() {
        8888  +
            run_test_suite_v4a("get-space-normalized");
        8889  +
        }
        8890  +
        8891  +
        #[test]
        8892  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        8893  +
        // the input request has unencoded space ' ' in the path which fails to parse
        8894  +
        fn test_get_space_unnormalized() {
        8895  +
            run_test_suite_v4a("get-space-unnormalized");
 7054   8896   
        }
 7055   8897   
 7056   8898   
        #[test]
 7057   8899   
        fn test_get_unreserved() {
 7058         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        8900  +
            run_test_suite_v4a("get-unreserved");
        8901  +
        }
        8902  +
        8903  +
        #[test]
        8904  +
        #[ignore = "httparse fails on invalid uri character"]
        8905  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8906  +
        fn test_get_utf8() {
        8907  +
            run_test_suite_v4a("get-utf8");
 7059   8908   
        }
 7060   8909   
 7061   8910   
        #[test]
 7062   8911   
        fn test_get_vanilla() {
 7063         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        8912  +
            run_test_suite_v4a("get-vanilla");
 7064   8913   
        }
 7065   8914   
 7066   8915   
        #[test]
 7067   8916   
        fn test_get_vanilla_empty_query_key() {
 7068         -
            run_v4a_test_suite(
 7069         -
                "get-vanilla-empty-query-key",
 7070         -
                SignatureLocation::QueryParams,
 7071         -
            );
        8917  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 7072   8918   
        }
 7073   8919   
 7074   8920   
        #[test]
 7075   8921   
        fn test_get_vanilla_query() {
 7076         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        8922  +
            run_test_suite_v4a("get-vanilla-query");
        8923  +
        }
        8924  +
        8925  +
        #[test]
        8926  +
        fn test_get_vanilla_query_order_encoded() {
        8927  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 7077   8928   
        }
 7078   8929   
 7079   8930   
        #[test]
 7080   8931   
        fn test_get_vanilla_query_order_key_case() {
 7081         -
            run_v4a_test_suite(
 7082         -
                "get-vanilla-query-order-key-case",
 7083         -
                SignatureLocation::QueryParams,
 7084         -
            );
        8932  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 7085   8933   
        }
 7086   8934   
 7087   8935   
        #[test]
 7088   8936   
        fn test_get_vanilla_query_unreserved() {
 7089         -
            run_v4a_test_suite(
 7090         -
                "get-vanilla-query-unreserved",
 7091         -
                SignatureLocation::QueryParams,
 7092         -
            );
        8937  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        8938  +
        }
        8939  +
        8940  +
        #[test]
        8941  +
        #[ignore = "httparse fails on invalid uri character"]
        8942  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8943  +
        fn test_get_vanilla_utf8_query() {
        8944  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 7093   8945   
        }
 7094   8946   
 7095   8947   
        #[test]
 7096   8948   
        fn test_get_vanilla_with_session_token() {
 7097         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        8949  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 7098   8950   
        }
 7099   8951   
 7100   8952   
        #[test]
 7101   8953   
        fn test_post_header_key_case() {
 7102         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        8954  +
            run_test_suite_v4a("post-header-key-case");
 7103   8955   
        }
 7104   8956   
 7105   8957   
        #[test]
 7106   8958   
        fn test_post_header_key_sort() {
 7107         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        8959  +
            run_test_suite_v4a("post-header-key-sort");
 7108   8960   
        }
 7109   8961   
 7110   8962   
        #[test]
 7111   8963   
        fn test_post_header_value_case() {
 7112         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        8964  +
            run_test_suite_v4a("post-header-value-case");
 7113   8965   
        }
 7114   8966   
 7115   8967   
        #[test]
 7116   8968   
        fn test_post_sts_header_after() {
 7117         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        8969  +
            run_test_suite_v4a("post-sts-header-after");
 7118   8970   
        }
 7119   8971   
 7120   8972   
        #[test]
 7121   8973   
        fn test_post_sts_header_before() {
 7122         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        8974  +
            run_test_suite_v4a("post-sts-header-before");
 7123   8975   
        }
 7124   8976   
 7125   8977   
        #[test]
 7126   8978   
        fn test_post_vanilla() {
 7127         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        8979  +
            run_test_suite_v4a("post-vanilla");
 7128   8980   
        }
 7129   8981   
 7130   8982   
        #[test]
 7131   8983   
        fn test_post_vanilla_empty_query_value() {
 7132         -
            run_v4a_test_suite(
 7133         -
                "post-vanilla-empty-query-value",
 7134         -
                SignatureLocation::QueryParams,
 7135         -
            );
        8984  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 7136   8985   
        }
 7137   8986   
 7138   8987   
        #[test]
 7139   8988   
        fn test_post_vanilla_query() {
 7140         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        8989  +
            run_test_suite_v4a("post-vanilla-query");
 7141   8990   
        }
 7142   8991   
 7143   8992   
        #[test]
 7144   8993   
        fn test_post_x_www_form_urlencoded() {
 7145         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        8994  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 7146   8995   
        }
 7147   8996   
 7148   8997   
        #[test]
 7149   8998   
        fn test_post_x_www_form_urlencoded_parameters() {
 7150         -
            run_v4a_test_suite(
 7151         -
                "post-x-www-form-urlencoded-parameters",
 7152         -
                SignatureLocation::QueryParams,
 7153         -
            );
        8999  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 7154   9000   
        }
 7155   9001   
    }
 7156   9002   
 7157   9003   
    #[test]
 7158   9004   
    fn test_sign_url_escape() {
 7159         -
        let test = "double-encode-path";
        9005  +
        let test = SigningSuiteTest::v4("double-encode-path");
 7160   9006   
        let settings = SigningSettings::default();
 7161   9007   
        let identity = &Credentials::for_tests().into();
 7162   9008   
        let params = v4::SigningParams {
 7163   9009   
            identity,
 7164   9010   
            region: "us-east-1",
 7165   9011   
            name: "service",
 7166   9012   
            time: parse_date_time("20150830T123600Z").unwrap(),
 7167   9013   
            settings,
 7168   9014   
        }
 7169   9015   
        .into();
 7170   9016   
 7171         -
        let original = test::v4::test_request(test);
        9017  +
        let original = test.request();
 7172   9018   
        let signable = SignableRequest::from(&original);
 7173   9019   
        let out = sign(signable, &params).unwrap();
 7174   9020   
        assert_eq!(
 7175   9021   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 7176   9022   
            out.signature
 7177   9023   
        );
 7178   9024   
 7179   9025   
        let mut signed = original.as_http_request();
 7180   9026   
        out.output.apply_to_request_http0x(&mut signed);
 7181   9027   
 7182         -
        let expected = test::v4::test_signed_request(test);
 7183         -
        assert_req_eq!(expected, signed);
 7184         -
    }
 7185         -
 7186         -
    #[test]
 7187         -
    fn test_sign_vanilla_with_query_params() {
 7188         -
        let settings = SigningSettings {
 7189         -
            signature_location: SignatureLocation::QueryParams,
 7190         -
            expires_in: Some(Duration::from_secs(35)),
 7191         -
            ..Default::default()
 7192         -
        };
 7193         -
        let identity = &Credentials::for_tests().into();
 7194         -
        let params = v4::SigningParams {
 7195         -
            identity,
 7196         -
            region: "us-east-1",
 7197         -
            name: "service",
 7198         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 7199         -
            settings,
 7200         -
        }
 7201         -
        .into();
 7202         -
 7203         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 7204         -
        let signable = SignableRequest::from(&original);
 7205         -
        let out = sign(signable, &params).unwrap();
 7206         -
        assert_eq!(
 7207         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 7208         -
            out.signature
 7209         -
        );
 7210         -
 7211         -
        let mut signed = original.as_http_request();
 7212         -
        out.output.apply_to_request_http0x(&mut signed);
 7213         -
 7214         -
        let expected =
 7215         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        9028  +
        let expected = test.signed_request(SignatureLocation::Headers);
 7216   9029   
        assert_req_eq!(expected, signed);
 7217   9030   
    }
 7218   9031   
 7219   9032   
    #[test]
 7220   9033   
    fn test_sign_headers_utf8() {
 7221   9034   
        let settings = SigningSettings::default();
 7222   9035   
        let identity = &Credentials::for_tests().into();
 7223   9036   
        let params = v4::SigningParams {
 7224   9037   
            identity,
 7225   9038   
            region: "us-east-1",
 7226   9039   
            name: "service",
 7227   9040   
            time: parse_date_time("20150830T123600Z").unwrap(),
 7228   9041   
            settings,
 7229   9042   
        }
 7230   9043   
        .into();
 7231   9044   
 7232   9045   
        let original = http0::Request::builder()
 7233   9046   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 7234   9047   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 7235   9048   
            .body("")
 7236   9049   
            .unwrap()
 7237   9050   
            .into();
 7238   9051   
        let signable = SignableRequest::from(&original);
 7239   9052   
        let out = sign(signable, &params).unwrap();
 7240   9053   
        assert_eq!(
 7241   9054   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 7242   9055   
            out.signature
 7243   9056   
        );
 7244   9057   
 7245   9058   
        let mut signed = original.as_http_request();
 7246   9059   
@@ -1138,31 +1028,236 @@ mod tests {
 7247   9060   
        let mut request = http::Request::builder()
 7248   9061   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 7249   9062   
            .body("")
 7250   9063   
            .unwrap();
 7251   9064   
 7252   9065   
        instructions.apply_to_request_http1x(&mut request);
 7253   9066   
 7254   9067   
        assert_eq!(
 7255   9068   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 7256   9069   
            request.uri().path_and_query().unwrap().to_string()
 7257   9070   
        );
 7258   9071   
    }
 7259   9072   
 7260   9073   
    #[test]
 7261   9074   
    fn test_debug_signable_body() {
 7262   9075   
        let sut = SignableBody::Bytes(b"hello signable body");
 7263   9076   
        assert_eq!(
 7264   9077   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 7265   9078   
            format!("{sut:?}")
 7266   9079   
        );
 7267   9080   
 7268   9081   
        let sut = SignableBody::UnsignedPayload;
 7269   9082   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 7270   9083   
 7271   9084   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 7272   9085   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 7273   9086   
 7274   9087   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 7275   9088   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 7276   9089   
    }
        9090  +
        9091  +
    // v4 test suite
        9092  +
    mod v4_suite {
        9093  +
        use crate::http_request::test::run_test_suite_v4;
        9094  +
        9095  +
        #[test]
        9096  +
        fn test_get_header_key_duplicate() {
        9097  +
            run_test_suite_v4("get-header-key-duplicate");
        9098  +
        }
        9099  +
        9100  +
        #[test]
        9101  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        9102  +
        fn test_get_header_value_multiline() {
        9103  +
            run_test_suite_v4("get-header-value-multiline");
        9104  +
        }
        9105  +
        9106  +
        #[test]
        9107  +
        fn test_get_header_value_order() {
        9108  +
            run_test_suite_v4("get-header-value-order");
        9109  +
        }
        9110  +
        9111  +
        #[test]
        9112  +
        fn test_get_header_value_trim() {
        9113  +
            run_test_suite_v4("get-header-value-trim");
        9114  +
        }
        9115  +
        9116  +
        #[test]
        9117  +
        fn test_get_relative_normalized() {
        9118  +
            run_test_suite_v4("get-relative-normalized");
        9119  +
        }
        9120  +
        9121  +
        #[test]
        9122  +
        fn test_get_relative_relative_normalized() {
        9123  +
            run_test_suite_v4("get-relative-relative-normalized");
        9124  +
        }
        9125  +
        9126  +
        #[test]
        9127  +
        fn test_get_relative_relative_unnormalized() {
        9128  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        9129  +
        }
        9130  +
        9131  +
        #[test]
        9132  +
        fn test_get_relative_unnormalized() {
        9133  +
            run_test_suite_v4("get-relative-unnormalized");
        9134  +
        }
        9135  +
        9136  +
        #[test]
        9137  +
        fn test_get_slash_dot_slash_normalized() {
        9138  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        9139  +
        }
        9140  +
        9141  +
        #[test]
        9142  +
        fn test_get_slash_dot_slash_unnormalized() {
        9143  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        9144  +
        }
        9145  +
        9146  +
        #[test]
        9147  +
        fn test_get_slash_normalized() {
        9148  +
            run_test_suite_v4("get-slash-normalized");
        9149  +
        }
        9150  +
        9151  +
        #[test]
        9152  +
        fn test_get_slash_pointless_dot_normalized() {
        9153  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        9154  +
        }
        9155  +
        9156  +
        #[test]
        9157  +
        fn test_get_slash_pointless_dot_unnormalized() {
        9158  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        9159  +
        }
        9160  +
        9161  +
        #[test]
        9162  +
        fn test_get_slash_unnormalized() {
        9163  +
            run_test_suite_v4("get-slash-unnormalized");
        9164  +
        }
        9165  +
        9166  +
        #[test]
        9167  +
        fn test_get_slashes_normalized() {
        9168  +
            run_test_suite_v4("get-slashes-normalized");
        9169  +
        }
        9170  +
        9171  +
        #[test]
        9172  +
        fn test_get_slashes_unnormalized() {
        9173  +
            run_test_suite_v4("get-slashes-unnormalized");
        9174  +
        }
        9175  +
        9176  +
        #[test]
        9177  +
        #[ignore = "relies on single encode of path segments"]
        9178  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        9179  +
        // skipped until we add control over double_uri_encode in context.json
        9180  +
        fn test_get_space_normalized() {
        9181  +
            run_test_suite_v4("get-space-normalized");
        9182  +
        }
        9183  +
        9184  +
        #[test]
        9185  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        9186  +
        // the input request has unencoded space ' ' in the path which fails to parse
        9187  +
        fn test_get_space_unnormalized() {
        9188  +
            run_test_suite_v4("get-space-unnormalized");
        9189  +
        }
        9190  +
        9191  +
        #[test]
        9192  +
        fn test_get_unreserved() {
        9193  +
            run_test_suite_v4("get-unreserved");
        9194  +
        }
        9195  +
        9196  +
        #[test]
        9197  +
        #[ignore = "httparse fails on invalid uri character"]
        9198  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9199  +
        fn test_get_utf8() {
        9200  +
            run_test_suite_v4("get-utf8");
        9201  +
        }
        9202  +
        9203  +
        #[test]
        9204  +
        fn test_get_vanilla() {
        9205  +
            run_test_suite_v4("get-vanilla");
        9206  +
        }
        9207  +
        9208  +
        #[test]
        9209  +
        fn test_get_vanilla_empty_query_key() {
        9210  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        9211  +
        }
        9212  +
        9213  +
        #[test]
        9214  +
        fn test_get_vanilla_query() {
        9215  +
            run_test_suite_v4("get-vanilla-query");
        9216  +
        }
        9217  +
        9218  +
        #[test]
        9219  +
        fn test_get_vanilla_query_order_encoded() {
        9220  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        9221  +
        }
        9222  +
        9223  +
        #[test]
        9224  +
        fn test_get_vanilla_query_order_key_case() {
        9225  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        9226  +
        }
        9227  +
        9228  +
        #[test]
        9229  +
        fn test_get_vanilla_query_unreserved() {
        9230  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        9231  +
        }
        9232  +
        9233  +
        #[test]
        9234  +
        #[ignore = "httparse fails on invalid uri character"]
        9235  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9236  +
        fn test_get_vanilla_utf8_query() {
        9237  +
            run_test_suite_v4("get-vanilla-utf8-query");
        9238  +
        }
        9239  +
        9240  +
        #[test]
        9241  +
        fn test_get_vanilla_with_session_token() {
        9242  +
            run_test_suite_v4("get-vanilla-with-session-token");
        9243  +
        }
        9244  +
        9245  +
        #[test]
        9246  +
        fn test_post_header_key_case() {
        9247  +
            run_test_suite_v4("post-header-key-case");
        9248  +
        }
        9249  +
        9250  +
        #[test]
        9251  +
        fn test_post_header_key_sort() {
        9252  +
            run_test_suite_v4("post-header-key-sort");
        9253  +
        }
        9254  +
        9255  +
        #[test]
        9256  +
        fn test_post_header_value_case() {
        9257  +
            run_test_suite_v4("post-header-value-case");
        9258  +
        }
        9259  +
        9260  +
        #[test]
        9261  +
        fn test_post_sts_header_after() {
        9262  +
            run_test_suite_v4("post-sts-header-after");
        9263  +
        }
        9264  +
        9265  +
        #[test]
        9266  +
        fn test_post_sts_header_before() {
        9267  +
            run_test_suite_v4("post-sts-header-before");
        9268  +
        }
        9269  +
        9270  +
        #[test]
        9271  +
        fn test_post_vanilla() {
        9272  +
            run_test_suite_v4("post-vanilla");
        9273  +
        }
        9274  +
        9275  +
        #[test]
        9276  +
        fn test_post_vanilla_empty_query_value() {
        9277  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        9278  +
        }
        9279  +
        9280  +
        #[test]
        9281  +
        fn test_post_vanilla_query() {
        9282  +
            run_test_suite_v4("post-vanilla-query");
        9283  +
        }
        9284  +
        9285  +
        #[test]
        9286  +
        fn test_post_x_www_form_urlencoded() {
        9287  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        9288  +
        }
        9289  +
        9290  +
        #[test]
        9291  +
        fn test_post_x_www_form_urlencoded_parameters() {
        9292  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        9293  +
        }
        9294  +
    }
 7277   9295   
}
 7278   9296   
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
 7279   9297   
index be6c496..86eec20 100644
 7280         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        9298  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 7281   9299   
@@ -1,242 +1,453 @@
 7282   9300   
/*
 7283   9301   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 7284   9302   
 * SPDX-License-Identifier: Apache-2.0
 7285   9303   
 */
 7286   9304   
 7287   9305   
//! Functions shared between the tests of several modules.
 7288   9306   
 7289         -
use crate::http_request::{SignableBody, SignableRequest};
        9307  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        9308  +
use crate::http_request::{
        9309  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        9310  +
    SigningSettings,
        9311  +
};
        9312  +
use aws_credential_types::Credentials;
        9313  +
use aws_smithy_runtime_api::client::identity::Identity;
 7290   9314   
use http0::{Method, Uri};
        9315  +
use std::borrow::Cow;
 7291   9316   
use std::error::Error as StdError;
        9317  +
use std::time::{Duration, SystemTime};
        9318  +
use time::format_description::well_known::Rfc3339;
        9319  +
use time::OffsetDateTime;
        9320  +
        9321  +
/// Common test suite collection
        9322  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        9323  +
enum Collection {
        9324  +
    V4,
        9325  +
    V4A,
        9326  +
}
 7292   9327   
 7293         -
pub(crate) mod v4 {
 7294         -
    use super::*;
        9328  +
/// A test from the common CRT test suite
        9329  +
#[derive(Debug, Clone)]
        9330  +
pub(crate) struct SigningSuiteTest {
        9331  +
    test_name: &'static str,
        9332  +
    collection: Collection,
        9333  +
}
 7295   9334   
 7296         -
    fn path(name: &str, ext: &str) -> String {
 7297         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        9335  +
impl SigningSuiteTest {
        9336  +
    /// Create a new test from the V4 test suite
        9337  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        9338  +
        Self {
        9339  +
            test_name,
        9340  +
            collection: Collection::V4,
        9341  +
        }
 7298   9342   
    }
 7299   9343   
 7300         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 7301         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 7302         -
        read(&path(name, "creq")).trim().to_string()
        9344  +
    /// Create a new test from the V4a test suite
        9345  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        9346  +
        Self {
        9347  +
            test_name,
        9348  +
            collection: Collection::V4A,
        9349  +
        }
 7303   9350   
    }
 7304   9351   
 7305         -
    pub(crate) fn test_sts(name: &str) -> String {
 7306         -
        read(&path(name, "sts"))
        9352  +
    /// Get the path to a file in this test suite directory
        9353  +
    fn path(&self, filename: &str) -> String {
        9354  +
        let dir = match self.collection {
        9355  +
            Collection::V4 => "v4",
        9356  +
            Collection::V4A => "v4a",
        9357  +
        };
        9358  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 7307   9359   
    }
 7308   9360   
 7309         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 7310         -
        test_parsed_request(name, "req")
        9361  +
    /// Get the HTTP request for the test
        9362  +
    pub(crate) fn request(&self) -> TestRequest {
        9363  +
        test_parsed_request(&self.path("request.txt"))
 7311   9364   
    }
 7312   9365   
 7313         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 7314         -
        test_parsed_request(name, "sreq")
        9366  +
    /// Get the signed HTTP request for the test
        9367  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        9368  +
        match signature_location {
        9369  +
            SignatureLocation::QueryParams => {
        9370  +
                test_parsed_request(&self.path("query-signed-request.txt"))
        9371  +
            }
        9372  +
            SignatureLocation::Headers => {
        9373  +
                test_parsed_request(&self.path("header-signed-request.txt"))
        9374  +
            }
        9375  +
        }
 7315   9376   
    }
 7316   9377   
 7317         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 7318         -
        test_parsed_request(name, "qpsreq")
        9378  +
    /// Get the canonical request for the test
        9379  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        9380  +
        match signature_location {
        9381  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        9382  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
        9383  +
        }
 7319   9384   
    }
 7320   9385   
 7321         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 7322         -
        let path = path(name, ext);
 7323         -
        match parse_request(read(&path).as_bytes()) {
 7324         -
            Ok(parsed) => parsed,
 7325         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        9386  +
    /// Get the string to sign for the test
        9387  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
        9388  +
        match signature_location {
        9389  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        9390  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 7326   9391   
        }
 7327   9392   
    }
 7328   9393   
 7329         -
    #[test]
 7330         -
    fn test_parse() {
 7331         -
        test_request("post-header-key-case");
        9394  +
    /// Get the signature for the test
        9395  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
        9396  +
        match signature_location {
        9397  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        9398  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        9399  +
        }
 7332   9400   
    }
 7333   9401   
 7334         -
    #[test]
 7335         -
    fn test_read_query_params() {
 7336         -
        test_request("get-vanilla-query-order-key-case");
        9402  +
    /// Get the test context for the test
        9403  +
    pub(crate) fn context(&self) -> TestContext {
        9404  +
        let context = read(&self.path("context.json"));
        9405  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        9406  +
        tc_builder.build()
 7337   9407   
    }
 7338   9408   
}
 7339   9409   
 7340         -
#[cfg(feature = "sigv4a")]
 7341         -
pub(crate) mod v4a {
 7342         -
    use super::*;
 7343         -
    use crate::http_request::{
 7344         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 7345         -
    };
 7346         -
    use aws_credential_types::Credentials;
 7347         -
    use aws_smithy_runtime_api::client::identity::Identity;
 7348         -
    use serde_derive::Deserialize;
 7349         -
    use std::time::{Duration, SystemTime};
 7350         -
    use time::format_description::well_known::Rfc3339;
 7351         -
    use time::OffsetDateTime;
 7352         -
 7353         -
    fn path(test_name: &str, definition_name: &str) -> String {
 7354         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        9410  +
fn test_parsed_request(path: &str) -> TestRequest {
        9411  +
    match parse_request(read(path).as_bytes()) {
        9412  +
        Ok(parsed) => parsed,
        9413  +
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 7355   9414   
    }
        9415  +
}
 7356   9416   
 7357         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 7358         -
        test_parsed_request(&path(name, "request"))
 7359         -
    }
        9417  +
fn new_v4_signing_params_from_context(
        9418  +
    test_context: &'_ TestContext,
        9419  +
    signature_location: SignatureLocation,
        9420  +
) -> crate::http_request::SigningParams<'_> {
        9421  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        9422  +
    params.settings.signature_location = signature_location;
        9423  +
    params.into()
        9424  +
}
 7360   9425   
 7361         -
    pub(crate) fn test_canonical_request(
 7362         -
        name: &str,
 7363         -
        signature_location: SignatureLocation,
 7364         -
    ) -> String {
 7365         -
        match signature_location {
 7366         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 7367         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        9426  +
/// Run the given test from the v4 suite for both header and query
        9427  +
/// signature locations
        9428  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        9429  +
    run_v4_test(test_name, SignatureLocation::Headers);
        9430  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        9431  +
}
        9432  +
        9433  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        9434  +
    assert_eq!(expected.scheme(), actual.scheme());
        9435  +
    assert_eq!(expected.authority(), actual.authority());
        9436  +
    assert_eq!(expected.path(), actual.path());
        9437  +
        9438  +
    // query params may be out of order
        9439  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        9440  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        9441  +
    expected_params.sort();
        9442  +
        9443  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        9444  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        9445  +
    actual_params.sort();
        9446  +
        9447  +
    assert_eq!(expected_params, actual_params);
        9448  +
}
        9449  +
        9450  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        9451  +
    let expected = expected.as_http_request();
        9452  +
    let actual = actual;
        9453  +
    assert_eq!(expected.method(), actual.method());
        9454  +
    assert_eq!(
        9455  +
        expected.headers().len(),
        9456  +
        actual.headers().len(),
        9457  +
        "extra or missing headers"
        9458  +
    );
        9459  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        9460  +
    assert_uri_eq(expected.uri(), actual.uri());
        9461  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        9462  +
}
        9463  +
        9464  +
/// Run the given test from the v4 suite for the given signature location
        9465  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        9466  +
    let test = SigningSuiteTest::v4(test_name);
        9467  +
    let tc = test.context();
        9468  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        9469  +
        9470  +
    let req = test.request();
        9471  +
    let expected_creq = test.canonical_request(signature_location);
        9472  +
    let signable_req = SignableRequest::from(&req);
        9473  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        9474  +
        9475  +
    // check canonical request
        9476  +
    assert_eq!(
        9477  +
        expected_creq,
        9478  +
        actual_creq.to_string(),
        9479  +
        "canonical request didn't match (signature location: {signature_location:?})"
        9480  +
    );
        9481  +
        9482  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        9483  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        9484  +
    let actual_string_to_sign = StringToSign::new_v4(
        9485  +
        *params.time(),
        9486  +
        params.region().unwrap(),
        9487  +
        params.name(),
        9488  +
        hashed_creq,
        9489  +
    )
        9490  +
    .to_string();
        9491  +
        9492  +
    // check string to sign
        9493  +
    assert_eq!(
        9494  +
        expected_string_to_sign, actual_string_to_sign,
        9495  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        9496  +
    );
        9497  +
        9498  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        9499  +
    let mut signed = req.as_http_request();
        9500  +
    out.output.apply_to_request_http0x(&mut signed);
        9501  +
        9502  +
    // check signature
        9503  +
    assert_eq!(
        9504  +
        test.signature(signature_location),
        9505  +
        out.signature,
        9506  +
        "signature didn't match (signature location: {signature_location:?})"
        9507  +
    );
        9508  +
        9509  +
    let expected = test.signed_request(signature_location);
        9510  +
    assert_requests_eq(expected, signed);
        9511  +
}
        9512  +
        9513  +
/// Test suite context.json
        9514  +
pub(crate) struct TestContext {
        9515  +
    pub(crate) identity: Identity,
        9516  +
    pub(crate) expiration_in_seconds: u64,
        9517  +
    pub(crate) normalize: bool,
        9518  +
    pub(crate) region: String,
        9519  +
    pub(crate) service: String,
        9520  +
    pub(crate) timestamp: String,
        9521  +
    pub(crate) omit_session_token: bool,
        9522  +
    pub(crate) sign_body: bool,
        9523  +
}
        9524  +
        9525  +
// Serde has limitations requiring this odd workaround.
        9526  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        9527  +
fn return_true() -> bool {
        9528  +
    true
        9529  +
}
        9530  +
        9531  +
#[derive(serde_derive::Deserialize)]
        9532  +
pub(crate) struct TestContextBuilder {
        9533  +
    credentials: TestContextCreds,
        9534  +
    expiration_in_seconds: u64,
        9535  +
    normalize: bool,
        9536  +
    region: String,
        9537  +
    service: String,
        9538  +
    timestamp: String,
        9539  +
    #[serde(default)]
        9540  +
    omit_session_token: bool,
        9541  +
    #[serde(default = "return_true")]
        9542  +
    sign_body: bool,
        9543  +
}
        9544  +
        9545  +
impl TestContextBuilder {
        9546  +
    pub(crate) fn build(self) -> TestContext {
        9547  +
        let identity = Identity::new(
        9548  +
            Credentials::from_keys(
        9549  +
                &self.credentials.access_key_id,
        9550  +
                &self.credentials.secret_access_key,
        9551  +
                self.credentials.token.clone(),
        9552  +
            ),
        9553  +
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
        9554  +
        );
        9555  +
        9556  +
        TestContext {
        9557  +
            identity,
        9558  +
            expiration_in_seconds: self.expiration_in_seconds,
        9559  +
            normalize: self.normalize,
        9560  +
            region: self.region,
        9561  +
            service: self.service,
        9562  +
            timestamp: self.timestamp,
        9563  +
            omit_session_token: self.omit_session_token,
        9564  +
            sign_body: self.sign_body,
 7368   9565   
        }
 7369   9566   
    }
        9567  +
}
 7370   9568   
 7371         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
 7372         -
        match signature_location {
 7373         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 7374         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        9569  +
#[derive(serde_derive::Deserialize)]
        9570  +
pub(crate) struct TestContextCreds {
        9571  +
    access_key_id: String,
        9572  +
    secret_access_key: String,
        9573  +
    token: Option<String>,
        9574  +
}
        9575  +
        9576  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        9577  +
    fn from(tc: &'a TestContext) -> Self {
        9578  +
        crate::sign::v4::SigningParams {
        9579  +
            identity: &tc.identity,
        9580  +
            region: &tc.region,
        9581  +
            name: &tc.service,
        9582  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        9583  +
                .unwrap()
        9584  +
                .into(),
        9585  +
            settings: SigningSettings {
        9586  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        9587  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        9588  +
                uri_path_normalization_mode: tc.normalize.into(),
        9589  +
                session_token_mode: if tc.omit_session_token {
        9590  +
                    SessionTokenMode::Exclude
        9591  +
                } else {
        9592  +
                    SessionTokenMode::Include
        9593  +
                },
        9594  +
                payload_checksum_kind: if tc.sign_body {
        9595  +
                    PayloadChecksumKind::XAmzSha256
        9596  +
                } else {
        9597  +
                    PayloadChecksumKind::NoHeader
        9598  +
                },
        9599  +
                ..Default::default()
        9600  +
            },
 7375   9601   
        }
 7376   9602   
    }
        9603  +
}
 7377   9604   
 7378         -
    fn test_parsed_request(path: &str) -> TestRequest {
 7379         -
        match parse_request(read(path).as_bytes()) {
 7380         -
            Ok(parsed) => parsed,
 7381         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
 7382         -
        }
        9605  +
#[cfg(feature = "sigv4a")]
        9606  +
pub(crate) mod v4a {
        9607  +
    use super::*;
        9608  +
    use crate::http_request::{
        9609  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        9610  +
    };
        9611  +
    use crate::sign::v4a;
        9612  +
    use p256::ecdsa::signature::{Signature, Verifier};
        9613  +
    use p256::ecdsa::{DerSignature, SigningKey};
        9614  +
    use std::time::Duration;
        9615  +
    use time::format_description::well_known::Rfc3339;
        9616  +
    use time::OffsetDateTime;
        9617  +
        9618  +
    fn new_v4a_signing_params_from_context(
        9619  +
        test_context: &'_ TestContext,
        9620  +
        signature_location: SignatureLocation,
        9621  +
    ) -> crate::http_request::SigningParams<'_> {
        9622  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        9623  +
        params.settings.signature_location = signature_location;
        9624  +
        params.into()
 7383   9625   
    }
 7384   9626   
 7385         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 7386         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 7387         -
        let context = read(&path);
 7388         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 7389         -
        tc_builder.build()
        9627  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        9628  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        9629  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
 7390   9630   
    }
 7391   9631   
 7392         -
    pub(crate) struct TestContext {
 7393         -
        pub(crate) identity: Identity,
 7394         -
        pub(crate) expiration_in_seconds: u64,
 7395         -
        pub(crate) normalize: bool,
 7396         -
        pub(crate) region: String,
 7397         -
        pub(crate) service: String,
 7398         -
        pub(crate) timestamp: String,
 7399         -
        pub(crate) omit_session_token: bool,
 7400         -
        pub(crate) sign_body: bool,
        9632  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        9633  +
        let test = SigningSuiteTest::v4a(test_name);
        9634  +
        let tc = test.context();
        9635  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        9636  +
        9637  +
        let req = test.request();
        9638  +
        let expected_creq = test.canonical_request(signature_location);
        9639  +
        let signable_req = SignableRequest::from(&req);
        9640  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        9641  +
        9642  +
        assert_eq!(
        9643  +
            expected_creq,
        9644  +
            actual_creq.to_string(),
        9645  +
            "canonical request didn't match (signature location: {signature_location:?})"
        9646  +
        );
        9647  +
        9648  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        9649  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        9650  +
        let actual_string_to_sign = StringToSign::new_v4a(
        9651  +
            *params.time(),
        9652  +
            params.region_set().unwrap(),
        9653  +
            params.name(),
        9654  +
            hashed_creq,
        9655  +
        )
        9656  +
        .to_string();
        9657  +
        9658  +
        assert_eq!(
        9659  +
            expected_string_to_sign, actual_string_to_sign,
        9660  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        9661  +
        );
        9662  +
        9663  +
        let out = sign(signable_req, &params).unwrap();
        9664  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        9665  +
        out.output
        9666  +
            .apply_to_request_http0x(&mut req.as_http_request());
        9667  +
        9668  +
        let creds = params.credentials().unwrap();
        9669  +
        let signing_key =
        9670  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        9671  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        9672  +
        let sig = sig
        9673  +
            .try_into()
        9674  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        9675  +
        9676  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        9677  +
        let peer_public_key = signing_key.verifying_key();
        9678  +
        let sts = actual_string_to_sign.as_bytes();
        9679  +
        peer_public_key.verify(sts, &sig).unwrap();
        9680  +
        // TODO(sigv4a) - use public.key.json as verifying key?
 7401   9681   
    }
 7402   9682   
 7403   9683   
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 7404   9684   
        fn from(tc: &'a TestContext) -> Self {
 7405   9685   
            crate::sign::v4a::SigningParams {
 7406   9686   
                identity: &tc.identity,
 7407   9687   
                region_set: &tc.region,
 7408   9688   
                name: &tc.service,
 7409   9689   
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 7410   9690   
                    .unwrap()
 7411   9691   
                    .into(),
 7412   9692   
                settings: SigningSettings {
 7413   9693   
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 7414   9694   
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 7415   9695   
                    uri_path_normalization_mode: tc.normalize.into(),
 7416   9696   
                    session_token_mode: if tc.omit_session_token {
 7417   9697   
                        SessionTokenMode::Exclude
 7418   9698   
                    } else {
 7419   9699   
                        SessionTokenMode::Include
 7420   9700   
                    },
 7421   9701   
                    payload_checksum_kind: if tc.sign_body {
 7422   9702   
                        PayloadChecksumKind::XAmzSha256
 7423   9703   
                    } else {
 7424   9704   
                        PayloadChecksumKind::NoHeader
 7425   9705   
                    },
 7426   9706   
                    ..Default::default()
 7427   9707   
                },
 7428   9708   
            }
 7429   9709   
        }
 7430   9710   
    }
 7431   9711   
 7432         -
    // Serde has limitations requiring this odd workaround.
 7433         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 7434         -
    fn return_true() -> bool {
 7435         -
        true
 7436         -
    }
 7437         -
 7438         -
    #[derive(Deserialize)]
 7439         -
    pub(crate) struct TestContextBuilder {
 7440         -
        credentials: TestContextCreds,
 7441         -
        expiration_in_seconds: u64,
 7442         -
        normalize: bool,
 7443         -
        region: String,
 7444         -
        service: String,
 7445         -
        timestamp: String,
 7446         -
        #[serde(default)]
 7447         -
        omit_session_token: bool,
 7448         -
        #[serde(default = "return_true")]
 7449         -
        sign_body: bool,
 7450         -
    }
 7451         -
 7452         -
    impl TestContextBuilder {
 7453         -
        pub(crate) fn build(self) -> TestContext {
 7454         -
            let identity = Identity::new(
 7455         -
                Credentials::from_keys(
 7456         -
                    &self.credentials.access_key_id,
 7457         -
                    &self.credentials.secret_access_key,
 7458         -
                    self.credentials.token.clone(),
 7459         -
                ),
 7460         -
                Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 7461         -
            );
 7462         -
 7463         -
            TestContext {
 7464         -
                identity,
 7465         -
                expiration_in_seconds: self.expiration_in_seconds,
 7466         -
                normalize: self.normalize,
 7467         -
                region: self.region,
 7468         -
                service: self.service,
 7469         -
                timestamp: self.timestamp,
 7470         -
                omit_session_token: self.omit_session_token,
 7471         -
                sign_body: self.sign_body,
 7472         -
            }
 7473         -
        }
 7474         -
    }
 7475         -
 7476         -
    #[derive(Deserialize)]
 7477         -
    pub(crate) struct TestContextCreds {
 7478         -
        access_key_id: String,
 7479         -
        secret_access_key: String,
 7480         -
        token: Option<String>,
 7481         -
    }
 7482         -
 7483   9712   
    #[test]
 7484   9713   
    fn test_parse() {
 7485         -
        let req = test_request("post-header-key-case");
        9714  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 7486   9715   
        assert_eq!(req.method, "POST");
 7487   9716   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 7488   9717   
        assert!(req.headers.is_empty());
 7489   9718   
    }
 7490   9719   
 7491   9720   
    #[test]
 7492   9721   
    fn test_read_query_params() {
 7493         -
        let req = test_request("get-header-value-trim");
        9722  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 7494   9723   
        assert_eq!(req.method, "GET");
 7495   9724   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 7496   9725   
        assert!(!req.headers.is_empty());
 7497   9726   
    }
 7498   9727   
}
 7499   9728   
 7500   9729   
fn read(path: &str) -> String {
 7501   9730   
    println!("Loading `{}` for test case...", path);
 7502   9731   
    let v = {
 7503   9732   
        match std::fs::read_to_string(path) {
 7504   9733   
            // This replacement is necessary for tests to pass on Windows, as reading the
 7505   9734   
            // test snapshots from the file system results in CRLF line endings being inserted.
 7506   9735   
            Ok(value) => value.replace("\r\n", "\n"),
 7507   9736   
            Err(err) => {
 7508   9737   
                panic!("failed to load test case `{}`: {}", path, err);
 7509   9738   
            }
 7510   9739   
        }
 7511   9740   
    };
 7512   9741   
 7513   9742   
    v.trim().to_string()
 7514   9743   
}
 7515   9744   
 7516   9745   
pub(crate) struct TestRequest {
 7517   9746   
    pub(crate) uri: String,
 7518   9747   
    pub(crate) method: String,
 7519   9748   
    pub(crate) headers: Vec<(String, String)>,
 7520   9749   
    pub(crate) body: TestSignedBody,
 7521   9750   
}
 7522   9751   
 7523   9752   
pub(crate) enum TestSignedBody {
 7524   9753   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 7525   9754   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 7526   9755   
                    )
 7527   9756   
                })
 7528   9757   
                .collect::<Vec<_>>(),
 7529   9758   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 7530   9759   
        }
 7531   9760   
    }
 7532   9761   
}
 7533   9762   
 7534   9763   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 7535   9764   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 7536   9765   
        SignableRequest::new(
 7537   9766   
            &request.method,
 7538   9767   
            &request.uri,
 7539   9768   
            request
 7540   9769   
                .headers
 7541   9770   
                .iter()
 7542   9771   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 7543   9772   
            request.body.as_signable_body(),
 7544   9773   
        )
 7545   9774   
        .expect("URI MUST be valid")
 7546   9775   
    }
 7547   9776   
}
 7548   9777   
 7549   9778   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 7550   9779   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 7551   9780   
    // httparse 1.5 requires two trailing newlines to head the header section.
 7552   9781   
    let mut with_newline = Vec::from(s);
 7553   9782   
    with_newline.push(b'\n');
 7554   9783   
    let mut req = httparse::Request::new(&mut headers);
 7555         -
    let _ = req.parse(&with_newline).unwrap();
        9784  +
    let status = req.parse(&with_newline).unwrap();
        9785  +
        9786  +
    let body = if status.is_complete() {
        9787  +
        let body_offset = status.unwrap();
        9788  +
        // ignore the newline we added, take from original
        9789  +
        &s[body_offset..]
        9790  +
    } else {
        9791  +
        &[]
        9792  +
    };
 7556   9793   
 7557   9794   
    let mut uri_builder = Uri::builder().scheme("https");
 7558   9795   
    if let Some(path) = req.path {
 7559   9796   
        uri_builder = uri_builder.path_and_query(path);
 7560   9797   
    }
 7561   9798   
 7562   9799   
    let mut headers = vec![];
 7563   9800   
    for header in req.headers {
 7564   9801   
        let name = header.name.to_lowercase();
 7565   9802   
        if name == "host" {
 7566   9803   
            uri_builder = uri_builder.authority(header.value);
 7567   9804   
        } else if !name.is_empty() {
 7568   9805   
            headers.push((
 7569   9806   
                header.name.to_string(),
 7570   9807   
                std::str::from_utf8(header.value)?.to_string(),
 7571   9808   
            ));
 7572   9809   
        }
 7573   9810   
    }
 7574   9811   
 7575   9812   
    Ok(TestRequest {
 7576   9813   
        uri: uri_builder.build()?.to_string(),
 7577   9814   
        method: req.method.unwrap().to_string(),
 7578   9815   
        headers,
 7579         -
        body: TestSignedBody::Bytes(vec![]),
        9816  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 7580   9817   
    })
 7581   9818   
}
 7582   9819   
 7583   9820   
#[test]
 7584   9821   
fn test_parse_headers() {
 7585   9822   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 7586   9823   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 7587   9824   
    assert_eq!(
 7588   9825   
        httparse::parse_headers(buf, &mut headers),
 7589   9826   
        Ok(httparse::Status::Complete((
 7590   9827   
            56,
 7591   9828   
            &[
 7592   9829   
                httparse::Header {
 7593   9830   
                    name: "Host",
 7594   9831   
                    value: b"example.amazonaws.com",
 7595   9832   
                },
 7596   9833   
                httparse::Header {
 7597   9834   
                    name: "X-Amz-Date",
 7598   9835   
                    value: b"20150830T123600Z",
 7599   9836   
                }
 7600   9837   
            ][..]
 7601   9838   
        )))
 7602   9839   
    );
 7603   9840   
}
 7604   9841   
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
 7605   9842   
index a208453..fc00249 100644
 7606         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        9843  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 7607   9844   
@@ -168,52 +168,54 @@ pub mod signing_params {
 7608   9845   
        );
 7609   9846   
 7610   9847   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 7611   9848   
        /// a required argument was not given.
 7612   9849   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 7613   9850   
            Ok(SigningParams {
 7614   9851   
                identity: self
 7615   9852   
                    .identity
 7616   9853   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 7617   9854   
                region: self
 7618   9855   
                    .region
 7619   9856   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 7620   9857   
                name: self
 7621   9858   
                    .name
 7622   9859   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 7623   9860   
                time: self
 7624   9861   
                    .time
 7625   9862   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 7626   9863   
                settings: self
 7627   9864   
                    .settings
 7628   9865   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 7629   9866   
            })
 7630   9867   
        }
 7631   9868   
    }
 7632   9869   
}
 7633   9870   
 7634   9871   
#[cfg(test)]
 7635   9872   
mod tests {
 7636   9873   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 7637   9874   
    use crate::date_time::test_parsers::parse_date_time;
 7638         -
    use crate::http_request::test;
 7639   9875   
 7640   9876   
    #[test]
 7641   9877   
    fn test_signature_calculation() {
 7642   9878   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 7643         -
        let creq = test::v4::test_canonical_request("iam");
        9879  +
        let creq = r#"AWS4-HMAC-SHA256
        9880  +
20150830T123600Z
        9881  +
20150830/us-east-1/iam/aws4_request
        9882  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 7644   9883   
        let time = parse_date_time("20150830T123600Z").unwrap();
 7645   9884   
 7646   9885   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 7647   9886   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 7648   9887   
 7649   9888   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 7650   9889   
        assert_eq!(expected, &signature);
 7651   9890   
    }
 7652   9891   
 7653   9892   
    #[test]
 7654   9893   
    fn sign_payload_empty_string() {
 7655   9894   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 7656   9895   
        let actual = sha256_hex_string([]);
 7657   9896   
        assert_eq!(expected, actual);
 7658   9897   
    }
 7659   9898   
}
 7660   9899   
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
 7661   9900   
index ce78c38..8c2f591 100644
 7662         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
        9901  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 7663   9902   
@@ -1,43 +1,43 @@
 7664   9903   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7665   9904   
[package]
 7666   9905   
name = "aws-smithy-checksums"
 7667   9906   
version = "0.63.5"
 7668   9907   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 7669   9908   
description = "Checksum calculation and verification callbacks"
 7670   9909   
edition = "2021"
 7671   9910   
license = "Apache-2.0"
 7672   9911   
repository = "https://github.com/smithy-lang/smithy-rs"
 7673   9912   
[package.metadata.docs.rs]
 7674   9913   
all-features = true
 7675   9914   
targets = ["x86_64-unknown-linux-gnu"]
 7676   9915   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7677   9916   
rustdoc-args = ["--cfg", "docsrs"]
 7678   9917   
 7679   9918   
[dependencies]
 7680   9919   
bytes = "1.10.0"
 7681   9920   
crc-fast = "1.3.0"
 7682   9921   
hex = "0.4.3"
 7683   9922   
http = "0.2.9"
 7684   9923   
http-body = "0.4.5"
 7685   9924   
md-5 = "0.10"
 7686   9925   
pin-project-lite = "0.2.14"
 7687   9926   
sha1 = "0.10"
 7688   9927   
sha2 = "0.10"
 7689   9928   
tracing = "0.1.40"
 7690   9929   
 7691   9930   
[dependencies.aws-smithy-http]
 7692   9931   
path = "../aws-smithy-http"
 7693         -
version = "0.62.2"
        9932  +
version = "0.62.3"
 7694   9933   
 7695   9934   
[dependencies.aws-smithy-types]
 7696   9935   
path = "../aws-smithy-types"
 7697   9936   
version = "1.3.2"
 7698   9937   
 7699   9938   
[dev-dependencies]
 7700   9939   
bytes-utils = "0.1.2"
 7701   9940   
pretty_assertions = "1.3"
 7702   9941   
tracing-test = "0.2.1"
 7703   9942   
 7704   9943   
[dev-dependencies.tokio]
 7705   9944   
version = "1.23.1"
 7706   9945   
features = ["macros", "rt"]
 7707   9946   
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
 7708   9947   
index 970c99e..d3c7a49 100644
 7709         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
        9948  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 7710   9949   
@@ -1,34 +1,34 @@
 7711   9950   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7712   9951   
[package]
 7713   9952   
name = "aws-smithy-http"
 7714         -
version = "0.62.2"
        9953  +
version = "0.62.3"
 7715   9954   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7716   9955   
description = "Smithy HTTP logic for smithy-rs."
 7717   9956   
edition = "2021"
 7718   9957   
license = "Apache-2.0"
 7719   9958   
repository = "https://github.com/smithy-lang/smithy-rs"
 7720   9959   
[package.metadata.docs.rs]
 7721   9960   
all-features = true
 7722   9961   
targets = ["x86_64-unknown-linux-gnu"]
 7723   9962   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7724   9963   
rustdoc-args = ["--cfg", "docsrs"]
 7725   9964   
 7726   9965   
[features]
 7727   9966   
event-stream = ["aws-smithy-eventstream"]
 7728   9967   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 7729   9968   
 7730   9969   
[dependencies]
 7731   9970   
bytes = "1.10.0"
 7732   9971   
bytes-utils = "0.1"
 7733   9972   
percent-encoding = "2.3.1"
 7734   9973   
pin-project-lite = "0.2.14"
 7735   9974   
pin-utils = "0.1.0"
 7736   9975   
tracing = "0.1.40"
 7737   9976   
futures-core = "0.3.31"
 7738   9977   
 7739   9978   
[dependencies.aws-smithy-eventstream]
 7740   9979   
path = "../aws-smithy-eventstream"
 7741   9980   
optional = true
 7742   9981   
version = "0.60.10"
 7743   9982   
 7744   9983   
[dependencies.aws-smithy-runtime-api]
 7745   9984   
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
 7746   9985   
index 508f7a2..361545e 100644
 7747         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
        9986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 7748   9987   
@@ -1,27 +1,27 @@
 7749   9988   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7750   9989   
[[bin]]
 7751   9990   
name = "read_many_from_str"
 7752   9991   
path = "fuzz_targets/read_many_from_str.rs"
 7753   9992   
test = false
 7754   9993   
doc = false
 7755   9994   
 7756   9995   
[package]
 7757   9996   
name = "aws-smithy-http-fuzz"
 7758   9997   
version = "0.0.0"
 7759   9998   
authors = ["Automatically generated"]
 7760   9999   
publish = false
 7761  10000   
edition = "2021"
 7762  10001   
 7763  10002   
[package.metadata]
 7764  10003   
cargo-fuzz = true
 7765  10004   
 7766  10005   
[dependencies]
 7767  10006   
libfuzzer-sys = "=0.4.7"
 7768  10007   
http = "0.2.3"
 7769  10008   
 7770  10009   
[dependencies.aws-smithy-http]
 7771  10010   
path = ".."
 7772         -
version = "0.62.2"
       10011  +
version = "0.62.3"
 7773  10012   
 7774  10013   
[workspace]
 7775  10014   
members = ["."]
 7776  10015   
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
 7777  10016   
index fef41d0..7694da6 100644
 7778         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
       10017  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 7779  10018   
@@ -25,68 +25,73 @@ impl QueryWriter {
 7780  10019   
    pub fn new(uri: &Uri) -> Self {
 7781  10020   
        let new_path_and_query = uri
 7782  10021   
            .path_and_query()
 7783  10022   
            .map(|pq| pq.to_string())
 7784  10023   
            .unwrap_or_default();
 7785  10024   
        let prefix = if uri.query().is_none() {
 7786  10025   
            Some('?')
 7787  10026   
        } else if !uri.query().unwrap_or_default().is_empty() {
 7788  10027   
            Some('&')
 7789  10028   
        } else {
 7790  10029   
            None
 7791  10030   
        };
 7792  10031   
        QueryWriter {
 7793  10032   
            base_uri: uri.clone(),
 7794  10033   
            new_path_and_query,
 7795  10034   
            prefix,
 7796  10035   
        }
 7797  10036   
    }
 7798  10037   
 7799  10038   
    /// Clears all query parameters.
 7800  10039   
    pub fn clear_params(&mut self) {
 7801  10040   
        if let Some(index) = self.new_path_and_query.find('?') {
 7802  10041   
            self.new_path_and_query.truncate(index);
 7803  10042   
            self.prefix = Some('?');
 7804  10043   
        }
 7805  10044   
    }
 7806  10045   
 7807  10046   
    /// Inserts a new query parameter. The key and value are percent encoded
 7808  10047   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 7809  10048   
    pub fn insert(&mut self, k: &str, v: &str) {
       10049  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
       10050  +
    }
       10051  +
       10052  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
       10053  +
    /// as is.
       10054  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 7810  10055   
        if let Some(prefix) = self.prefix {
 7811  10056   
            self.new_path_and_query.push(prefix);
 7812  10057   
        }
 7813  10058   
        self.prefix = Some('&');
 7814         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
       10059  +
        self.new_path_and_query.push_str(encoded_k);
 7815  10060   
        self.new_path_and_query.push('=');
 7816         -
 7817         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
       10061  +
        self.new_path_and_query.push_str(encoded_v)
 7818  10062   
    }
 7819  10063   
 7820  10064   
    /// Returns just the built query string.
 7821  10065   
    pub fn build_query(self) -> String {
 7822  10066   
        self.build_uri().query().unwrap_or_default().to_string()
 7823  10067   
    }
 7824  10068   
 7825  10069   
    /// Returns a full [`Uri`] with the query string updated.
 7826  10070   
    pub fn build_uri(self) -> Uri {
 7827  10071   
        let mut parts = self.base_uri.into_parts();
 7828  10072   
        parts.path_and_query = Some(
 7829  10073   
            self.new_path_and_query
 7830  10074   
                .parse()
 7831  10075   
                .expect("adding query should not invalidate URI"),
 7832  10076   
        );
 7833  10077   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 7834  10078   
    }
 7835  10079   
}
 7836  10080   
 7837  10081   
#[cfg(test)]
 7838  10082   
mod test {
 7839  10083   
    use super::QueryWriter;
 7840  10084   
    use http_02x::Uri;
 7841  10085   
 7842  10086   
    #[test]
 7843  10087   
    fn empty_uri() {
 7844  10088   
        let uri = Uri::from_static("http://www.example.com");
 7845  10089   
        let mut query_writer = QueryWriter::new(&uri);
 7846  10090   
        query_writer.insert("key", "val%ue");
 7847  10091   
        query_writer.insert("another", "value");
 7848  10092   
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
 7849  10093   
index f108978..df7a9fe 100644
 7850         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
       10094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 7851  10095   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 7852  10096   
 7853  10097   
[package.metadata.smithy-rs-release-tooling]
 7854  10098   
stable = true
 7855  10099   
[package.metadata.cargo-udeps.ignore]
 7856  10100   
normal = ["aws-smithy-http"]
 7857  10101   
 7858  10102   
[features]
 7859  10103   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 7860  10104   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 7861  10105   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 7862  10106   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 7863  10107   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 7864  10108   
rt-tokio = ["tokio/rt"]
 7865  10109   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 7866  10110   
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"]
 7867  10111   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 7868  10112   
 7869  10113   
[dependencies]
 7870  10114   
bytes = "1.10.0"
 7871  10115   
fastrand = "2.3.0"
 7872  10116   
pin-project-lite = "0.2.14"
 7873  10117   
pin-utils = "0.1.0"
 7874  10118   
tracing = "0.1.40"
 7875  10119   
 7876  10120   
[dependencies.aws-smithy-async]
 7877  10121   
path = "../aws-smithy-async"
 7878  10122   
version = "1.2.5"
 7879  10123   
 7880  10124   
[dependencies.aws-smithy-http]
 7881  10125   
path = "../aws-smithy-http"
 7882         -
version = "0.62.2"
       10126  +
version = "0.62.3"
 7883  10127   
 7884  10128   
[dependencies.aws-smithy-observability]
 7885  10129   
path = "../aws-smithy-observability"
 7886  10130   
version = "0.1.3"
 7887  10131   
 7888  10132   
[dependencies.aws-smithy-runtime-api]
 7889  10133   
path = "../aws-smithy-runtime-api"
 7890  10134   
version = "1.8.5"
 7891  10135   
 7892  10136   
[dependencies.aws-smithy-types]
 7893  10137   
path = "../aws-smithy-types"
 7894  10138   
features = ["http-body-0-4-x"]
 7895  10139   
version = "1.3.2"
 7896  10140   
 7897  10141   
[dependencies.aws-smithy-http-client]
 7898  10142   
path = "../aws-smithy-http-client"
 7899  10143   
optional = true
 7900  10144   
version = "1.0.6"
 7901  10145   
 7902  10146   
[dependencies.http-02x]
 7903  10147   
package = "http"
 7904  10148   
version = "0.2.9"
 7905  10149   
 7906  10150   
[dependencies.http-1x]
 7907  10151   
package = "http"
 7908  10152   
version = "1"
 7909  10153   
 7910  10154   
[dependencies.http-body-04x]
 7911  10155   
package = "http-body"
 7912  10156   
version = "0.4.5"
 7913  10157   
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
 7914  10158   
index 4e050c6..f58eb1c 100644
 7915         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
       10159  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 7916  10160   
@@ -1,33 +1,33 @@
 7917  10161   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7918  10162   
[package]
 7919  10163   
name = "aws-smithy-wasm"
 7920  10164   
version = "0.1.4"
 7921  10165   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 7922  10166   
description = "Smithy WebAssembly configuration for smithy-rs."
 7923  10167   
edition = "2021"
 7924  10168   
license = "Apache-2.0"
 7925  10169   
repository = "https://github.com/awslabs/smithy-rs"
 7926  10170   
[package.metadata.docs.rs]
 7927  10171   
all-features = true
 7928  10172   
targets = ["x86_64-unknown-linux-gnu"]
 7929  10173   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7930  10174   
rustdoc-args = ["--cfg", "docsrs"]
 7931  10175   
 7932  10176   
[dependencies]
 7933  10177   
bytes = "1.10.0"
 7934  10178   
http = "1.0.0"
 7935  10179   
tracing = "0.1.40"
 7936  10180   
wasi = "0.12.1"
 7937  10181   
 7938  10182   
[dependencies.aws-smithy-runtime-api]
 7939  10183   
path = "../aws-smithy-runtime-api"
 7940  10184   
features = ["http-1x"]
 7941  10185   
version = "1.8.5"
 7942  10186   
 7943  10187   
[dependencies.aws-smithy-http]
 7944  10188   
path = "../aws-smithy-http"
 7945         -
version = "0.62.2"
       10189  +
version = "0.62.3"
 7946  10190   
 7947  10191   
[dependencies.aws-smithy-types]
 7948  10192   
path = "../aws-smithy-types"
 7949  10193   
version = "1.3.2"
 7950  10194   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 7951  10195   
index a880648..139e808 100644
 7952         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
       10196  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 7953  10197   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 7954  10198   
edition = "2021"
 7955  10199   
license = "Apache-2.0"
 7956  10200   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7957  10201   
rust-version = "1.86.0"
 7958  10202   
readme = "README.md"
 7959  10203   
[package.metadata.smithy]
 7960  10204   
codegen-version = "ci"
 7961  10205   
[package.metadata.docs.rs]
 7962  10206   
all-features = true
 7963  10207   
targets = ["x86_64-unknown-linux-gnu"]
 7964  10208   
[dependencies.aws-credential-types]
 7965  10209   
path = "../aws-credential-types"
 7966  10210   
version = "1.2.4"
 7967  10211   
 7968  10212   
[dependencies.aws-runtime]
 7969  10213   
path = "../aws-runtime"
 7970  10214   
features = ["event-stream"]
 7971  10215   
version = "1.5.9"
 7972  10216   
 7973  10217   
[dependencies.aws-smithy-async]
 7974  10218   
path = "../aws-smithy-async"
 7975  10219   
version = "1.2.5"
 7976  10220   
 7977  10221   
[dependencies.aws-smithy-eventstream]
 7978  10222   
path = "../aws-smithy-eventstream"
 7979  10223   
version = "0.60.10"
 7980  10224   
 7981  10225   
[dependencies.aws-smithy-http]
 7982  10226   
path = "../aws-smithy-http"
 7983  10227   
features = ["event-stream"]
 7984         -
version = "0.62.2"
       10228  +
version = "0.62.3"
 7985  10229   
 7986  10230   
[dependencies.aws-smithy-json]
 7987  10231   
path = "../aws-smithy-json"
 7988  10232   
version = "0.61.4"
 7989  10233   
 7990  10234   
[dependencies.aws-smithy-runtime]
 7991  10235   
path = "../aws-smithy-runtime"
 7992  10236   
features = ["client"]
 7993  10237   
version = "1.8.5"
 7994  10238   
 7995  10239   
[dependencies.aws-smithy-runtime-api]
 7996  10240   
path = "../aws-smithy-runtime-api"
 7997  10241   
features = ["client", "http-02x"]
 7998  10242   
version = "1.8.5"
 7999  10243   
 8000  10244   
[dependencies.aws-smithy-types]
 8001  10245   
path = "../aws-smithy-types"
 8002  10246   
version = "1.3.2"
 8003  10247   
 8004  10248   
[dependencies.aws-types]
 8005  10249   
path = "../aws-types"
 8006  10250   
version = "1.3.8"
 8007  10251   
 8008  10252   
[dependencies.bytes]
 8009  10253   
version = "1.4.0"
 8010  10254   
 8011  10255   
[dependencies.fastrand]
 8012  10256   
version = "2.0.0"
 8013  10257   
 8014  10258   
[dependencies.http]
 8015  10259   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 8016  10260   
index 415ecc9..667d12b 100644
 8017         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
       10261  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 8018  10262   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 8019  10263   
edition = "2021"
 8020  10264   
license = "Apache-2.0"
 8021  10265   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8022  10266   
rust-version = "1.86.0"
 8023  10267   
readme = "README.md"
 8024  10268   
[package.metadata.smithy]
 8025  10269   
codegen-version = "ci"
 8026  10270   
[package.metadata.docs.rs]
 8027  10271   
all-features = true
 8028  10272   
targets = ["x86_64-unknown-linux-gnu"]
 8029  10273   
[dependencies.aws-credential-types]
 8030  10274   
path = "../aws-credential-types"
 8031  10275   
version = "1.2.4"
 8032  10276   
 8033  10277   
[dependencies.aws-runtime]
 8034  10278   
path = "../aws-runtime"
 8035  10279   
features = ["event-stream"]
 8036  10280   
version = "1.5.9"
 8037  10281   
 8038  10282   
[dependencies.aws-smithy-async]
 8039  10283   
path = "../aws-smithy-async"
 8040  10284   
version = "1.2.5"
 8041  10285   
 8042  10286   
[dependencies.aws-smithy-eventstream]
 8043  10287   
path = "../aws-smithy-eventstream"
 8044  10288   
version = "0.60.10"
 8045  10289   
 8046  10290   
[dependencies.aws-smithy-http]
 8047  10291   
path = "../aws-smithy-http"
 8048  10292   
features = ["event-stream"]
 8049         -
version = "0.62.2"
       10293  +
version = "0.62.3"
 8050  10294   
 8051  10295   
[dependencies.aws-smithy-json]
 8052  10296   
path = "../aws-smithy-json"
 8053  10297   
version = "0.61.4"
 8054  10298   
 8055  10299   
[dependencies.aws-smithy-runtime]
 8056  10300   
path = "../aws-smithy-runtime"
 8057  10301   
features = ["client"]
 8058  10302   
version = "1.8.5"
 8059  10303   
 8060  10304   
[dependencies.aws-smithy-runtime-api]
 8061  10305   
path = "../aws-smithy-runtime-api"
 8062  10306   
features = ["client", "http-02x"]
 8063  10307   
version = "1.8.5"
 8064  10308   
 8065  10309   
[dependencies.aws-smithy-types]
 8066  10310   
path = "../aws-smithy-types"
 8067  10311   
version = "1.3.2"
 8068  10312   
 8069  10313   
[dependencies.aws-types]
 8070  10314   
path = "../aws-types"
 8071  10315   
version = "1.3.8"
 8072  10316   
 8073  10317   
[dependencies.bytes]
 8074  10318   
version = "1.4.0"
 8075  10319   
 8076  10320   
[dependencies.fastrand]
 8077  10321   
version = "2.0.0"
 8078  10322   
 8079  10323   
[dependencies.http]
 8080  10324   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 8081  10325   
index 8871cab..ed88de6 100644
 8082         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
       10326  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 8083  10327   
@@ -1,61 +1,61 @@
 8084  10328   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8085  10329   
[package]
 8086  10330   
name = "aws-sdk-codecatalyst"
 8087  10331   
version = "0.0.0-local"
 8088  10332   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8089  10333   
description = "AWS SDK for Amazon CodeCatalyst"
 8090  10334   
edition = "2021"
 8091  10335   
license = "Apache-2.0"
 8092  10336   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8093  10337   
rust-version = "1.86.0"
 8094  10338   
readme = "README.md"
 8095  10339   
[package.metadata.smithy]
 8096  10340   
codegen-version = "ci"
 8097  10341   
[package.metadata.docs.rs]
 8098  10342   
all-features = true
 8099  10343   
targets = ["x86_64-unknown-linux-gnu"]
 8100  10344   
[dependencies.aws-credential-types]
 8101  10345   
path = "../aws-credential-types"
 8102  10346   
version = "1.2.4"
 8103  10347   
 8104  10348   
[dependencies.aws-runtime]
 8105  10349   
path = "../aws-runtime"
 8106  10350   
version = "1.5.9"
 8107  10351   
 8108  10352   
[dependencies.aws-smithy-async]
 8109  10353   
path = "../aws-smithy-async"
 8110  10354   
version = "1.2.5"
 8111  10355   
 8112  10356   
[dependencies.aws-smithy-http]
 8113  10357   
path = "../aws-smithy-http"
 8114         -
version = "0.62.2"
       10358  +
version = "0.62.3"
 8115  10359   
 8116  10360   
[dependencies.aws-smithy-json]
 8117  10361   
path = "../aws-smithy-json"
 8118  10362   
version = "0.61.4"
 8119  10363   
 8120  10364   
[dependencies.aws-smithy-runtime]
 8121  10365   
path = "../aws-smithy-runtime"
 8122  10366   
features = ["client", "http-auth"]
 8123  10367   
version = "1.8.5"
 8124  10368   
 8125  10369   
[dependencies.aws-smithy-runtime-api]
 8126  10370   
path = "../aws-smithy-runtime-api"
 8127  10371   
features = ["client", "http-02x", "http-auth"]
 8128  10372   
version = "1.8.5"
 8129  10373   
 8130  10374   
[dependencies.aws-smithy-types]
 8131  10375   
path = "../aws-smithy-types"
 8132  10376   
version = "1.3.2"
 8133  10377   
 8134  10378   
[dependencies.aws-types]
 8135  10379   
path = "../aws-types"
 8136  10380   
version = "1.3.8"
 8137  10381   
 8138  10382   
[dependencies.bytes]
 8139  10383   
version = "1.4.0"
 8140  10384   
 8141  10385   
[dependencies.fastrand]
 8142  10386   
version = "2.0.0"
 8143  10387   
 8144  10388   
[dependencies.http]
 8145  10389   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 8146  10390   
index 89573ff..05238af 100644
 8147         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
       10391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 8148  10392   
@@ -1,61 +1,61 @@
 8149  10393   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8150  10394   
[package]
 8151  10395   
name = "aws-sdk-config"
 8152  10396   
version = "0.0.0-local"
 8153  10397   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8154  10398   
description = "AWS SDK for AWS Config"
 8155  10399   
edition = "2021"
 8156  10400   
license = "Apache-2.0"
 8157  10401   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8158  10402   
rust-version = "1.86.0"
 8159  10403   
readme = "README.md"
 8160  10404   
[package.metadata.smithy]
 8161  10405   
codegen-version = "ci"
 8162  10406   
[package.metadata.docs.rs]
 8163  10407   
all-features = true
 8164  10408   
targets = ["x86_64-unknown-linux-gnu"]
 8165  10409   
[dependencies.aws-credential-types]
 8166  10410   
path = "../aws-credential-types"
 8167  10411   
version = "1.2.4"
 8168  10412   
 8169  10413   
[dependencies.aws-runtime]
 8170  10414   
path = "../aws-runtime"
 8171  10415   
version = "1.5.9"
 8172  10416   
 8173  10417   
[dependencies.aws-smithy-async]
 8174  10418   
path = "../aws-smithy-async"
 8175  10419   
version = "1.2.5"
 8176  10420   
 8177  10421   
[dependencies.aws-smithy-http]
 8178  10422   
path = "../aws-smithy-http"
 8179         -
version = "0.62.2"
       10423  +
version = "0.62.3"
 8180  10424   
 8181  10425   
[dependencies.aws-smithy-json]
 8182  10426   
path = "../aws-smithy-json"
 8183  10427   
version = "0.61.4"
 8184  10428   
 8185  10429   
[dependencies.aws-smithy-runtime]
 8186  10430   
path = "../aws-smithy-runtime"
 8187  10431   
features = ["client"]
 8188  10432   
version = "1.8.5"
 8189  10433   
 8190  10434   
[dependencies.aws-smithy-runtime-api]
 8191  10435   
path = "../aws-smithy-runtime-api"
 8192  10436   
features = ["client", "http-02x"]
 8193  10437   
version = "1.8.5"
 8194  10438   
 8195  10439   
[dependencies.aws-smithy-types]
 8196  10440   
path = "../aws-smithy-types"
 8197  10441   
version = "1.3.2"
 8198  10442   
 8199  10443   
[dependencies.aws-types]
 8200  10444   
path = "../aws-types"
 8201  10445   
version = "1.3.8"
 8202  10446   
 8203  10447   
[dependencies.bytes]
 8204  10448   
version = "1.4.0"
 8205  10449   
 8206  10450   
[dependencies.fastrand]
 8207  10451   
version = "2.0.0"
 8208  10452   
 8209  10453   
[dependencies.http]
 8210  10454   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 8211  10455   
index d397c58..2c1062b 100644
 8212         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
       10456  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 8213  10457   
@@ -1,61 +1,61 @@
 8214  10458   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8215  10459   
[package]
 8216  10460   
name = "aws-sdk-dynamodb"
 8217  10461   
version = "0.0.0-local"
 8218  10462   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8219  10463   
description = "AWS SDK for Amazon DynamoDB"
 8220  10464   
edition = "2021"
 8221  10465   
license = "Apache-2.0"
 8222  10466   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8223  10467   
rust-version = "1.86.0"
 8224  10468   
readme = "README.md"
 8225  10469   
[package.metadata.smithy]
 8226  10470   
codegen-version = "ci"
 8227  10471   
[package.metadata.docs.rs]
 8228  10472   
all-features = true
 8229  10473   
targets = ["x86_64-unknown-linux-gnu"]
 8230  10474   
[dependencies.aws-credential-types]
 8231  10475   
path = "../aws-credential-types"
 8232  10476   
version = "1.2.4"
 8233  10477   
 8234  10478   
[dependencies.aws-runtime]
 8235  10479   
path = "../aws-runtime"
 8236  10480   
version = "1.5.9"
 8237  10481   
 8238  10482   
[dependencies.aws-smithy-async]
 8239  10483   
path = "../aws-smithy-async"
 8240  10484   
version = "1.2.5"
 8241  10485   
 8242  10486   
[dependencies.aws-smithy-http]
 8243  10487   
path = "../aws-smithy-http"
 8244         -
version = "0.62.2"
       10488  +
version = "0.62.3"
 8245  10489   
 8246  10490   
[dependencies.aws-smithy-json]
 8247  10491   
path = "../aws-smithy-json"
 8248  10492   
version = "0.61.4"
 8249  10493   
 8250  10494   
[dependencies.aws-smithy-runtime]
 8251  10495   
path = "../aws-smithy-runtime"
 8252  10496   
features = ["client"]
 8253  10497   
version = "1.8.5"
 8254  10498   
 8255  10499   
[dependencies.aws-smithy-runtime-api]
 8256  10500   
path = "../aws-smithy-runtime-api"
 8257  10501   
features = ["client", "http-02x"]
 8258  10502   
version = "1.8.5"
 8259  10503   
 8260  10504   
[dependencies.aws-smithy-types]
 8261  10505   
path = "../aws-smithy-types"
 8262  10506   
version = "1.3.2"
 8263  10507   
 8264  10508   
[dependencies.aws-types]
 8265  10509   
path = "../aws-types"
 8266  10510   
version = "1.3.8"
 8267  10511   
 8268  10512   
[dependencies.bytes]
 8269  10513   
version = "1.4.0"
 8270  10514   
 8271  10515   
[dependencies.fastrand]
 8272  10516   
version = "2.0.0"
 8273  10517   
 8274  10518   
[dependencies.http]
 8275  10519   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 8276  10520   
index c0ba315..46168af 100644
 8277         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
       10521  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 8278  10522   
@@ -1,61 +1,61 @@
 8279  10523   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8280  10524   
[package]
 8281  10525   
name = "aws-sdk-ec2"
 8282  10526   
version = "0.0.0-local"
 8283  10527   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8284  10528   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 8285  10529   
edition = "2021"
 8286  10530   
license = "Apache-2.0"
 8287  10531   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8288  10532   
rust-version = "1.86.0"
 8289  10533   
readme = "README.md"
 8290  10534   
[package.metadata.smithy]
 8291  10535   
codegen-version = "ci"
 8292  10536   
[package.metadata.docs.rs]
 8293  10537   
all-features = true
 8294  10538   
targets = ["x86_64-unknown-linux-gnu"]
 8295  10539   
[dependencies.aws-credential-types]
 8296  10540   
path = "../aws-credential-types"
 8297  10541   
version = "1.2.4"
 8298  10542   
 8299  10543   
[dependencies.aws-runtime]
 8300  10544   
path = "../aws-runtime"
 8301  10545   
version = "1.5.9"
 8302  10546   
 8303  10547   
[dependencies.aws-smithy-async]
 8304  10548   
path = "../aws-smithy-async"
 8305  10549   
version = "1.2.5"
 8306  10550   
 8307  10551   
[dependencies.aws-smithy-http]
 8308  10552   
path = "../aws-smithy-http"
 8309         -
version = "0.62.2"
       10553  +
version = "0.62.3"
 8310  10554   
 8311  10555   
[dependencies.aws-smithy-json]
 8312  10556   
path = "../aws-smithy-json"
 8313  10557   
version = "0.61.4"
 8314  10558   
 8315  10559   
[dependencies.aws-smithy-query]
 8316  10560   
path = "../aws-smithy-query"
 8317  10561   
version = "0.60.7"
 8318  10562   
 8319  10563   
[dependencies.aws-smithy-runtime]
 8320  10564   
path = "../aws-smithy-runtime"
 8321  10565   
features = ["client"]
 8322  10566   
version = "1.8.5"
 8323  10567   
 8324  10568   
[dependencies.aws-smithy-runtime-api]
 8325  10569   
path = "../aws-smithy-runtime-api"
 8326  10570   
features = ["client", "http-02x"]
 8327  10571   
version = "1.8.5"
 8328  10572   
 8329  10573   
[dependencies.aws-smithy-types]
 8330  10574   
path = "../aws-smithy-types"
 8331  10575   
version = "1.3.2"
 8332  10576   
 8333  10577   
[dependencies.aws-smithy-xml]
 8334  10578   
path = "../aws-smithy-xml"
 8335  10579   
version = "0.60.10"
 8336  10580   
 8337  10581   
[dependencies.aws-types]
 8338  10582   
path = "../aws-types"
 8339  10583   
version = "1.3.8"
 8340  10584   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 8341  10585   
index 4474d17..095d40e 100644
 8342         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
       10586  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 8343  10587   
@@ -1,61 +1,61 @@
 8344  10588   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8345  10589   
[package]
 8346  10590   
name = "aws-sdk-ecs"
 8347  10591   
version = "0.0.0-local"
 8348  10592   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8349  10593   
description = "AWS SDK for Amazon EC2 Container Service"
 8350  10594   
edition = "2021"
 8351  10595   
license = "Apache-2.0"
 8352  10596   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8353  10597   
rust-version = "1.86.0"
 8354  10598   
readme = "README.md"
 8355  10599   
[package.metadata.smithy]
 8356  10600   
codegen-version = "ci"
 8357  10601   
[package.metadata.docs.rs]
 8358  10602   
all-features = true
 8359  10603   
targets = ["x86_64-unknown-linux-gnu"]
 8360  10604   
[dependencies.aws-credential-types]
 8361  10605   
path = "../aws-credential-types"
 8362  10606   
version = "1.2.4"
 8363  10607   
 8364  10608   
[dependencies.aws-runtime]
 8365  10609   
path = "../aws-runtime"
 8366  10610   
version = "1.5.9"
 8367  10611   
 8368  10612   
[dependencies.aws-smithy-async]
 8369  10613   
path = "../aws-smithy-async"
 8370  10614   
version = "1.2.5"
 8371  10615   
 8372  10616   
[dependencies.aws-smithy-http]
 8373  10617   
path = "../aws-smithy-http"
 8374         -
version = "0.62.2"
       10618  +
version = "0.62.3"
 8375  10619   
 8376  10620   
[dependencies.aws-smithy-json]
 8377  10621   
path = "../aws-smithy-json"
 8378  10622   
version = "0.61.4"
 8379  10623   
 8380  10624   
[dependencies.aws-smithy-runtime]
 8381  10625   
path = "../aws-smithy-runtime"
 8382  10626   
features = ["client"]
 8383  10627   
version = "1.8.5"
 8384  10628   
 8385  10629   
[dependencies.aws-smithy-runtime-api]
 8386  10630   
path = "../aws-smithy-runtime-api"
 8387  10631   
features = ["client", "http-02x"]
 8388  10632   
version = "1.8.5"
 8389  10633   
 8390  10634   
[dependencies.aws-smithy-types]
 8391  10635   
path = "../aws-smithy-types"
 8392  10636   
version = "1.3.2"
 8393  10637   
 8394  10638   
[dependencies.aws-types]
 8395  10639   
path = "../aws-types"
 8396  10640   
version = "1.3.8"
 8397  10641   
 8398  10642   
[dependencies.bytes]
 8399  10643   
version = "1.4.0"
 8400  10644   
 8401  10645   
[dependencies.fastrand]
 8402  10646   
version = "2.0.0"
 8403  10647   
 8404  10648   
[dependencies.http]
 8405  10649   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 8406  10650   
index 15b1d77..16d7d89 100644
 8407         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
       10651  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 8408  10652   
@@ -1,65 +1,65 @@
 8409  10653   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8410  10654   
[package]
 8411  10655   
name = "aws-sdk-glacier"
 8412  10656   
version = "0.0.0-local"
 8413  10657   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8414  10658   
description = "AWS SDK for Amazon Glacier"
 8415  10659   
edition = "2021"
 8416  10660   
license = "Apache-2.0"
 8417  10661   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8418  10662   
rust-version = "1.86.0"
 8419  10663   
readme = "README.md"
 8420  10664   
[package.metadata.smithy]
 8421  10665   
codegen-version = "ci"
 8422  10666   
[package.metadata.docs.rs]
 8423  10667   
all-features = true
 8424  10668   
targets = ["x86_64-unknown-linux-gnu"]
 8425  10669   
[dependencies.aws-credential-types]
 8426  10670   
path = "../aws-credential-types"
 8427  10671   
version = "1.2.4"
 8428  10672   
 8429  10673   
[dependencies.aws-runtime]
 8430  10674   
path = "../aws-runtime"
 8431  10675   
version = "1.5.9"
 8432  10676   
 8433  10677   
[dependencies.aws-sigv4]
 8434  10678   
path = "../aws-sigv4"
 8435         -
version = "1.3.3"
       10679  +
version = "1.3.4"
 8436  10680   
 8437  10681   
[dependencies.aws-smithy-async]
 8438  10682   
path = "../aws-smithy-async"
 8439  10683   
version = "1.2.5"
 8440  10684   
 8441  10685   
[dependencies.aws-smithy-http]
 8442  10686   
path = "../aws-smithy-http"
 8443         -
version = "0.62.2"
       10687  +
version = "0.62.3"
 8444  10688   
 8445  10689   
[dependencies.aws-smithy-json]
 8446  10690   
path = "../aws-smithy-json"
 8447  10691   
version = "0.61.4"
 8448  10692   
 8449  10693   
[dependencies.aws-smithy-runtime]
 8450  10694   
path = "../aws-smithy-runtime"
 8451  10695   
features = ["client"]
 8452  10696   
version = "1.8.5"
 8453  10697   
 8454  10698   
[dependencies.aws-smithy-runtime-api]
 8455  10699   
path = "../aws-smithy-runtime-api"
 8456  10700   
features = ["client", "http-02x"]
 8457  10701   
version = "1.8.5"
 8458  10702   
 8459  10703   
[dependencies.aws-smithy-types]
 8460  10704   
path = "../aws-smithy-types"
 8461  10705   
version = "1.3.2"
 8462  10706   
 8463  10707   
[dependencies.aws-types]
 8464  10708   
path = "../aws-types"
 8465  10709   
version = "1.3.8"
 8466  10710   
 8467  10711   
[dependencies.bytes]
 8468  10712   
version = "1.4.0"
 8469  10713   
 8470  10714   
[dependencies.fastrand]
 8471  10715   
version = "2.0.0"
 8472  10716   
 8473  10717   
[dependencies.hex]
 8474  10718   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 8475  10719   
index d718a3a..65e6f24 100644
 8476         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
       10720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 8477  10721   
@@ -1,61 +1,61 @@
 8478  10722   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8479  10723   
[package]
 8480  10724   
name = "aws-sdk-iam"
 8481  10725   
version = "0.0.0-local"
 8482  10726   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8483  10727   
description = "AWS SDK for AWS Identity and Access Management"
 8484  10728   
edition = "2021"
 8485  10729   
license = "Apache-2.0"
 8486  10730   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8487  10731   
rust-version = "1.86.0"
 8488  10732   
readme = "README.md"
 8489  10733   
[package.metadata.smithy]
 8490  10734   
codegen-version = "ci"
 8491  10735   
[package.metadata.docs.rs]
 8492  10736   
all-features = true
 8493  10737   
targets = ["x86_64-unknown-linux-gnu"]
 8494  10738   
[dependencies.aws-credential-types]
 8495  10739   
path = "../aws-credential-types"
 8496  10740   
version = "1.2.4"
 8497  10741   
 8498  10742   
[dependencies.aws-runtime]
 8499  10743   
path = "../aws-runtime"
 8500  10744   
version = "1.5.9"
 8501  10745   
 8502  10746   
[dependencies.aws-smithy-async]
 8503  10747   
path = "../aws-smithy-async"
 8504  10748   
version = "1.2.5"
 8505  10749   
 8506  10750   
[dependencies.aws-smithy-http]
 8507  10751   
path = "../aws-smithy-http"
 8508         -
version = "0.62.2"
       10752  +
version = "0.62.3"
 8509  10753   
 8510  10754   
[dependencies.aws-smithy-json]
 8511  10755   
path = "../aws-smithy-json"
 8512  10756   
version = "0.61.4"
 8513  10757   
 8514  10758   
[dependencies.aws-smithy-query]
 8515  10759   
path = "../aws-smithy-query"
 8516  10760   
version = "0.60.7"
 8517  10761   
 8518  10762   
[dependencies.aws-smithy-runtime]
 8519  10763   
path = "../aws-smithy-runtime"
 8520  10764   
features = ["client"]
 8521  10765   
version = "1.8.5"
 8522  10766   
 8523  10767   
[dependencies.aws-smithy-runtime-api]
 8524  10768   
path = "../aws-smithy-runtime-api"
 8525  10769   
features = ["client", "http-02x"]
 8526  10770   
version = "1.8.5"
 8527  10771   
 8528  10772   
[dependencies.aws-smithy-types]
 8529  10773   
path = "../aws-smithy-types"
 8530  10774   
version = "1.3.2"
 8531  10775   
 8532  10776   
[dependencies.aws-smithy-xml]
 8533  10777   
path = "../aws-smithy-xml"
 8534  10778   
version = "0.60.10"
 8535  10779   
 8536  10780   
[dependencies.aws-types]
 8537  10781   
path = "../aws-types"
 8538  10782   
version = "1.3.8"
 8539  10783   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 8540  10784   
index 0ed4302..3d828a5 100644
 8541         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
       10785  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 8542  10786   
@@ -1,61 +1,61 @@
 8543  10787   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8544  10788   
[package]
 8545  10789   
name = "aws-sdk-kms"
 8546  10790   
version = "0.0.0-local"
 8547  10791   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8548  10792   
description = "AWS SDK for AWS Key Management Service"
 8549  10793   
edition = "2021"
 8550  10794   
license = "Apache-2.0"
 8551  10795   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8552  10796   
rust-version = "1.86.0"
 8553  10797   
readme = "README.md"
 8554  10798   
[package.metadata.smithy]
 8555  10799   
codegen-version = "ci"
 8556  10800   
[package.metadata.docs.rs]
 8557  10801   
all-features = true
 8558  10802   
targets = ["x86_64-unknown-linux-gnu"]
 8559  10803   
[dependencies.aws-credential-types]
 8560  10804   
path = "../aws-credential-types"
 8561  10805   
version = "1.2.4"
 8562  10806   
 8563  10807   
[dependencies.aws-runtime]
 8564  10808   
path = "../aws-runtime"
 8565  10809   
version = "1.5.9"
 8566  10810   
 8567  10811   
[dependencies.aws-smithy-async]
 8568  10812   
path = "../aws-smithy-async"
 8569  10813   
version = "1.2.5"
 8570  10814   
 8571  10815   
[dependencies.aws-smithy-http]
 8572  10816   
path = "../aws-smithy-http"
 8573         -
version = "0.62.2"
       10817  +
version = "0.62.3"
 8574  10818   
 8575  10819   
[dependencies.aws-smithy-json]
 8576  10820   
path = "../aws-smithy-json"
 8577  10821   
version = "0.61.4"
 8578  10822   
 8579  10823   
[dependencies.aws-smithy-runtime]
 8580  10824   
path = "../aws-smithy-runtime"
 8581  10825   
features = ["client"]
 8582  10826   
version = "1.8.5"
 8583  10827   
 8584  10828   
[dependencies.aws-smithy-runtime-api]
 8585  10829   
path = "../aws-smithy-runtime-api"
 8586  10830   
features = ["client", "http-02x"]
 8587  10831   
version = "1.8.5"
 8588  10832   
 8589  10833   
[dependencies.aws-smithy-types]
 8590  10834   
path = "../aws-smithy-types"
 8591  10835   
version = "1.3.2"
 8592  10836   
 8593  10837   
[dependencies.aws-types]
 8594  10838   
path = "../aws-types"
 8595  10839   
version = "1.3.8"
 8596  10840   
 8597  10841   
[dependencies.bytes]
 8598  10842   
version = "1.4.0"
 8599  10843   
 8600  10844   
[dependencies.fastrand]
 8601  10845   
version = "2.0.0"
 8602  10846   
 8603  10847   
[dependencies.http]
 8604  10848   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 8605  10849   
index 6518dfc..6b94752 100644
 8606         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
       10850  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 8607  10851   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 8608  10852   
edition = "2021"
 8609  10853   
license = "Apache-2.0"
 8610  10854   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8611  10855   
rust-version = "1.86.0"
 8612  10856   
readme = "README.md"
 8613  10857   
[package.metadata.smithy]
 8614  10858   
codegen-version = "ci"
 8615  10859   
[package.metadata.docs.rs]
 8616  10860   
all-features = true
 8617  10861   
targets = ["x86_64-unknown-linux-gnu"]
 8618  10862   
[dependencies.aws-credential-types]
 8619  10863   
path = "../aws-credential-types"
 8620  10864   
version = "1.2.4"
 8621  10865   
 8622  10866   
[dependencies.aws-runtime]
 8623  10867   
path = "../aws-runtime"
 8624  10868   
features = ["event-stream"]
 8625  10869   
version = "1.5.9"
 8626  10870   
 8627  10871   
[dependencies.aws-smithy-async]
 8628  10872   
path = "../aws-smithy-async"
 8629  10873   
version = "1.2.5"
 8630  10874   
 8631  10875   
[dependencies.aws-smithy-eventstream]
 8632  10876   
path = "../aws-smithy-eventstream"
 8633  10877   
version = "0.60.10"
 8634  10878   
 8635  10879   
[dependencies.aws-smithy-http]
 8636  10880   
path = "../aws-smithy-http"
 8637  10881   
features = ["event-stream"]
 8638         -
version = "0.62.2"
       10882  +
version = "0.62.3"
 8639  10883   
 8640  10884   
[dependencies.aws-smithy-json]
 8641  10885   
path = "../aws-smithy-json"
 8642  10886   
version = "0.61.4"
 8643  10887   
 8644  10888   
[dependencies.aws-smithy-runtime]
 8645  10889   
path = "../aws-smithy-runtime"
 8646  10890   
features = ["client"]
 8647  10891   
version = "1.8.5"
 8648  10892   
 8649  10893   
[dependencies.aws-smithy-runtime-api]
 8650  10894   
path = "../aws-smithy-runtime-api"
 8651  10895   
features = ["client", "http-02x"]
 8652  10896   
version = "1.8.5"
 8653  10897   
 8654  10898   
[dependencies.aws-smithy-types]
 8655  10899   
path = "../aws-smithy-types"
 8656  10900   
version = "1.3.2"
 8657  10901   
 8658  10902   
[dependencies.aws-types]
 8659  10903   
path = "../aws-types"
 8660  10904   
version = "1.3.8"
 8661  10905   
 8662  10906   
[dependencies.bytes]
 8663  10907   
version = "1.4.0"
 8664  10908   
 8665  10909   
[dependencies.fastrand]
 8666  10910   
version = "2.0.0"
 8667  10911   
 8668  10912   
[dependencies.http]
 8669  10913   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 8670  10914   
index dabb0e0..34cbc15 100644
 8671         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
       10915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 8672  10916   
@@ -1,65 +1,65 @@
 8673  10917   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8674  10918   
[package]
 8675  10919   
name = "aws-sdk-polly"
 8676  10920   
version = "0.0.0-local"
 8677  10921   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8678  10922   
description = "AWS SDK for Amazon Polly"
 8679  10923   
edition = "2021"
 8680  10924   
license = "Apache-2.0"
 8681  10925   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8682  10926   
rust-version = "1.86.0"
 8683  10927   
readme = "README.md"
 8684  10928   
[package.metadata.smithy]
 8685  10929   
codegen-version = "ci"
 8686  10930   
[package.metadata.docs.rs]
 8687  10931   
all-features = true
 8688  10932   
targets = ["x86_64-unknown-linux-gnu"]
 8689  10933   
[dependencies.aws-credential-types]
 8690  10934   
path = "../aws-credential-types"
 8691  10935   
version = "1.2.4"
 8692  10936   
 8693  10937   
[dependencies.aws-runtime]
 8694  10938   
path = "../aws-runtime"
 8695  10939   
version = "1.5.9"
 8696  10940   
 8697  10941   
[dependencies.aws-sigv4]
 8698  10942   
path = "../aws-sigv4"
 8699         -
version = "1.3.3"
       10943  +
version = "1.3.4"
 8700  10944   
 8701  10945   
[dependencies.aws-smithy-async]
 8702  10946   
path = "../aws-smithy-async"
 8703  10947   
version = "1.2.5"
 8704  10948   
 8705  10949   
[dependencies.aws-smithy-http]
 8706  10950   
path = "../aws-smithy-http"
 8707         -
version = "0.62.2"
       10951  +
version = "0.62.3"
 8708  10952   
 8709  10953   
[dependencies.aws-smithy-json]
 8710  10954   
path = "../aws-smithy-json"
 8711  10955   
version = "0.61.4"
 8712  10956   
 8713  10957   
[dependencies.aws-smithy-runtime]
 8714  10958   
path = "../aws-smithy-runtime"
 8715  10959   
features = ["client"]
 8716  10960   
version = "1.8.5"
 8717  10961   
 8718  10962   
[dependencies.aws-smithy-runtime-api]
 8719  10963   
path = "../aws-smithy-runtime-api"
 8720  10964   
features = ["client", "http-02x"]
 8721  10965   
version = "1.8.5"
 8722  10966   
 8723  10967   
[dependencies.aws-smithy-types]
 8724  10968   
path = "../aws-smithy-types"
 8725  10969   
version = "1.3.2"
 8726  10970   
 8727  10971   
[dependencies.aws-types]
 8728  10972   
path = "../aws-types"
 8729  10973   
version = "1.3.8"
 8730  10974   
 8731  10975   
[dependencies.bytes]
 8732  10976   
version = "1.4.0"
 8733  10977   
 8734  10978   
[dependencies.fastrand]
 8735  10979   
version = "2.0.0"
 8736  10980   
 8737  10981   
[dependencies.http]
 8738  10982   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 8739  10983   
index a884716..f3d8713 100644
 8740         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
       10984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 8741  10985   
@@ -1,61 +1,61 @@
 8742  10986   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8743  10987   
[package]
 8744  10988   
name = "aws-sdk-qldbsession"
 8745  10989   
version = "0.0.0-local"
 8746  10990   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8747  10991   
description = "AWS SDK for Amazon QLDB Session"
 8748  10992   
edition = "2021"
 8749  10993   
license = "Apache-2.0"
 8750  10994   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8751  10995   
rust-version = "1.86.0"
 8752  10996   
readme = "README.md"
 8753  10997   
[package.metadata.smithy]
 8754  10998   
codegen-version = "ci"
 8755  10999   
[package.metadata.docs.rs]
 8756  11000   
all-features = true
 8757  11001   
targets = ["x86_64-unknown-linux-gnu"]
 8758  11002   
[dependencies.aws-credential-types]
 8759  11003   
path = "../aws-credential-types"
 8760  11004   
version = "1.2.4"
 8761  11005   
 8762  11006   
[dependencies.aws-runtime]
 8763  11007   
path = "../aws-runtime"
 8764  11008   
version = "1.5.9"
 8765  11009   
 8766  11010   
[dependencies.aws-smithy-async]
 8767  11011   
path = "../aws-smithy-async"
 8768  11012   
version = "1.2.5"
 8769  11013   
 8770  11014   
[dependencies.aws-smithy-http]
 8771  11015   
path = "../aws-smithy-http"
 8772         -
version = "0.62.2"
       11016  +
version = "0.62.3"
 8773  11017   
 8774  11018   
[dependencies.aws-smithy-json]
 8775  11019   
path = "../aws-smithy-json"
 8776  11020   
version = "0.61.4"
 8777  11021   
 8778  11022   
[dependencies.aws-smithy-runtime]
 8779  11023   
path = "../aws-smithy-runtime"
 8780  11024   
features = ["client"]
 8781  11025   
version = "1.8.5"
 8782  11026   
 8783  11027   
[dependencies.aws-smithy-runtime-api]
 8784  11028   
path = "../aws-smithy-runtime-api"
 8785  11029   
features = ["client", "http-02x"]
 8786  11030   
version = "1.8.5"
 8787  11031   
 8788  11032   
[dependencies.aws-smithy-types]
 8789  11033   
path = "../aws-smithy-types"
 8790  11034   
version = "1.3.2"
 8791  11035   
 8792  11036   
[dependencies.aws-types]
 8793  11037   
path = "../aws-types"
 8794  11038   
version = "1.3.8"
 8795  11039   
 8796  11040   
[dependencies.bytes]
 8797  11041   
version = "1.4.0"
 8798  11042   
 8799  11043   
[dependencies.fastrand]
 8800  11044   
version = "2.0.0"
 8801  11045   
 8802  11046   
[dependencies.http]
 8803  11047   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 8804  11048   
index 32a7dc9..a2c752d 100644
 8805         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
       11049  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 8806  11050   
@@ -1,61 +1,61 @@
 8807  11051   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8808  11052   
[package]
 8809  11053   
name = "aws-sdk-route53"
 8810  11054   
version = "0.0.0-local"
 8811  11055   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8812  11056   
description = "AWS SDK for Amazon Route 53"
 8813  11057   
edition = "2021"
 8814  11058   
license = "Apache-2.0"
 8815  11059   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8816  11060   
rust-version = "1.86.0"
 8817  11061   
readme = "README.md"
 8818  11062   
[package.metadata.smithy]
 8819  11063   
codegen-version = "ci"
 8820  11064   
[package.metadata.docs.rs]
 8821  11065   
all-features = true
 8822  11066   
targets = ["x86_64-unknown-linux-gnu"]
 8823  11067   
[dependencies.aws-credential-types]
 8824  11068   
path = "../aws-credential-types"
 8825  11069   
version = "1.2.4"
 8826  11070   
 8827  11071   
[dependencies.aws-runtime]
 8828  11072   
path = "../aws-runtime"
 8829  11073   
version = "1.5.9"
 8830  11074   
 8831  11075   
[dependencies.aws-smithy-async]
 8832  11076   
path = "../aws-smithy-async"
 8833  11077   
version = "1.2.5"
 8834  11078   
 8835  11079   
[dependencies.aws-smithy-http]
 8836  11080   
path = "../aws-smithy-http"
 8837         -
version = "0.62.2"
       11081  +
version = "0.62.3"
 8838  11082   
 8839  11083   
[dependencies.aws-smithy-json]
 8840  11084   
path = "../aws-smithy-json"
 8841  11085   
version = "0.61.4"
 8842  11086   
 8843  11087   
[dependencies.aws-smithy-runtime]
 8844  11088   
path = "../aws-smithy-runtime"
 8845  11089   
features = ["client"]
 8846  11090   
version = "1.8.5"
 8847  11091   
 8848  11092   
[dependencies.aws-smithy-runtime-api]
 8849  11093   
path = "../aws-smithy-runtime-api"
 8850  11094   
features = ["client", "http-02x"]
 8851  11095   
version = "1.8.5"
 8852  11096   
 8853  11097   
[dependencies.aws-smithy-types]
 8854  11098   
path = "../aws-smithy-types"
 8855  11099   
version = "1.3.2"
 8856  11100   
 8857  11101   
[dependencies.aws-smithy-xml]
 8858  11102   
path = "../aws-smithy-xml"
 8859  11103   
version = "0.60.10"
 8860  11104   
 8861  11105   
[dependencies.aws-types]
 8862  11106   
path = "../aws-types"
 8863  11107   
version = "1.3.8"
 8864  11108   
 8865  11109   
[dependencies.fastrand]
 8866  11110   
version = "2.0.0"
 8867  11111   
 8868  11112   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 8869  11113   
index f65e261..2f6bec0 100644
 8870         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
       11114  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 8871  11115   
@@ -1,75 +1,75 @@
 8872  11116   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8873  11117   
[package]
 8874  11118   
name = "aws-sdk-s3"
 8875  11119   
version = "0.0.0-local"
 8876  11120   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8877  11121   
description = "AWS SDK for Amazon Simple Storage Service"
 8878  11122   
edition = "2021"
 8879  11123   
license = "Apache-2.0"
 8880  11124   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8881  11125   
rust-version = "1.86.0"
 8882  11126   
readme = "README.md"
 8883  11127   
[package.metadata.smithy]
 8884  11128   
codegen-version = "ci"
 8885  11129   
[package.metadata.docs.rs]
 8886  11130   
all-features = true
 8887  11131   
targets = ["x86_64-unknown-linux-gnu"]
 8888  11132   
[dependencies.aws-credential-types]
 8889  11133   
path = "../aws-credential-types"
 8890  11134   
version = "1.2.4"
 8891  11135   
 8892  11136   
[dependencies.aws-runtime]
 8893  11137   
path = "../aws-runtime"
 8894  11138   
features = ["event-stream", "http-02x"]
 8895  11139   
version = "1.5.9"
 8896  11140   
 8897  11141   
[dependencies.aws-sigv4]
 8898  11142   
path = "../aws-sigv4"
 8899         -
version = "1.3.3"
       11143  +
version = "1.3.4"
 8900  11144   
 8901  11145   
[dependencies.aws-smithy-async]
 8902  11146   
path = "../aws-smithy-async"
 8903  11147   
version = "1.2.5"
 8904  11148   
 8905  11149   
[dependencies.aws-smithy-checksums]
 8906  11150   
path = "../aws-smithy-checksums"
 8907  11151   
version = "0.63.5"
 8908  11152   
 8909  11153   
[dependencies.aws-smithy-eventstream]
 8910  11154   
path = "../aws-smithy-eventstream"
 8911  11155   
version = "0.60.10"
 8912  11156   
 8913  11157   
[dependencies.aws-smithy-http]
 8914  11158   
path = "../aws-smithy-http"
 8915  11159   
features = ["event-stream"]
 8916         -
version = "0.62.2"
       11160  +
version = "0.62.3"
 8917  11161   
 8918  11162   
[dependencies.aws-smithy-json]
 8919  11163   
path = "../aws-smithy-json"
 8920  11164   
version = "0.61.4"
 8921  11165   
 8922  11166   
[dependencies.aws-smithy-runtime]
 8923  11167   
path = "../aws-smithy-runtime"
 8924  11168   
features = ["client"]
 8925  11169   
version = "1.8.5"
 8926  11170   
 8927  11171   
[dependencies.aws-smithy-runtime-api]
 8928  11172   
path = "../aws-smithy-runtime-api"
 8929  11173   
features = ["client", "http-02x"]
 8930  11174   
version = "1.8.5"
 8931  11175   
 8932  11176   
[dependencies.aws-smithy-types]
 8933  11177   
path = "../aws-smithy-types"
 8934  11178   
version = "1.3.2"
 8935  11179   
 8936  11180   
[dependencies.aws-smithy-xml]
 8937  11181   
path = "../aws-smithy-xml"
 8938  11182   
version = "0.60.10"
 8939  11183   
 8940  11184   
[dependencies.aws-types]
 8941  11185   
path = "../aws-types"
 8942  11186   
version = "1.3.8"
 8943  11187   
 8944  11188   
[dependencies.bytes]
 8945  11189   
version = "1.4.0"
 8946  11190   
 8947  11191   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 8948  11192   
index b4d1cdd..861c0cc 100644
 8949         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
       11193  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 8950  11194   
@@ -1,61 +1,61 @@
 8951  11195   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8952  11196   
[package]
 8953  11197   
name = "aws-sdk-s3control"
 8954  11198   
version = "0.0.0-local"
 8955  11199   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8956  11200   
description = "AWS SDK for AWS S3 Control"
 8957  11201   
edition = "2021"
 8958  11202   
license = "Apache-2.0"
 8959  11203   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8960  11204   
rust-version = "1.86.0"
 8961  11205   
readme = "README.md"
 8962  11206   
[package.metadata.smithy]
 8963  11207   
codegen-version = "ci"
 8964  11208   
[package.metadata.docs.rs]
 8965  11209   
all-features = true
 8966  11210   
targets = ["x86_64-unknown-linux-gnu"]
 8967  11211   
[dependencies.aws-credential-types]
 8968  11212   
path = "../aws-credential-types"
 8969  11213   
version = "1.2.4"
 8970  11214   
 8971  11215   
[dependencies.aws-runtime]
 8972  11216   
path = "../aws-runtime"
 8973  11217   
version = "1.5.9"
 8974  11218   
 8975  11219   
[dependencies.aws-smithy-async]
 8976  11220   
path = "../aws-smithy-async"
 8977  11221   
version = "1.2.5"
 8978  11222   
 8979  11223   
[dependencies.aws-smithy-http]
 8980  11224   
path = "../aws-smithy-http"
 8981         -
version = "0.62.2"
       11225  +
version = "0.62.3"
 8982  11226   
 8983  11227   
[dependencies.aws-smithy-json]
 8984  11228   
path = "../aws-smithy-json"
 8985  11229   
version = "0.61.4"
 8986  11230   
 8987  11231   
[dependencies.aws-smithy-runtime]
 8988  11232   
path = "../aws-smithy-runtime"
 8989  11233   
features = ["client"]
 8990  11234   
version = "1.8.5"
 8991  11235   
 8992  11236   
[dependencies.aws-smithy-runtime-api]
 8993  11237   
path = "../aws-smithy-runtime-api"
 8994  11238   
features = ["client", "http-02x"]
 8995  11239   
version = "1.8.5"
 8996  11240   
 8997  11241   
[dependencies.aws-smithy-types]
 8998  11242   
path = "../aws-smithy-types"
 8999  11243   
version = "1.3.2"
 9000  11244   
 9001  11245   
[dependencies.aws-smithy-xml]
 9002  11246   
path = "../aws-smithy-xml"
 9003  11247   
version = "0.60.10"
 9004  11248   
 9005  11249   
[dependencies.aws-types]
 9006  11250   
path = "../aws-types"
 9007  11251   
version = "1.3.8"
 9008  11252   
 9009  11253   
[dependencies.fastrand]
 9010  11254   
version = "2.0.0"
 9011  11255   
 9012  11256   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 9013  11257   
index 2cde182..fc367f4 100644
 9014         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
       11258  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 9015  11259   
@@ -1,61 +1,61 @@
 9016  11260   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9017  11261   
[package]
 9018  11262   
name = "aws-sdk-sso"
 9019  11263   
version = "0.0.0-local"
 9020  11264   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9021  11265   
description = "AWS SDK for AWS Single Sign-On"
 9022  11266   
edition = "2021"
 9023  11267   
license = "Apache-2.0"
 9024  11268   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9025  11269   
rust-version = "1.86.0"
 9026  11270   
readme = "README.md"
 9027  11271   
[package.metadata.smithy]
 9028  11272   
codegen-version = "ci"
 9029  11273   
[package.metadata.docs.rs]
 9030  11274   
all-features = true
 9031  11275   
targets = ["x86_64-unknown-linux-gnu"]
 9032  11276   
[dependencies.aws-credential-types]
 9033  11277   
path = "../aws-credential-types"
 9034  11278   
version = "1.2.4"
 9035  11279   
 9036  11280   
[dependencies.aws-runtime]
 9037  11281   
path = "../aws-runtime"
 9038  11282   
version = "1.5.9"
 9039  11283   
 9040  11284   
[dependencies.aws-smithy-async]
 9041  11285   
path = "../aws-smithy-async"
 9042  11286   
version = "1.2.5"
 9043  11287   
 9044  11288   
[dependencies.aws-smithy-http]
 9045  11289   
path = "../aws-smithy-http"
 9046         -
version = "0.62.2"
       11290  +
version = "0.62.3"
 9047  11291   
 9048  11292   
[dependencies.aws-smithy-json]
 9049  11293   
path = "../aws-smithy-json"
 9050  11294   
version = "0.61.4"
 9051  11295   
 9052  11296   
[dependencies.aws-smithy-runtime]
 9053  11297   
path = "../aws-smithy-runtime"
 9054  11298   
features = ["client"]
 9055  11299   
version = "1.8.5"
 9056  11300   
 9057  11301   
[dependencies.aws-smithy-runtime-api]
 9058  11302   
path = "../aws-smithy-runtime-api"
 9059  11303   
features = ["client", "http-02x"]
 9060  11304   
version = "1.8.5"
 9061  11305   
 9062  11306   
[dependencies.aws-smithy-types]
 9063  11307   
path = "../aws-smithy-types"
 9064  11308   
version = "1.3.2"
 9065  11309   
 9066  11310   
[dependencies.aws-types]
 9067  11311   
path = "../aws-types"
 9068  11312   
version = "1.3.8"
 9069  11313   
 9070  11314   
[dependencies.bytes]
 9071  11315   
version = "1.4.0"
 9072  11316   
 9073  11317   
[dependencies.fastrand]
 9074  11318   
version = "2.0.0"
 9075  11319   
 9076  11320   
[dependencies.http]
 9077  11321   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 9078  11322   
index 7a34c16..588d0bd 100644
 9079         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
       11323  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 9080  11324   
@@ -1,61 +1,61 @@
 9081  11325   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9082  11326   
[package]
 9083  11327   
name = "aws-sdk-ssooidc"
 9084  11328   
version = "0.0.0-local"
 9085  11329   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9086  11330   
description = "AWS SDK for AWS SSO OIDC"
 9087  11331   
edition = "2021"
 9088  11332   
license = "Apache-2.0"
 9089  11333   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9090  11334   
rust-version = "1.86.0"
 9091  11335   
readme = "README.md"
 9092  11336   
[package.metadata.smithy]
 9093  11337   
codegen-version = "ci"
 9094  11338   
[package.metadata.docs.rs]
 9095  11339   
all-features = true
 9096  11340   
targets = ["x86_64-unknown-linux-gnu"]
 9097  11341   
[dependencies.aws-credential-types]
 9098  11342   
path = "../aws-credential-types"
 9099  11343   
version = "1.2.4"
 9100  11344   
 9101  11345   
[dependencies.aws-runtime]
 9102  11346   
path = "../aws-runtime"
 9103  11347   
version = "1.5.9"
 9104  11348   
 9105  11349   
[dependencies.aws-smithy-async]
 9106  11350   
path = "../aws-smithy-async"
 9107  11351   
version = "1.2.5"
 9108  11352   
 9109  11353   
[dependencies.aws-smithy-http]
 9110  11354   
path = "../aws-smithy-http"
 9111         -
version = "0.62.2"
       11355  +
version = "0.62.3"
 9112  11356   
 9113  11357   
[dependencies.aws-smithy-json]
 9114  11358   
path = "../aws-smithy-json"
 9115  11359   
version = "0.61.4"
 9116  11360   
 9117  11361   
[dependencies.aws-smithy-runtime]
 9118  11362   
path = "../aws-smithy-runtime"
 9119  11363   
features = ["client"]
 9120  11364   
version = "1.8.5"
 9121  11365   
 9122  11366   
[dependencies.aws-smithy-runtime-api]
 9123  11367   
path = "../aws-smithy-runtime-api"
 9124  11368   
features = ["client", "http-02x"]
 9125  11369   
version = "1.8.5"
 9126  11370   
 9127  11371   
[dependencies.aws-smithy-types]
 9128  11372   
path = "../aws-smithy-types"
 9129  11373   
version = "1.3.2"
 9130  11374   
 9131  11375   
[dependencies.aws-types]
 9132  11376   
path = "../aws-types"
 9133  11377   
version = "1.3.8"
 9134  11378   
 9135  11379   
[dependencies.bytes]
 9136  11380   
version = "1.4.0"
 9137  11381   
 9138  11382   
[dependencies.fastrand]
 9139  11383   
version = "2.0.0"
 9140  11384   
 9141  11385   
[dependencies.http]
 9142  11386   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 9143  11387   
index 895dfb3..f2ce34e 100644
 9144         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
       11388  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 9145  11389   
@@ -1,61 +1,61 @@
 9146  11390   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9147  11391   
[package]
 9148  11392   
name = "aws-sdk-sts"
 9149  11393   
version = "0.0.0-local"
 9150  11394   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9151  11395   
description = "AWS SDK for AWS Security Token Service"
 9152  11396   
edition = "2021"
 9153  11397   
license = "Apache-2.0"
 9154  11398   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9155  11399   
rust-version = "1.86.0"
 9156  11400   
readme = "README.md"
 9157  11401   
[package.metadata.smithy]
 9158  11402   
codegen-version = "ci"
 9159  11403   
[package.metadata.docs.rs]
 9160  11404   
all-features = true
 9161  11405   
targets = ["x86_64-unknown-linux-gnu"]
 9162  11406   
[dependencies.aws-credential-types]
 9163  11407   
path = "../aws-credential-types"
 9164  11408   
version = "1.2.4"
 9165  11409   
 9166  11410   
[dependencies.aws-runtime]
 9167  11411   
path = "../aws-runtime"
 9168  11412   
version = "1.5.9"
 9169  11413   
 9170  11414   
[dependencies.aws-smithy-async]
 9171  11415   
path = "../aws-smithy-async"
 9172  11416   
version = "1.2.5"
 9173  11417   
 9174  11418   
[dependencies.aws-smithy-http]
 9175  11419   
path = "../aws-smithy-http"
 9176         -
version = "0.62.2"
       11420  +
version = "0.62.3"
 9177  11421   
 9178  11422   
[dependencies.aws-smithy-json]
 9179  11423   
path = "../aws-smithy-json"
 9180  11424   
version = "0.61.4"
 9181  11425   
 9182  11426   
[dependencies.aws-smithy-query]
 9183  11427   
path = "../aws-smithy-query"
 9184  11428   
version = "0.60.7"
 9185  11429   
 9186  11430   
[dependencies.aws-smithy-runtime]
 9187  11431   
path = "../aws-smithy-runtime"
 9188  11432   
features = ["client"]
 9189  11433   
version = "1.8.5"
 9190  11434   
 9191  11435   
[dependencies.aws-smithy-runtime-api]
 9192  11436   
path = "../aws-smithy-runtime-api"
 9193  11437   
features = ["client", "http-02x"]
 9194  11438   
version = "1.8.5"
 9195  11439   
 9196  11440   
[dependencies.aws-smithy-types]
 9197  11441   
path = "../aws-smithy-types"
 9198  11442   
version = "1.3.2"
 9199  11443   
 9200  11444   
[dependencies.aws-smithy-xml]
 9201  11445   
path = "../aws-smithy-xml"
 9202  11446   
version = "0.60.10"
 9203  11447   
 9204  11448   
[dependencies.aws-types]
 9205  11449   
path = "../aws-types"
 9206  11450   
version = "1.3.8"
 9207  11451   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 9208  11452   
index d556561..91178b6 100644
 9209         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
       11453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 9210  11454   
@@ -1,61 +1,61 @@
 9211  11455   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9212  11456   
[package]
 9213  11457   
name = "aws-sdk-timestreamquery"
 9214  11458   
version = "0.0.0-local"
 9215  11459   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9216  11460   
description = "AWS SDK for Amazon Timestream Query"
 9217  11461   
edition = "2021"
 9218  11462   
license = "Apache-2.0"
 9219  11463   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9220  11464   
rust-version = "1.86.0"
 9221  11465   
readme = "README.md"
 9222  11466   
[package.metadata.smithy]
 9223  11467   
codegen-version = "ci"
 9224  11468   
[package.metadata.docs.rs]
 9225  11469   
all-features = true
 9226  11470   
targets = ["x86_64-unknown-linux-gnu"]
 9227  11471   
[dependencies.aws-credential-types]
 9228  11472   
path = "../aws-credential-types"
 9229  11473   
version = "1.2.4"
 9230  11474   
 9231  11475   
[dependencies.aws-runtime]
 9232  11476   
path = "../aws-runtime"
 9233  11477   
version = "1.5.9"
 9234  11478   
 9235  11479   
[dependencies.aws-smithy-async]
 9236  11480   
path = "../aws-smithy-async"
 9237  11481   
version = "1.2.5"
 9238  11482   
 9239  11483   
[dependencies.aws-smithy-http]
 9240  11484   
path = "../aws-smithy-http"
 9241         -
version = "0.62.2"
       11485  +
version = "0.62.3"
 9242  11486   
 9243  11487   
[dependencies.aws-smithy-json]
 9244  11488   
path = "../aws-smithy-json"
 9245  11489   
version = "0.61.4"
 9246  11490   
 9247  11491   
[dependencies.aws-smithy-runtime]
 9248  11492   
path = "../aws-smithy-runtime"
 9249  11493   
features = ["client"]
 9250  11494   
version = "1.8.5"
 9251  11495   
 9252  11496   
[dependencies.aws-smithy-runtime-api]
 9253  11497   
path = "../aws-smithy-runtime-api"
 9254  11498   
features = ["client", "http-02x"]
 9255  11499   
version = "1.8.5"
 9256  11500   
 9257  11501   
[dependencies.aws-smithy-types]
 9258  11502   
path = "../aws-smithy-types"
 9259  11503   
version = "1.3.2"
 9260  11504   
 9261  11505   
[dependencies.aws-types]
 9262  11506   
path = "../aws-types"
 9263  11507   
version = "1.3.8"
 9264  11508   
 9265  11509   
[dependencies.bytes]
 9266  11510   
version = "1.4.0"
 9267  11511   
 9268  11512   
[dependencies.fastrand]
 9269  11513   
version = "2.0.0"
 9270  11514   
 9271  11515   
[dependencies.http]
 9272  11516   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 9273  11517   
index 0c56e4c..95731e3 100644
 9274         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
       11518  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 9275  11519   
@@ -1,61 +1,61 @@
 9276  11520   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9277  11521   
[package]
 9278  11522   
name = "aws-sdk-timestreamwrite"
 9279  11523   
version = "0.0.0-local"
 9280  11524   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9281  11525   
description = "AWS SDK for Amazon Timestream Write"
 9282  11526   
edition = "2021"
 9283  11527   
license = "Apache-2.0"
 9284  11528   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9285  11529   
rust-version = "1.86.0"
 9286  11530   
readme = "README.md"
 9287  11531   
[package.metadata.smithy]
 9288  11532   
codegen-version = "ci"
 9289  11533   
[package.metadata.docs.rs]
 9290  11534   
all-features = true
 9291  11535   
targets = ["x86_64-unknown-linux-gnu"]
 9292  11536   
[dependencies.aws-credential-types]
 9293  11537   
path = "../aws-credential-types"
 9294  11538   
version = "1.2.4"
 9295  11539   
 9296  11540   
[dependencies.aws-runtime]
 9297  11541   
path = "../aws-runtime"
 9298  11542   
version = "1.5.9"
 9299  11543   
 9300  11544   
[dependencies.aws-smithy-async]
 9301  11545   
path = "../aws-smithy-async"
 9302  11546   
version = "1.2.5"
 9303  11547   
 9304  11548   
[dependencies.aws-smithy-http]
 9305  11549   
path = "../aws-smithy-http"
 9306         -
version = "0.62.2"
       11550  +
version = "0.62.3"
 9307  11551   
 9308  11552   
[dependencies.aws-smithy-json]
 9309  11553   
path = "../aws-smithy-json"
 9310  11554   
version = "0.61.4"
 9311  11555   
 9312  11556   
[dependencies.aws-smithy-runtime]
 9313  11557   
path = "../aws-smithy-runtime"
 9314  11558   
features = ["client"]
 9315  11559   
version = "1.8.5"
 9316  11560   
 9317  11561   
[dependencies.aws-smithy-runtime-api]
 9318  11562   
path = "../aws-smithy-runtime-api"
 9319  11563   
features = ["client", "http-02x"]
 9320  11564   
version = "1.8.5"
 9321  11565   
 9322  11566   
[dependencies.aws-smithy-types]
 9323  11567   
path = "../aws-smithy-types"
 9324  11568   
version = "1.3.2"
 9325  11569   
 9326  11570   
[dependencies.aws-types]
 9327  11571   
path = "../aws-types"
 9328  11572   
version = "1.3.8"
 9329  11573   
 9330  11574   
[dependencies.bytes]
 9331  11575   
version = "1.4.0"
 9332  11576   
 9333  11577   
[dependencies.fastrand]
 9334  11578   
version = "2.0.0"
 9335  11579   
 9336  11580   
[dependencies.http]
 9337  11581   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 9338  11582   
index 5b35037..9fb220a 100644
 9339         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       11583  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 9340  11584   
@@ -1,71 +1,71 @@
 9341  11585   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9342  11586   
[package]
 9343  11587   
name = "aws-sdk-transcribestreaming"
 9344  11588   
version = "0.0.0-local"
 9345  11589   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9346  11590   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 9347  11591   
edition = "2021"
 9348  11592   
license = "Apache-2.0"
 9349  11593   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9350  11594   
rust-version = "1.86.0"
 9351  11595   
readme = "README.md"
 9352  11596   
[package.metadata.smithy]
 9353  11597   
codegen-version = "ci"
 9354  11598   
[package.metadata.docs.rs]
 9355  11599   
all-features = true
 9356  11600   
targets = ["x86_64-unknown-linux-gnu"]
 9357  11601   
[dependencies.aws-credential-types]
 9358  11602   
path = "../aws-credential-types"
 9359  11603   
version = "1.2.4"
 9360  11604   
 9361  11605   
[dependencies.aws-runtime]
 9362  11606   
path = "../aws-runtime"
 9363  11607   
features = ["event-stream"]
 9364  11608   
version = "1.5.9"
 9365  11609   
 9366  11610   
[dependencies.aws-sigv4]
 9367  11611   
path = "../aws-sigv4"
 9368         -
version = "1.3.3"
       11612  +
version = "1.3.4"
 9369  11613   
 9370  11614   
[dependencies.aws-smithy-async]
 9371  11615   
path = "../aws-smithy-async"
 9372  11616   
version = "1.2.5"
 9373  11617   
 9374  11618   
[dependencies.aws-smithy-eventstream]
 9375  11619   
path = "../aws-smithy-eventstream"
 9376  11620   
version = "0.60.10"
 9377  11621   
 9378  11622   
[dependencies.aws-smithy-http]
 9379  11623   
path = "../aws-smithy-http"
 9380  11624   
features = ["event-stream"]
 9381         -
version = "0.62.2"
       11625  +
version = "0.62.3"
 9382  11626   
 9383  11627   
[dependencies.aws-smithy-json]
 9384  11628   
path = "../aws-smithy-json"
 9385  11629   
version = "0.61.4"
 9386  11630   
 9387  11631   
[dependencies.aws-smithy-runtime]
 9388  11632   
path = "../aws-smithy-runtime"
 9389  11633   
features = ["client"]
 9390  11634   
version = "1.8.5"
 9391  11635