AWS SDK

AWS SDK

rev. 628eeeeeed390f5efdbfe607c18848c033debd3e

Files changed:

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

@@ -1,0 +4,0 @@
    1         -
GET / 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=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/iam/iam.creq

@@ -1,0 +4,0 @@
    1         -
AWS4-HMAC-SHA256
    2         -
20150830T123600Z
    3         -
20150830/us-east-1/iam/aws4_request
    4         -
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.authz

@@ -1,0 +9352,11616 @@
    1         -
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
    2      0   
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
    3      1   
deleted file mode 100644
    4      2   
index cbdebe2..0000000
    5         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sreq
           3  +
++ /dev/null
    6      4   
@@ -1,4 +0,0 @@
    7         -
GET /example1/example2/../.. HTTP/1.1
    8         -
Host:example.amazonaws.com
    9         -
X-Amz-Date:20150830T123600Z
   10         -
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
   11      5   
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
   12      6   
deleted file mode 100644
   13      7   
index 551c027..0000000
   14         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.authz
           8  +
++ /dev/null
   15      9   
@@ -1 +0,0 @@
   16         -
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/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
   18     11   
deleted file mode 100644
   19     12   
index 4f59e7d..0000000
   20         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sreq
          13  +
++ /dev/null
   21     14   
@@ -1,4 +0,0 @@
   22         -
GET /example/.. HTTP/1.1
   23         -
Host:example.amazonaws.com
   24         -
X-Amz-Date:20150830T123600Z
   25         -
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
   26     15   
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
   27     16   
deleted file mode 100644
   28     17   
index 551c027..0000000
   29         -
-- 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
          18  +
++ /dev/null
   30     19   
@@ -1 +0,0 @@
   31         -
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
   32     20   
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
   33     21   
deleted file mode 100644
   34     22   
index 23a2b41..0000000
   35         -
-- 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
          23  +
++ /dev/null
   36     24   
@@ -1,4 +0,0 @@
   37         -
GET /./ HTTP/1.1
   38         -
Host:example.amazonaws.com
   39         -
X-Amz-Date:20150830T123600Z
   40         -
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
   41     25   
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
   42     26   
deleted file mode 100644
   43     27   
index b76ca1e..0000000
   44         -
-- 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
          28  +
++ /dev/null
   45     29   
@@ -1 +0,0 @@
   46         -
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
   47     30   
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
   48     31   
deleted file mode 100644
   49     32   
index 8096609..0000000
   50         -
-- 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
          33  +
++ /dev/null
   51     34   
@@ -1,4 +0,0 @@
   52         -
GET /./example HTTP/1.1
   53         -
Host:example.amazonaws.com
   54         -
X-Amz-Date:20150830T123600Z
   55         -
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
   56     35   
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
   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-slash/get-slash.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-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
   63     41   
deleted file mode 100644
   64     42   
index cde31b4..0000000
   65         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sreq
          43  +
++ /dev/null
   66     44   
@@ -1,4 +0,0 @@
   67         -
GET // 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-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
   72     46   
deleted file mode 100644
   73     47   
index 307c105..0000000
   74         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.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=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 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-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
   78     51   
deleted file mode 100644
   79     52   
index c84a80d..0000000
   80         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.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=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 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-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
   87     56   
deleted file mode 100644
   88     57   
index 832d8a5..0000000
   89         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.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=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 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-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
   93     61   
deleted file mode 100644
   94     62   
index eefa20c..0000000
   95         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sreq
          63  +
++ /dev/null
   96     64   
@@ -1,4 +0,0 @@
   97         -
GET /example space/ 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=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 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/normalize-path.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/normalize-path.txt
  102     66   
deleted file mode 100644
  103     67   
index c2fcb27..0000000
  104         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/normalize-path.txt
          68  +
++ /dev/null
  105     69   
@@ -1,3 +0,0 @@
  106         -
A note about signing requests to Amazon S3:
  107         -

  108         -
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
  109     70   
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
  110     71   
deleted file mode 100644
  111     72   
index 89e572e..0000000
  112         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.authz
          73  +
++ /dev/null
  113     74   
@@ -1 +0,0 @@
  114         -
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
  115     75   
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
  116     76   
deleted file mode 100644
  117     77   
index fcf23ce..0000000
  118         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sreq
          78  +
++ /dev/null
  119     79   
@@ -1,4 +0,0 @@
  120         -
POST / HTTP/1.1
  121         -
Host:example.amazonaws.com
  122         -
X-Amz-Date:20150830T123600Z
  123         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
  124     80   
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
  125     81   
deleted file mode 100644
  126     82   
index a62589f..0000000
  127         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.authz
          83  +
++ /dev/null
  128     84   
@@ -1 +0,0 @@
  129         -
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
  130     85   
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
  131     86   
deleted file mode 100644
  132     87   
index b4b78a1..0000000
  133         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq
          88  +
++ /dev/null
  134     89   
@@ -1,5 +0,0 @@
  135         -
POST / HTTP/1.1
  136         -
Host:example.amazonaws.com
  137         -
My-Header1:value1
  138         -
X-Amz-Date:20150830T123600Z
  139         -
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
  140     90   
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
  141     91   
deleted file mode 100644
  142     92   
index d9e52a3..0000000
  143         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz
          93  +
++ /dev/null
  144     94   
@@ -1 +0,0 @@
  145         -
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
  146     95   
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
  147     96   
deleted file mode 100644
  148     97   
index 99c3210..0000000
  149         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq
          98  +
++ /dev/null
  150     99   
@@ -1,5 +0,0 @@
  151         -
POST / HTTP/1.1
  152         -
Host:example.amazonaws.com
  153         -
My-Header1:VALUE1
  154         -
X-Amz-Date:20150830T123600Z
  155         -
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
  156    100   
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
  157    101   
deleted file mode 100644
  158    102   
index 89e572e..0000000
  159         -
-- 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
         103  +
++ /dev/null
  160    104   
@@ -1 +0,0 @@
  161         -
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
  162    105   
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
  163    106   
deleted file mode 100644
  164    107   
index 64aa046..0000000
  165         -
-- 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
         108  +
++ /dev/null
  166    109   
@@ -1 +0,0 @@
  167         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
  168    110   
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
  169    111   
deleted file mode 100644
  170    112   
index cc34282..0000000
  171         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt
         113  +
++ /dev/null
  172    114   
@@ -1,15 +0,0 @@
  173         -
A note about using temporary security credentials:
  174         -

  175         -
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).
  176         -

  177         -
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.
  178         -

  179         -
The test suite has 2 examples:
  180         -

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

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

  185         -
The test suite uses this example value for X-Amz-Security-Token:
  186         -

  187         -
AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
  188    115   
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
  189    116   
deleted file mode 100644
  190    117   
index 44280cd..0000000
  191         -
-- 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
         118  +
++ /dev/null
  192    119   
@@ -1 +0,0 @@
  193         -
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
  194    120   
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
  195    121   
deleted file mode 100644
  196    122   
index 82af150..0000000
  197         -
-- 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
         123  +
++ /dev/null
  198    124   
@@ -1,4 +0,0 @@
  199         -
POST /?Param1=value1 HTTP/1.1
  200         -
Host:example.amazonaws.com
  201         -
X-Amz-Date:20150830T123600Z
  202         -
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
  203    125   
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
  204    126   
deleted file mode 100644
  205    127   
index 44280cd..0000000
  206         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz
         128  +
++ /dev/null
  207    129   
@@ -1 +0,0 @@
  208         -
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
  209    130   
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
  210    131   
deleted file mode 100644
  211    132   
index 82af150..0000000
  212         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq
         133  +
++ /dev/null
  213    134   
@@ -1,4 +0,0 @@
  214         -
POST /?Param1=value1 HTTP/1.1
  215         -
Host:example.amazonaws.com
  216         -
X-Amz-Date:20150830T123600Z
  217         -
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
  218    135   
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
  219    136   
deleted file mode 100644
  220    137   
index 89e572e..0000000
  221         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
         138  +
++ /dev/null
  222    139   
@@ -1 +0,0 @@
  223         -
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
  224    140   
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
  225    141   
deleted file mode 100644
  226    142   
index a5ada0d..0000000
  227         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq
         143  +
++ /dev/null
  228    144   
@@ -1,4 +0,0 @@
  229         -
POST / HTTP/1.1
  230         -
Host:example.amazonaws.com
  231         -
X-Amz-Date:20150830T123600Z
  232         -
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
  233    145   
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
  234    146   
deleted file mode 100644
  235    147   
index df90ca3..0000000
  236         -
-- 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
         148  +
++ /dev/null
  237    149   
@@ -1 +0,0 @@
  238         -
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
  239    150   
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
  240    151   
deleted file mode 100644
  241    152   
index 457b0d5..0000000
  242         -
-- 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
         153  +
++ /dev/null
  243    154   
@@ -1,9 +0,0 @@
  244         -
POST
  245         -
/
  246         -
Param1=value1
  247         -
content-type:application/x-www-form-urlencoded; charset=utf-8
  248         -
host:example.amazonaws.com
  249         -
x-amz-date:20150830T123600Z
  250         -
  251         -
content-type;host;x-amz-date
  252         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  253    155   
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
  254    156   
deleted file mode 100644
  255    157   
index b8ecb89..0000000
  256         -
-- 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
         158  +
++ /dev/null
  257    159   
@@ -1,7 +0,0 @@
  258         -
POST / HTTP/1.1
  259         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  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=content-type;host;x-amz-date, Signature=ad1ac0c5fa1793b9b9d23894903b9ce84044d014533a633091e12c840473b393
  263         -
  264         -
Param1=value1
              \
 No newline at end of file
  265    160   
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
  266    161   
deleted file mode 100644
  267    162   
index 79077d2..0000000
  268         -
-- 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
         163  +
++ /dev/null
  269    164   
@@ -1 +0,0 @@
  270         -
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
  271    165   
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
  272    166   
deleted file mode 100644
  273    167   
index 7852617..0000000
  274         -
-- 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
         168  +
++ /dev/null
  275    169   
@@ -1,4 +0,0 @@
  276         -
POST / HTTP/1.1
  277         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  278         -
Host:example.amazonaws.com
  279         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  280    170   
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
  281    171   
deleted file mode 100644
  282    172   
index 3e2e571..0000000
  283         -
-- 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
         173  +
++ /dev/null
  284    174   
@@ -1,4 +0,0 @@
  285         -
POST / HTTP/1.1
  286         -
Host:example.amazonaws.com
  287         -
X-Amz-Date:20150830T123600Z
  288         -
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
  289    175   
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
  290    176   
deleted file mode 100644
  291    177   
index 89ceae8..0000000
  292         -
-- 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
         178  +
++ /dev/null
  293    179   
@@ -1,4 +0,0 @@
  294         -
AWS4-HMAC-SHA256
  295         -
20150830T123600Z
  296         -
20150830/us-east-1/service/aws4_request
  297         -
6a42edc18395dd67cc71407d4307ff29ab1646b08c1a0107edb319e08e2bc584
              \
 No newline at end of file
  298    180   
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
  299    181   
deleted file mode 100755
  300    182   
index d645695..0000000
  301         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE
         183  +
++ /dev/null
  302    184   
@@ -1,202 +0,0 @@
  303         -
  304         -
                                 Apache License
  305         -
                           Version 2.0, January 2004
  306         -
                        http://www.apache.org/licenses/
  307         -
  308         -
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
  309         -
  310         -
   1. Definitions.
  311         -
  312         -
      "License" shall mean the terms and conditions for use, reproduction,
  313         -
      and distribution as defined by Sections 1 through 9 of this document.
  314         -
  315         -
      "Licensor" shall mean the copyright owner or entity authorized by
  316         -
      the copyright owner that is granting the License.
  317         -
  318         -
      "Legal Entity" shall mean the union of the acting entity and all
  319         -
      other entities that control, are controlled by, or are under common
  320         -
      control with that entity. For the purposes of this definition,
  321         -
      "control" means (i) the power, direct or indirect, to cause the
  322         -
      direction or management of such entity, whether by contract or
  323         -
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
  324         -
      outstanding shares, or (iii) beneficial ownership of such entity.
  325         -
  326         -
      "You" (or "Your") shall mean an individual or Legal Entity
  327         -
      exercising permissions granted by this License.
  328         -
  329         -
      "Source" form shall mean the preferred form for making modifications,
  330         -
      including but not limited to software source code, documentation
  331         -
      source, and configuration files.
  332         -
  333         -
      "Object" form shall mean any form resulting from mechanical
  334         -
      transformation or translation of a Source form, including but
  335         -
      not limited to compiled object code, generated documentation,
  336         -
      and conversions to other media types.
  337         -
  338         -
      "Work" shall mean the work of authorship, whether in Source or
  339         -
      Object form, made available under the License, as indicated by a
  340         -
      copyright notice that is included in or attached to the work
  341         -
      (an example is provided in the Appendix below).
  342         -
  343         -
      "Derivative Works" shall mean any work, whether in Source or Object
  344         -
      form, that is based on (or derived from) the Work and for which the
  345         -
      editorial revisions, annotations, elaborations, or other modifications
  346         -
      represent, as a whole, an original work of authorship. For the purposes
  347         -
      of this License, Derivative Works shall not include works that remain
  348         -
      separable from, or merely link (or bind by name) to the interfaces of,
  349         -
      the Work and Derivative Works thereof.
  350         -
  351         -
      "Contribution" shall mean any work of authorship, including
  352         -
      the original version of the Work and any modifications or additions
  353         -
      to that Work or Derivative Works thereof, that is intentionally
  354         -
      submitted to Licensor for inclusion in the Work by the copyright owner
  355         -
      or by an individual or Legal Entity authorized to submit on behalf of
  356         -
      the copyright owner. For the purposes of this definition, "submitted"
  357         -
      means any form of electronic, verbal, or written communication sent
  358         -
      to the Licensor or its representatives, including but not limited to
  359         -
      communication on electronic mailing lists, source code control systems,
  360         -
      and issue tracking systems that are managed by, or on behalf of, the
  361         -
      Licensor for the purpose of discussing and improving the Work, but
  362         -
      excluding communication that is conspicuously marked or otherwise
  363         -
      designated in writing by the copyright owner as "Not a Contribution."
  364         -
  365         -
      "Contributor" shall mean Licensor and any individual or Legal Entity
  366         -
      on behalf of whom a Contribution has been received by Licensor and
  367         -
      subsequently incorporated within the Work.
  368         -
  369         -
   2. Grant of Copyright License. Subject to the terms and conditions of
  370         -
      this License, each Contributor hereby grants to You a perpetual,
  371         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  372         -
      copyright license to reproduce, prepare Derivative Works of,
  373         -
      publicly display, publicly perform, sublicense, and distribute the
  374         -
      Work and such Derivative Works in Source or Object form.
  375         -
  376         -
   3. Grant of Patent License. Subject to the terms and conditions of
  377         -
      this License, each Contributor hereby grants to You a perpetual,
  378         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  379         -
      (except as stated in this section) patent license to make, have made,
  380         -
      use, offer to sell, sell, import, and otherwise transfer the Work,
  381         -
      where such license applies only to those patent claims licensable
  382         -
      by such Contributor that are necessarily infringed by their
  383         -
      Contribution(s) alone or by combination of their Contribution(s)
  384         -
      with the Work to which such Contribution(s) was submitted. If You
  385         -
      institute patent litigation against any entity (including a
  386         -
      cross-claim or counterclaim in a lawsuit) alleging that the Work
  387         -
      or a Contribution incorporated within the Work constitutes direct
  388         -
      or contributory patent infringement, then any patent licenses
  389         -
      granted to You under this License for that Work shall terminate
  390         -
      as of the date such litigation is filed.
  391         -
  392         -
   4. Redistribution. You may reproduce and distribute copies of the
  393         -
      Work or Derivative Works thereof in any medium, with or without
  394         -
      modifications, and in Source or Object form, provided that You
  395         -
      meet the following conditions:
  396         -
  397         -
      (a) You must give any other recipients of the Work or
  398         -
          Derivative Works a copy of this License; and
  399         -
  400         -
      (b) You must cause any modified files to carry prominent notices
  401         -
          stating that You changed the files; and
  402         -
  403         -
      (c) You must retain, in the Source form of any Derivative Works
  404         -
          that You distribute, all copyright, patent, trademark, and
  405         -
          attribution notices from the Source form of the Work,
  406         -
          excluding those notices that do not pertain to any part of
  407         -
          the Derivative Works; and
  408         -
  409         -
      (d) If the Work includes a "NOTICE" text file as part of its
  410         -
          distribution, then any Derivative Works that You distribute must
  411         -
          include a readable copy of the attribution notices contained
  412         -
          within such NOTICE file, excluding those notices that do not
  413         -
          pertain to any part of the Derivative Works, in at least one
  414         -
          of the following places: within a NOTICE text file distributed
  415         -
          as part of the Derivative Works; within the Source form or
  416         -
          documentation, if provided along with the Derivative Works; or,
  417         -
          within a display generated by the Derivative Works, if and
  418         -
          wherever such third-party notices normally appear. The contents
  419         -
          of the NOTICE file are for informational purposes only and
  420         -
          do not modify the License. You may add Your own attribution
  421         -
          notices within Derivative Works that You distribute, alongside
  422         -
          or as an addendum to the NOTICE text from the Work, provided
  423         -
          that such additional attribution notices cannot be construed
  424         -
          as modifying the License.
  425         -
  426         -
      You may add Your own copyright statement to Your modifications and
  427         -
      may provide additional or different license terms and conditions
  428         -
      for use, reproduction, or distribution of Your modifications, or
  429         -
      for any such Derivative Works as a whole, provided Your use,
  430         -
      reproduction, and distribution of the Work otherwise complies with
  431         -
      the conditions stated in this License.
  432         -
  433         -
   5. Submission of Contributions. Unless You explicitly state otherwise,
  434         -
      any Contribution intentionally submitted for inclusion in the Work
  435         -
      by You to the Licensor shall be under the terms and conditions of
  436         -
      this License, without any additional terms or conditions.
  437         -
      Notwithstanding the above, nothing herein shall supersede or modify
  438         -
      the terms of any separate license agreement you may have executed
  439         -
      with Licensor regarding such Contributions.
  440         -
  441         -
   6. Trademarks. This License does not grant permission to use the trade
  442         -
      names, trademarks, service marks, or product names of the Licensor,
  443         -
      except as required for reasonable and customary use in describing the
  444         -
      origin of the Work and reproducing the content of the NOTICE file.
  445         -
  446         -
   7. Disclaimer of Warranty. Unless required by applicable law or
  447         -
      agreed to in writing, Licensor provides the Work (and each
  448         -
      Contributor provides its Contributions) on an "AS IS" BASIS,
  449         -
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
  450         -
      implied, including, without limitation, any warranties or conditions
  451         -
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
  452         -
      PARTICULAR PURPOSE. You are solely responsible for determining the
  453         -
      appropriateness of using or redistributing the Work and assume any
  454         -
      risks associated with Your exercise of permissions under this License.
  455         -
  456         -
   8. Limitation of Liability. In no event and under no legal theory,
  457         -
      whether in tort (including negligence), contract, or otherwise,
  458         -
      unless required by applicable law (such as deliberate and grossly
  459         -
      negligent acts) or agreed to in writing, shall any Contributor be
  460         -
      liable to You for damages, including any direct, indirect, special,
  461         -
      incidental, or consequential damages of any character arising as a
  462         -
      result of this License or out of the use or inability to use the
  463         -
      Work (including but not limited to damages for loss of goodwill,
  464         -
      work stoppage, computer failure or malfunction, or any and all
  465         -
      other commercial damages or losses), even if such Contributor
  466         -
      has been advised of the possibility of such damages.
  467         -
  468         -
   9. Accepting Warranty or Additional Liability. While redistributing
  469         -
      the Work or Derivative Works thereof, You may choose to offer,
  470         -
      and charge a fee for, acceptance of support, warranty, indemnity,
  471         -
      or other liability obligations and/or rights consistent with this
  472         -
      License. However, in accepting such obligations, You may act only
  473         -
      on Your own behalf and on Your sole responsibility, not on behalf
  474         -
      of any other Contributor, and only if You agree to indemnify,
  475         -
      defend, and hold each Contributor harmless for any liability
  476         -
      incurred by, or claims asserted against, such Contributor by reason
  477         -
      of your accepting any such warranty or additional liability.
  478         -
  479         -
   END OF TERMS AND CONDITIONS
  480         -
  481         -
   APPENDIX: How to apply the Apache License to your work.
  482         -
  483         -
      To apply the Apache License to your work, attach the following
  484         -
      boilerplate notice, with the fields enclosed by brackets "[]"
  485         -
      replaced with your own identifying information. (Don't include
  486         -
      the brackets!)  The text should be enclosed in the appropriate
  487         -
      comment syntax for the file format. We also recommend that a
  488         -
      file or class name and description of purpose be included on the
  489         -
      same "printed page" as the copyright notice for easier
  490         -
      identification within third-party archives.
  491         -
  492         -
   Copyright [yyyy] [name of copyright owner]
  493         -
  494         -
   Licensed under the Apache License, Version 2.0 (the "License");
  495         -
   you may not use this file except in compliance with the License.
  496         -
   You may obtain a copy of the License at
  497         -
  498         -
       http://www.apache.org/licenses/LICENSE-2.0
  499         -
  500         -
   Unless required by applicable law or agreed to in writing, software
  501         -
   distributed under the License is distributed on an "AS IS" BASIS,
  502         -
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  503         -
   See the License for the specific language governing permissions and
  504         -
   limitations under the License.
  505    185   
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
  506    186   
deleted file mode 100755
  507    187   
index d85f69e..0000000
  508         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE
         188  +
++ /dev/null
  509    189   
@@ -1,2 +0,0 @@
  510         -
AWS Signature Version 4a Test Suite
  511         -
Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  512    190   
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
  513    191   
deleted file mode 100644
  514    192   
index c716622..0000000
  515         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md
         193  +
++ /dev/null
  516    194   
@@ -1,24 +0,0 @@
  517         -
Where did the files in this directory come from?
  518         -
================================================
  519         -
  520         -
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.
  521         -
  522         -
Signature Version 4A Test Suite
  523         -
------------------------------
  524         -
  525         -
To assist you in the development of an AWS client that supports Signature Version 4A, you can use the
  526         -
files in the test suite to ensure your code is performing each step of the signing process correctly.
  527         -
  528         -
Each test group contains several files that you can use to validate most of the tasks described in
  529         -
Signature Version 4A Signing Process. The following list describes the contents of each file.
  530         -
  531         -
- context.json - Credentials and signer options to use when signing test requests
  532         -
- request.txt - The web request to be signed.
  533         -
- header-canonical-request.txt - The resulting canonical request in header-signature mode.
  534         -
- header-string-to-sign.txt - The resulting string to sign in header-signature mode.
  535         -
- query-canonical-request.txt - The resulting canonical request in query-signature mode.
  536         -
- query-string-to-sign.txt - The resulting string to sign in header-query mode.
  537         -
  538         -
Sigv4A signature generation isn't deterministic, so generated signatures can't be tested against known good ones.
  539         -
Instead, tests generate a signature, derive a verification key from the signing key, and verify the signature and
  540         -
the string to sign. This mirrors what AWS services do when verifying Sigv4A-signed requests.
  541    195   
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
  542    196   
deleted file mode 100644
  543    197   
index 45771c7..0000000
  544         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json
         198  +
++ /dev/null
  545    199   
@@ -1,12 +0,0 @@
  546         -
{
  547         -
    "credentials": {
  548         -
        "access_key_id": "AKIDEXAMPLE",
  549         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  550         -
    },
  551         -
    "expiration_in_seconds": 3600,
  552         -
    "normalize": true,
  553         -
    "region": "us-east-1",
  554         -
    "service": "service",
  555         -
    "sign_body": false,
  556         -
    "timestamp": "2015-08-30T12:36:00Z"
  557         -
}
  558    200   
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
  559    201   
deleted file mode 100644
  560    202   
index 45771c7..0000000
  561         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json
         203  +
++ /dev/null
  562    204   
@@ -1,12 +0,0 @@
  563         -
{
  564         -
    "credentials": {
  565         -
        "access_key_id": "AKIDEXAMPLE",
  566         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  567         -
    },
  568         -
    "expiration_in_seconds": 3600,
  569         -
    "normalize": true,
  570         -
    "region": "us-east-1",
  571         -
    "service": "service",
  572         -
    "sign_body": false,
  573         -
    "timestamp": "2015-08-30T12:36:00Z"
  574         -
}
  575    205   
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
  576    206   
deleted file mode 100644
  577    207   
index 45771c7..0000000
  578         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json
         208  +
++ /dev/null
  579    209   
@@ -1,12 +0,0 @@
  580         -
{
  581         -
    "credentials": {
  582         -
        "access_key_id": "AKIDEXAMPLE",
  583         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  584         -
    },
  585         -
    "expiration_in_seconds": 3600,
  586         -
    "normalize": true,
  587         -
    "region": "us-east-1",
  588         -
    "service": "service",
  589         -
    "sign_body": false,
  590         -
    "timestamp": "2015-08-30T12:36:00Z"
  591         -
}
  592    210   
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
  593    211   
deleted file mode 100644
  594    212   
index 45771c7..0000000
  595         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json
         213  +
++ /dev/null
  596    214   
@@ -1,12 +0,0 @@
  597         -
{
  598         -
    "credentials": {
  599         -
        "access_key_id": "AKIDEXAMPLE",
  600         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  601         -
    },
  602         -
    "expiration_in_seconds": 3600,
  603         -
    "normalize": true,
  604         -
    "region": "us-east-1",
  605         -
    "service": "service",
  606         -
    "sign_body": false,
  607         -
    "timestamp": "2015-08-30T12:36:00Z"
  608         -
}
  609    215   
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
  610    216   
deleted file mode 100644
  611    217   
index afe367b..0000000
  612         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json
         218  +
++ /dev/null
  613    219   
@@ -1,12 +0,0 @@
  614         -
{
  615         -
    "credentials": {
  616         -
        "access_key_id": "AKIDEXAMPLE",
  617         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  618         -
    },
  619         -
    "expiration_in_seconds": 3600,
  620         -
    "normalize": false,
  621         -
    "region": "us-east-1",
  622         -
    "service": "service",
  623         -
    "sign_body": false,
  624         -
    "timestamp": "2015-08-30T12:36:00Z"
  625         -
}
  626    220   
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
  627    221   
deleted file mode 100644
  628    222   
index 45771c7..0000000
  629         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json
         223  +
++ /dev/null
  630    224   
@@ -1,12 +0,0 @@
  631         -
{
  632         -
    "credentials": {
  633         -
        "access_key_id": "AKIDEXAMPLE",
  634         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  635         -
    },
  636         -
    "expiration_in_seconds": 3600,
  637         -
    "normalize": true,
  638         -
    "region": "us-east-1",
  639         -
    "service": "service",
  640         -
    "sign_body": false,
  641         -
    "timestamp": "2015-08-30T12:36:00Z"
  642         -
}
  643    225   
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
  644    226   
deleted file mode 100644
  645    227   
index afe367b..0000000
  646         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json
         228  +
++ /dev/null
  647    229   
@@ -1,12 +0,0 @@
  648         -
{
  649         -
    "credentials": {
  650         -
        "access_key_id": "AKIDEXAMPLE",
  651         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  652         -
    },
  653         -
    "expiration_in_seconds": 3600,
  654         -
    "normalize": false,
  655         -
    "region": "us-east-1",
  656         -
    "service": "service",
  657         -
    "sign_body": false,
  658         -
    "timestamp": "2015-08-30T12:36:00Z"
  659         -
}
  660    230   
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
  661    231   
deleted file mode 100644
  662    232   
index 45771c7..0000000
  663         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json
         233  +
++ /dev/null
  664    234   
@@ -1,12 +0,0 @@
  665         -
{
  666         -
    "credentials": {
  667         -
        "access_key_id": "AKIDEXAMPLE",
  668         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  669         -
    },
  670         -
    "expiration_in_seconds": 3600,
  671         -
    "normalize": true,
  672         -
    "region": "us-east-1",
  673         -
    "service": "service",
  674         -
    "sign_body": false,
  675         -
    "timestamp": "2015-08-30T12:36:00Z"
  676         -
}
  677    235   
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
  678    236   
deleted file mode 100644
  679    237   
index 45771c7..0000000
  680         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json
         238  +
++ /dev/null
  681    239   
@@ -1,12 +0,0 @@
  682         -
{
  683         -
    "credentials": {
  684         -
        "access_key_id": "AKIDEXAMPLE",
  685         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  686         -
    },
  687         -
    "expiration_in_seconds": 3600,
  688         -
    "normalize": true,
  689         -
    "region": "us-east-1",
  690         -
    "service": "service",
  691         -
    "sign_body": false,
  692         -
    "timestamp": "2015-08-30T12:36:00Z"
  693         -
}
  694    240   
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
  695    241   
deleted file mode 100644
  696    242   
index 45771c7..0000000
  697         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json
         243  +
++ /dev/null
  698    244   
@@ -1,12 +0,0 @@
  699         -
{
  700         -
    "credentials": {
  701         -
        "access_key_id": "AKIDEXAMPLE",
  702         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  703         -
    },
  704         -
    "expiration_in_seconds": 3600,
  705         -
    "normalize": true,
  706         -
    "region": "us-east-1",
  707         -
    "service": "service",
  708         -
    "sign_body": false,
  709         -
    "timestamp": "2015-08-30T12:36:00Z"
  710         -
}
  711    245   
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
  712    246   
deleted file mode 100644
  713    247   
index 45771c7..0000000
  714         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json
         248  +
++ /dev/null
  715    249   
@@ -1,12 +0,0 @@
  716         -
{
  717         -
    "credentials": {
  718         -
        "access_key_id": "AKIDEXAMPLE",
  719         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  720         -
    },
  721         -
    "expiration_in_seconds": 3600,
  722         -
    "normalize": true,
  723         -
    "region": "us-east-1",
  724         -
    "service": "service",
  725         -
    "sign_body": false,
  726         -
    "timestamp": "2015-08-30T12:36:00Z"
  727         -
}
  728    250   
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
  729    251   
deleted file mode 100644
  730    252   
index 45771c7..0000000
  731         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json
         253  +
++ /dev/null
  732    254   
@@ -1,12 +0,0 @@
  733         -
{
  734         -
    "credentials": {
  735         -
        "access_key_id": "AKIDEXAMPLE",
  736         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  737         -
    },
  738         -
    "expiration_in_seconds": 3600,
  739         -
    "normalize": true,
  740         -
    "region": "us-east-1",
  741         -
    "service": "service",
  742         -
    "sign_body": false,
  743         -
    "timestamp": "2015-08-30T12:36:00Z"
  744         -
}
  745    255   
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
  746    256   
deleted file mode 100644
  747    257   
index 47e7128..0000000
  748         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt
         258  +
++ /dev/null
  749    259   
@@ -1,9 +0,0 @@
  750         -
GET
  751         -
/
  752         -
  753         -
host:example.amazonaws.com
  754         -
x-amz-date:20150830T123600Z
  755         -
x-amz-region-set:us-east-1
  756         -
  757         -
host;x-amz-date;x-amz-region-set
  758         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  759    260   
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
  760    261   
deleted file mode 100644
  761    262   
index 95d7219..0000000
  762         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt
         263  +
++ /dev/null
  763    264   
@@ -1,4 +0,0 @@
  764         -
AWS4-ECDSA-P256-SHA256
  765         -
20150830T123600Z
  766         -
20150830/service/aws4_request
  767         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  768    265   
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
  769    266   
deleted file mode 100644
  770    267   
index a34ea26..0000000
  771         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt
         268  +
++ /dev/null
  772    269   
@@ -1,7 +0,0 @@
  773         -
GET
  774         -
/
  775         -
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
  776         -
host:example.amazonaws.com
  777         -
  778         -
host
  779         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  780    270   
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
  781    271   
deleted file mode 100644
  782    272   
index 48f855c..0000000
  783         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt
         273  +
++ /dev/null
  784    274   
@@ -1,4 +0,0 @@
  785         -
AWS4-ECDSA-P256-SHA256
  786         -
20150830T123600Z
  787         -
20150830/service/aws4_request
  788         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  789    275   
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
  790    276   
deleted file mode 100644
  791    277   
index 45771c7..0000000
  792         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json
         278  +
++ /dev/null
  793    279   
@@ -1,12 +0,0 @@
  794         -
{
  795         -
    "credentials": {
  796         -
        "access_key_id": "AKIDEXAMPLE",
  797         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  798         -
    },
  799         -
    "expiration_in_seconds": 3600,
  800         -
    "normalize": true,
  801         -
    "region": "us-east-1",
  802         -
    "service": "service",
  803         -
    "sign_body": false,
  804         -
    "timestamp": "2015-08-30T12:36:00Z"
  805         -
}
  806    280   
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
  807    281   
deleted file mode 100644
  808    282   
index 47e7128..0000000
  809         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt
         283  +
++ /dev/null
  810    284   
@@ -1,9 +0,0 @@
  811         -
GET
  812         -
/
  813         -
  814         -
host:example.amazonaws.com
  815         -
x-amz-date:20150830T123600Z
  816         -
x-amz-region-set:us-east-1
  817         -
  818         -
host;x-amz-date;x-amz-region-set
  819         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  820    285   
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
  821    286   
deleted file mode 100644
  822    287   
index 95d7219..0000000
  823         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt
         288  +
++ /dev/null
  824    289   
@@ -1,4 +0,0 @@
  825         -
AWS4-ECDSA-P256-SHA256
  826         -
20150830T123600Z
  827         -
20150830/service/aws4_request
  828         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  829    290   
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
  830    291   
deleted file mode 100644
  831    292   
index a34ea26..0000000
  832         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt
         293  +
++ /dev/null
  833    294   
@@ -1,7 +0,0 @@
  834         -
GET
  835         -
/
  836         -
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
  837         -
host:example.amazonaws.com
  838         -
  839         -
host
  840         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  841    295   
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
  842    296   
deleted file mode 100644
  843    297   
index 48f855c..0000000
  844         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt
         298  +
++ /dev/null
  845    299   
@@ -1,4 +0,0 @@
  846         -
AWS4-ECDSA-P256-SHA256
  847         -
20150830T123600Z
  848         -
20150830/service/aws4_request
  849         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  850    300   
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
  851    301   
deleted file mode 100644
  852    302   
index 45771c7..0000000
  853         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json
         303  +
++ /dev/null
  854    304   
@@ -1,12 +0,0 @@
  855         -
{
  856         -
    "credentials": {
  857         -
        "access_key_id": "AKIDEXAMPLE",
  858         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  859         -
    },
  860         -
    "expiration_in_seconds": 3600,
  861         -
    "normalize": true,
  862         -
    "region": "us-east-1",
  863         -
    "service": "service",
  864         -
    "sign_body": false,
  865         -
    "timestamp": "2015-08-30T12:36:00Z"
  866         -
}
  867    305   
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
  868    306   
deleted file mode 100644
  869    307   
index 45771c7..0000000
  870         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json
         308  +
++ /dev/null
  871    309   
@@ -1,12 +0,0 @@
  872         -
{
  873         -
    "credentials": {
  874         -
        "access_key_id": "AKIDEXAMPLE",
  875         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  876         -
    },
  877         -
    "expiration_in_seconds": 3600,
  878         -
    "normalize": true,
  879         -
    "region": "us-east-1",
  880         -
    "service": "service",
  881         -
    "sign_body": false,
  882         -
    "timestamp": "2015-08-30T12:36:00Z"
  883         -
}
  884    310   
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
  885    311   
deleted file mode 100644
  886    312   
index 45771c7..0000000
  887         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json
         313  +
++ /dev/null
  888    314   
@@ -1,12 +0,0 @@
  889         -
{
  890         -
    "credentials": {
  891         -
        "access_key_id": "AKIDEXAMPLE",
  892         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  893         -
    },
  894         -
    "expiration_in_seconds": 3600,
  895         -
    "normalize": true,
  896         -
    "region": "us-east-1",
  897         -
    "service": "service",
  898         -
    "sign_body": false,
  899         -
    "timestamp": "2015-08-30T12:36:00Z"
  900         -
}
  901    315   
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
  902    316   
deleted file mode 100644
  903    317   
index 45771c7..0000000
  904         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json
         318  +
++ /dev/null
  905    319   
@@ -1,12 +0,0 @@
  906         -
{
  907         -
    "credentials": {
  908         -
        "access_key_id": "AKIDEXAMPLE",
  909         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  910         -
    },
  911         -
    "expiration_in_seconds": 3600,
  912         -
    "normalize": true,
  913         -
    "region": "us-east-1",
  914         -
    "service": "service",
  915         -
    "sign_body": false,
  916         -
    "timestamp": "2015-08-30T12:36:00Z"
  917         -
}
  918    320   
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
  919    321   
deleted file mode 100644
  920    322   
index 45771c7..0000000
  921         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json
         323  +
++ /dev/null
  922    324   
@@ -1,12 +0,0 @@
  923         -
{
  924         -
    "credentials": {
  925         -
        "access_key_id": "AKIDEXAMPLE",
  926         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  927         -
    },
  928         -
    "expiration_in_seconds": 3600,
  929         -
    "normalize": true,
  930         -
    "region": "us-east-1",
  931         -
    "service": "service",
  932         -
    "sign_body": false,
  933         -
    "timestamp": "2015-08-30T12:36:00Z"
  934         -
}
  935    325   
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
  936    326   
deleted file mode 100644
  937    327   
index 45771c7..0000000
  938         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json
         328  +
++ /dev/null
  939    329   
@@ -1,12 +0,0 @@
  940         -
{
  941         -
    "credentials": {
  942         -
        "access_key_id": "AKIDEXAMPLE",
  943         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  944         -
    },
  945         -
    "expiration_in_seconds": 3600,
  946         -
    "normalize": true,
  947         -
    "region": "us-east-1",
  948         -
    "service": "service",
  949         -
    "sign_body": false,
  950         -
    "timestamp": "2015-08-30T12:36:00Z"
  951         -
}
  952    330   
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
  953    331   
deleted file mode 100644
  954    332   
index b6fdecf..0000000
  955         -
-- 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
         333  +
++ /dev/null
  956    334   
@@ -1,4 +0,0 @@
  957         -
AWS4-ECDSA-P256-SHA256
  958         -
20150830T123600Z
  959         -
20150830/service/aws4_request
  960         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
  961    335   
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
  962    336   
deleted file mode 100644
  963    337   
index a300bea..0000000
  964         -
-- 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
         338  +
++ /dev/null
  965    339   
@@ -1,4 +0,0 @@
  966         -
AWS4-ECDSA-P256-SHA256
  967         -
20150830T123600Z
  968         -
20150830/service/aws4_request
  969         -
ab426c74406d082ad98929df8969624e6ed5cb7f4e8501fbbe7d8c20e9c3b417
  970    340   
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
  971    341   
deleted file mode 100644
  972    342   
index b6fdecf..0000000
  973         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt
         343  +
++ /dev/null
  974    344   
@@ -1,4 +0,0 @@
  975         -
AWS4-ECDSA-P256-SHA256
  976         -
20150830T123600Z
  977         -
20150830/service/aws4_request
  978         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
  979    345   
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
  980    346   
new file mode 100644
  981    347   
index 0000000..a674243
  982         -
-- /dev/null
         348  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md
  983    349   
@@ -0,0 +1,7 @@
         350  +
# AWS SigV4 and SigV4A Signing Test Suite
         351  +
         352  +
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).
         353  +
         354  +
We added the following changes:
         355  +
         356  +
* 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
  984    357   
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
  985    358   
similarity index 100%
  986    359   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.creq
  987    360   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-canonical-request.txt
  988    361   
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
  989    362   
similarity index 100%
  990    363   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.sreq
  991    364   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-signed-request.txt
  992    365   
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
  993    366   
similarity index 100%
  994    367   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.req
  995    368   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/request.txt
  996    369   
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
  997    370   
similarity index 100%
  998    371   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.creq
  999    372   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-canonical-request.txt
 1000    373   
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
 1001    374   
similarity index 100%
 1002    375   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sreq
 1003    376   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-signed-request.txt
 1004    377   
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
 1005    378   
similarity index 100%
 1006    379   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sts
 1007    380   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-string-to-sign.txt
 1008    381   
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
 1009    382   
similarity index 100%
 1010    383   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.req
 1011    384   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/request.txt
 1012    385   
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
 1013    386   
similarity index 99%
 1014    387   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
 1015    388   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
 1016    389   
index 45771c7..0468d80 100644
 1017         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
         390  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
 1018    391   
@@ -1,12 +1,12 @@
 1019    392   
{
 1020    393   
    "credentials": {
 1021    394   
        "access_key_id": "AKIDEXAMPLE",
 1022    395   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1023    396   
    },
 1024    397   
    "expiration_in_seconds": 3600,
 1025    398   
    "normalize": true,
 1026    399   
    "region": "us-east-1",
 1027    400   
    "service": "service",
 1028    401   
    "sign_body": false,
 1029    402   
    "timestamp": "2015-08-30T12:36:00Z"
 1030         -
}
         403  +
}
              \
 No newline at end of file
 1031    404   
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
 1032    405   
similarity index 100%
 1033    406   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq
 1034    407   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
 1035    408   
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
 1036    409   
new file mode 100644
 1037    410   
index 0000000..7fc5d7a
 1038         -
-- /dev/null
         411  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
 1039    412   
@@ -0,0 +1 @@
         413  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
 1040    414   
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
 1041    415   
new file mode 100644
 1042    416   
index 0000000..36a1205
 1043         -
-- /dev/null
         417  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
 1044    418   
@@ -0,0 +1,8 @@
         419  +
GET / HTTP/1.1
         420  +
Host:example.amazonaws.com
         421  +
My-Header1:value2
         422  +
My-Header1:value2
         423  +
My-Header1:value1
         424  +
X-Amz-Date:20150830T123600Z
         425  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
         426  +
 1045    427   
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
 1046    428   
similarity index 100%
 1047    429   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
 1048    430   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
 1049    431   
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
 1050    432   
new file mode 100644
 1051    433   
index 0000000..f9f4190
 1052         -
-- /dev/null
         434  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
 1053    435   
@@ -0,0 +1,8 @@
         436  +
GET
         437  +
/
         438  +
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
         439  +
host:example.amazonaws.com
         440  +
my-header1:value2,value2,value1
         441  +
         442  +
host;my-header1
         443  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1054    444   
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
 1055    445   
new file mode 100644
 1056    446   
index 0000000..5d0d87f
 1057         -
-- /dev/null
         447  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
 1058    448   
@@ -0,0 +1 @@
         449  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
 1059    450   
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
 1060    451   
new file mode 100644
 1061    452   
index 0000000..c1dfcf4
 1062         -
-- /dev/null
         453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
 1063    454   
@@ -0,0 +1,6 @@
         455  +
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
         456  +
Host:example.amazonaws.com
         457  +
My-Header1:value2
         458  +
My-Header1:value2
         459  +
My-Header1:value1
         460  +
 1064    461   
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
 1065    462   
similarity index 53%
 1066    463   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
 1067    464   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1068    465   
index 0a3350a..077c1bb 100644
 1069         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
         466  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1070    467   
@@ -1,4 +1,4 @@
 1071    468   
AWS4-HMAC-SHA256
 1072    469   
20150830T123600Z
 1073    470   
20150830/us-east-1/service/aws4_request
 1074         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
         471  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
 1075    472   
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
 1076    473   
similarity index 100%
 1077    474   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
 1078    475   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
 1079    476   
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
 1080    477   
similarity index 99%
 1081    478   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
 1082    479   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1083    480   
index 45771c7..0468d80 100644
 1084         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
         481  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1085    482   
@@ -1,12 +1,12 @@
 1086    483   
{
 1087    484   
    "credentials": {
 1088    485   
        "access_key_id": "AKIDEXAMPLE",
 1089    486   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1090    487   
    },
 1091    488   
    "expiration_in_seconds": 3600,
 1092    489   
    "normalize": true,
 1093    490   
    "region": "us-east-1",
 1094    491   
    "service": "service",
 1095    492   
    "sign_body": false,
 1096    493   
    "timestamp": "2015-08-30T12:36:00Z"
 1097         -
}
         494  +
}
              \
 No newline at end of file
 1098    495   
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
 1099    496   
similarity index 82%
 1100    497   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
 1101    498   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1102    499   
index 721a39f..8cb5476 100644
 1103         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
         500  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1104    501   
@@ -1,9 +1,9 @@
 1105    502   
GET
 1106    503   
/
 1107    504   
 1108    505   
host:example.amazonaws.com
 1109         -
my-header1:value1,value2,value3
         506  +
my-header1:value1 value2 value3
 1110    507   
x-amz-date:20150830T123600Z
 1111    508   
 1112    509   
host;my-header1;x-amz-date
 1113    510   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1114    511   
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
 1115    512   
new file mode 100644
 1116    513   
index 0000000..e6ff7a9
 1117         -
-- /dev/null
         514  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
 1118    515   
@@ -0,0 +1 @@
         516  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
 1119    517   
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
 1120    518   
new file mode 100644
 1121    519   
index 0000000..b5ef6a0
 1122         -
-- /dev/null
         520  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
 1123    521   
@@ -0,0 +1,8 @@
         522  +
GET / HTTP/1.1
         523  +
Host:example.amazonaws.com
         524  +
My-Header1:value1
         525  +
  value2
         526  +
     value3
         527  +
X-Amz-Date:20150830T123600Z
         528  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         529  +
 1124    530   
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
 1125    531   
similarity index 53%
 1126    532   
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
 1127    533   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1128    534   
index fd43a41..97c7430 100644
 1129         -
-- 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
         535  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1130    536   
@@ -1,4 +1,4 @@
 1131    537   
AWS4-HMAC-SHA256
 1132    538   
20150830T123600Z
 1133    539   
20150830/us-east-1/service/aws4_request
 1134         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         540  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
 1135    541   
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
 1136    542   
new file mode 100644
 1137    543   
index 0000000..aac46de
 1138         -
-- /dev/null
         544  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
 1139    545   
@@ -0,0 +1,8 @@
         546  +
GET
         547  +
/
         548  +
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
         549  +
host:example.amazonaws.com
         550  +
my-header1:value1 value2 value3
         551  +
         552  +
host;my-header1
         553  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1140    554   
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
 1141    555   
new file mode 100644
 1142    556   
index 0000000..205732d
 1143         -
-- /dev/null
         557  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
 1144    558   
@@ -0,0 +1 @@
         559  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
 1145    560   
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
 1146    561   
new file mode 100644
 1147    562   
index 0000000..a891b87
 1148         -
-- /dev/null
         563  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
 1149    564   
@@ -0,0 +1,6 @@
         565  +
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
         566  +
Host:example.amazonaws.com
         567  +
My-Header1:value1
         568  +
  value2
         569  +
     value3
         570  +
 1150    571   
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
 1151    572   
similarity index 53%
 1152    573   
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
 1153    574   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1154    575   
index 90e66b8..ec3fe45 100644
 1155         -
-- 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
         576  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1156    577   
@@ -1,4 +1,4 @@
 1157    578   
AWS4-HMAC-SHA256
 1158    579   
20150830T123600Z
 1159    580   
20150830/us-east-1/service/aws4_request
 1160         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         581  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
 1161    582   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1162    583   
similarity index 75%
 1163    584   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
 1164    585   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1165    586   
index 7caa6ac..b5026cd 100644
 1166         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         587  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1167    588   
@@ -1,6 +1,5 @@
 1168    589   
GET / HTTP/1.1
 1169    590   
Host:example.amazonaws.com
 1170    591   
My-Header1:value1
 1171    592   
  value2
 1172    593   
     value3
 1173         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1174    594   
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
 1175    595   
similarity index 99%
 1176    596   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
 1177    597   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1178    598   
index 45771c7..0468d80 100644
 1179         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
         599  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1180    600   
@@ -1,12 +1,12 @@
 1181    601   
{
 1182    602   
    "credentials": {
 1183    603   
        "access_key_id": "AKIDEXAMPLE",
 1184    604   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1185    605   
    },
 1186    606   
    "expiration_in_seconds": 3600,
 1187    607   
    "normalize": true,
 1188    608   
    "region": "us-east-1",
 1189    609   
    "service": "service",
 1190    610   
    "sign_body": false,
 1191    611   
    "timestamp": "2015-08-30T12:36:00Z"
 1192         -
}
         612  +
}
              \
 No newline at end of file
 1193    613   
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
 1194    614   
similarity index 100%
 1195    615   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
 1196    616   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1197    617   
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
 1198    618   
new file mode 100644
 1199    619   
index 0000000..8ef0494
 1200         -
-- /dev/null
         620  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1201    621   
@@ -0,0 +1 @@
         622  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
 1202    623   
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
 1203    624   
new file mode 100644
 1204    625   
index 0000000..b786dc9
 1205         -
-- /dev/null
         626  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1206    627   
@@ -0,0 +1,9 @@
         628  +
GET / HTTP/1.1
         629  +
Host:example.amazonaws.com
         630  +
My-Header1:value4
         631  +
My-Header1:value1
         632  +
My-Header1:value3
         633  +
My-Header1:value2
         634  +
X-Amz-Date:20150830T123600Z
         635  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         636  +
 1207    637   
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
 1208    638   
similarity index 100%
 1209    639   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
 1210    640   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1211    641   
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
 1212    642   
new file mode 100644
 1213    643   
index 0000000..a211cc5
 1214         -
-- /dev/null
         644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1215    645   
@@ -0,0 +1,8 @@
         646  +
GET
         647  +
/
         648  +
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
         649  +
host:example.amazonaws.com
         650  +
my-header1:value4,value1,value3,value2
         651  +
         652  +
host;my-header1
         653  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1216    654   
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
 1217    655   
new file mode 100644
 1218    656   
index 0000000..417b0fa
 1219         -
-- /dev/null
         657  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1220    658   
@@ -0,0 +1 @@
         659  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
 1221    660   
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
 1222    661   
new file mode 100644
 1223    662   
index 0000000..b615e5d
 1224         -
-- /dev/null
         663  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1225    664   
@@ -0,0 +1,7 @@
         665  +
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
         666  +
Host:example.amazonaws.com
         667  +
My-Header1:value4
         668  +
My-Header1:value1
         669  +
My-Header1:value3
         670  +
My-Header1:value2
         671  +
 1226    672   
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
 1227    673   
similarity index 53%
 1228    674   
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
 1229    675   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1230    676   
index f7e615e..dcaaa1b 100644
 1231         -
-- 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
         677  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1232    678   
@@ -1,4 +1,4 @@
 1233    679   
AWS4-HMAC-SHA256
 1234    680   
20150830T123600Z
 1235    681   
20150830/us-east-1/service/aws4_request
 1236         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         682  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
 1237    683   
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
 1238    684   
similarity index 100%
 1239    685   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
 1240    686   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1241    687   
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
 1242    688   
similarity index 99%
 1243    689   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
 1244    690   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1245    691   
index 45771c7..0468d80 100644
 1246         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
         692  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1247    693   
@@ -1,12 +1,12 @@
 1248    694   
{
 1249    695   
    "credentials": {
 1250    696   
        "access_key_id": "AKIDEXAMPLE",
 1251    697   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1252    698   
    },
 1253    699   
    "expiration_in_seconds": 3600,
 1254    700   
    "normalize": true,
 1255    701   
    "region": "us-east-1",
 1256    702   
    "service": "service",
 1257    703   
    "sign_body": false,
 1258    704   
    "timestamp": "2015-08-30T12:36:00Z"
 1259         -
}
         705  +
}
              \
 No newline at end of file
 1260    706   
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
 1261    707   
similarity index 100%
 1262    708   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
 1263    709   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1264    710   
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
 1265    711   
new file mode 100644
 1266    712   
index 0000000..36081a9
 1267         -
-- /dev/null
         713  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1268    714   
@@ -0,0 +1 @@
         715  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
 1269    716   
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
 1270    717   
new file mode 100644
 1271    718   
index 0000000..6331d16
 1272         -
-- /dev/null
         719  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1273    720   
@@ -0,0 +1,7 @@
         721  +
GET / HTTP/1.1
         722  +
Host:example.amazonaws.com
         723  +
My-Header1: value1
         724  +
My-Header2: "a   b   c"
         725  +
X-Amz-Date:20150830T123600Z
         726  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         727  +
 1274    728   
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
 1275    729   
similarity index 100%
 1276    730   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
 1277    731   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1278    732   
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
 1279    733   
new file mode 100644
 1280    734   
index 0000000..125c1f9
 1281         -
-- /dev/null
         735  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1282    736   
@@ -0,0 +1,9 @@
         737  +
GET
         738  +
/
         739  +
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
         740  +
host:example.amazonaws.com
         741  +
my-header1:value1
         742  +
my-header2:"a b c"
         743  +
         744  +
host;my-header1;my-header2
         745  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1283    746   
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
 1284    747   
new file mode 100644
 1285    748   
index 0000000..17007a8
 1286         -
-- /dev/null
         749  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1287    750   
@@ -0,0 +1 @@
         751  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
 1288    752   
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
 1289    753   
new file mode 100644
 1290    754   
index 0000000..e519fd9
 1291         -
-- /dev/null
         755  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1292    756   
@@ -0,0 +1,5 @@
         757  +
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
         758  +
Host:example.amazonaws.com
         759  +
My-Header1: value1
         760  +
My-Header2: "a   b   c"
         761  +
 1293    762   
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
 1294    763   
new file mode 100644
 1295    764   
index 0000000..6b4b781
 1296         -
-- /dev/null
         765  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1297    766   
@@ -0,0 +1,4 @@
         767  +
AWS4-HMAC-SHA256
         768  +
20150830T123600Z
         769  +
20150830/us-east-1/service/aws4_request
         770  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
 1298    771   
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
 1299    772   
similarity index 100%
 1300    773   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
 1301    774   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1302    775   
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
 1303    776   
new file mode 100644
 1304    777   
index 0000000..0468d80
 1305         -
-- /dev/null
         778  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1306    779   
@@ -0,0 +1,12 @@
         780  +
{
         781  +
    "credentials": {
         782  +
        "access_key_id": "AKIDEXAMPLE",
         783  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         784  +
    },
         785  +
    "expiration_in_seconds": 3600,
         786  +
    "normalize": true,
         787  +
    "region": "us-east-1",
         788  +
    "service": "service",
         789  +
    "sign_body": false,
         790  +
    "timestamp": "2015-08-30T12:36:00Z"
         791  +
}
              \
 No newline at end of file
 1307    792   
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
 1308    793   
similarity index 100%
 1309    794   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
 1310    795   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1311    796   
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
 1312    797   
new file mode 100644
 1313    798   
index 0000000..87f295f
 1314         -
-- /dev/null
         799  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1315    800   
@@ -0,0 +1 @@
         801  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1316    802   
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
 1317    803   
new file mode 100644
 1318    804   
index 0000000..0de8327
 1319         -
-- /dev/null
         805  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1320    806   
@@ -0,0 +1,5 @@
         807  +
GET /example/.. HTTP/1.1
         808  +
Host:example.amazonaws.com
         809  +
X-Amz-Date:20150830T123600Z
         810  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         811  +
 1321    812   
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
 1322    813   
similarity index 100%
 1323    814   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
 1324    815   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1325    816   
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
 1326    817   
new file mode 100644
 1327    818   
index 0000000..fb2420d
 1328         -
-- /dev/null
         819  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1329    820   
@@ -0,0 +1,7 @@
         821  +
GET
         822  +
/
         823  +
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
         824  +
host:example.amazonaws.com
         825  +
         826  +
host
         827  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1330    828   
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
 1331    829   
new file mode 100644
 1332    830   
index 0000000..da5c905
 1333         -
-- /dev/null
         831  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1334    832   
@@ -0,0 +1 @@
         833  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1335    834   
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
 1336    835   
new file mode 100644
 1337    836   
index 0000000..4329c98
 1338         -
-- /dev/null
         837  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1339    838   
@@ -0,0 +1,3 @@
         839  +
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
         840  +
Host:example.amazonaws.com
         841  +
 1340    842   
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
 1341    843   
new file mode 100644
 1342    844   
index 0000000..d837e67
 1343         -
-- /dev/null
         845  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1344    846   
@@ -0,0 +1,4 @@
         847  +
AWS4-HMAC-SHA256
         848  +
20150830T123600Z
         849  +
20150830/us-east-1/service/aws4_request
         850  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1345    851   
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
 1346    852   
similarity index 100%
 1347    853   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
 1348    854   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1349    855   
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
 1350    856   
new file mode 100644
 1351    857   
index 0000000..0468d80
 1352         -
-- /dev/null
         858  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1353    859   
@@ -0,0 +1,12 @@
         860  +
{
         861  +
    "credentials": {
         862  +
        "access_key_id": "AKIDEXAMPLE",
         863  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         864  +
    },
         865  +
    "expiration_in_seconds": 3600,
         866  +
    "normalize": true,
         867  +
    "region": "us-east-1",
         868  +
    "service": "service",
         869  +
    "sign_body": false,
         870  +
    "timestamp": "2015-08-30T12:36:00Z"
         871  +
}
              \
 No newline at end of file
 1354    872   
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
 1355    873   
similarity index 100%
 1356    874   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
 1357    875   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1358    876   
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
 1359    877   
new file mode 100644
 1360    878   
index 0000000..87f295f
 1361         -
-- /dev/null
         879  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1362    880   
@@ -0,0 +1 @@
         881  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1363    882   
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
 1364    883   
new file mode 100644
 1365    884   
index 0000000..f9b3815
 1366         -
-- /dev/null
         885  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1367    886   
@@ -0,0 +1,5 @@
         887  +
GET /example1/example2/../.. HTTP/1.1
         888  +
Host:example.amazonaws.com
         889  +
X-Amz-Date:20150830T123600Z
         890  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         891  +
 1368    892   
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
 1369    893   
similarity index 100%
 1370    894   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
 1371    895   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1372    896   
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
 1373    897   
new file mode 100644
 1374    898   
index 0000000..fb2420d
 1375         -
-- /dev/null
         899  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1376    900   
@@ -0,0 +1,7 @@
         901  +
GET
         902  +
/
         903  +
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
         904  +
host:example.amazonaws.com
         905  +
         906  +
host
         907  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1377    908   
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
 1378    909   
new file mode 100644
 1379    910   
index 0000000..da5c905
 1380         -
-- /dev/null
         911  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1381    912   
@@ -0,0 +1 @@
         913  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1382    914   
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
 1383    915   
new file mode 100644
 1384    916   
index 0000000..b2988b7
 1385         -
-- /dev/null
         917  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1386    918   
@@ -0,0 +1,3 @@
         919  +
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
         920  +
Host:example.amazonaws.com
         921  +
 1387    922   
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
 1388    923   
new file mode 100644
 1389    924   
index 0000000..d837e67
 1390         -
-- /dev/null
         925  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1391    926   
@@ -0,0 +1,4 @@
         927  +
AWS4-HMAC-SHA256
         928  +
20150830T123600Z
         929  +
20150830/us-east-1/service/aws4_request
         930  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1392    931   
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
 1393    932   
similarity index 100%
 1394    933   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
 1395    934   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1396    935   
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
 1397    936   
similarity index 99%
 1398    937   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
 1399    938   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1400    939   
index afe367b..7bee5c7 100644
 1401         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
         940  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1402    941   
@@ -1,12 +1,12 @@
 1403    942   
{
 1404    943   
    "credentials": {
 1405    944   
        "access_key_id": "AKIDEXAMPLE",
 1406    945   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1407    946   
    },
 1408    947   
    "expiration_in_seconds": 3600,
 1409    948   
    "normalize": false,
 1410    949   
    "region": "us-east-1",
 1411    950   
    "service": "service",
 1412    951   
    "sign_body": false,
 1413    952   
    "timestamp": "2015-08-30T12:36:00Z"
 1414         -
}
         953  +
}
              \
 No newline at end of file
 1415    954   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1416    955   
similarity index 82%
 1417    956   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.creq
 1418    957   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1419    958   
index 36c3cdf..6919c44 100644
 1420         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.creq
         959  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1421    960   
@@ -1,8 +1,8 @@
 1422    961   
GET
 1423         -
/
 1424         -
Param1=Value1&Param1=value2
         962  +
/example1/example2/../..
         963  +
 1425    964   
host:example.amazonaws.com
 1426    965   
x-amz-date:20150830T123600Z
 1427    966   
 1428    967   
host;x-amz-date
 1429    968   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1430    969   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1431    970   
new file mode 100644
 1432    971   
index 0000000..4092d83
 1433         -
-- /dev/null
         972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1434    973   
@@ -0,0 +1 @@
         974  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
 1435    975   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1436    976   
new file mode 100644
 1437    977   
index 0000000..e731b35
 1438         -
-- /dev/null
         978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1439    979   
@@ -0,0 +1,5 @@
         980  +
GET /example1/example2/../.. HTTP/1.1
         981  +
Host:example.amazonaws.com
         982  +
X-Amz-Date:20150830T123600Z
         983  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
         984  +
 1440    985   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1441    986   
new file mode 100644
 1442    987   
index 0000000..4f45752
 1443         -
-- /dev/null
         988  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1444    989   
@@ -0,0 +1,4 @@
         990  +
AWS4-HMAC-SHA256
         991  +
20150830T123600Z
         992  +
20150830/us-east-1/service/aws4_request
         993  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
 1445    994   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1446    995   
new file mode 100644
 1447    996   
index 0000000..e1fb07d
 1448         -
-- /dev/null
         997  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1449    998   
@@ -0,0 +1,7 @@
         999  +
GET
        1000  +
/example1/example2/../..
        1001  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1002  +
host:example.amazonaws.com
        1003  +
        1004  +
host
        1005  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1450   1006   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1451   1007   
new file mode 100644
 1452   1008   
index 0000000..8ac31d7
 1453         -
-- /dev/null
        1009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1454   1010   
@@ -0,0 +1 @@
        1011  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
 1455   1012   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1456   1013   
new file mode 100644
 1457   1014   
index 0000000..ac074f9
 1458         -
-- /dev/null
        1015  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1459   1016   
@@ -0,0 +1,3 @@
        1017  +
GET /example1/example2/../..?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16 HTTP/1.1
        1018  +
Host:example.amazonaws.com
        1019  +
 1460   1020   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1461   1021   
new file mode 100644
 1462   1022   
index 0000000..8dcb6ff
 1463         -
-- /dev/null
        1023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1464   1024   
@@ -0,0 +1,4 @@
        1025  +
AWS4-HMAC-SHA256
        1026  +
20150830T123600Z
        1027  +
20150830/us-east-1/service/aws4_request
        1028  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
 1465   1029   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1466   1030   
similarity index 100%
 1467   1031   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
 1468   1032   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1469   1033   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1470   1034   
similarity index 99%
 1471   1035   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
 1472   1036   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1473   1037   
index afe367b..7bee5c7 100644
 1474         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
        1038  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1475   1039   
@@ -1,12 +1,12 @@
 1476   1040   
{
 1477   1041   
    "credentials": {
 1478   1042   
        "access_key_id": "AKIDEXAMPLE",
 1479   1043   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1480   1044   
    },
 1481   1045   
    "expiration_in_seconds": 3600,
 1482   1046   
    "normalize": false,
 1483   1047   
    "region": "us-east-1",
 1484   1048   
    "service": "service",
 1485   1049   
    "sign_body": false,
 1486   1050   
    "timestamp": "2015-08-30T12:36:00Z"
 1487         -
}
        1051  +
}
              \
 No newline at end of file
 1488   1052   
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
 1489   1053   
similarity index 82%
 1490   1054   
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
 1491   1055   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1492   1056   
index 26898eb..f640bc2 100644
 1493         -
-- 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
        1057  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1494   1058   
@@ -1,8 +1,8 @@
 1495   1059   
GET
 1496         -
/
 1497         -
Param1=value1&Param1=value2
        1060  +
/example/..
        1061  +
 1498   1062   
host:example.amazonaws.com
 1499   1063   
x-amz-date:20150830T123600Z
 1500   1064   
 1501   1065   
host;x-amz-date
 1502   1066   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1503   1067   
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
 1504   1068   
new file mode 100644
 1505   1069   
index 0000000..d957303
 1506         -
-- /dev/null
        1070  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1507   1071   
@@ -0,0 +1 @@
        1072  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
 1508   1073   
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
 1509   1074   
new file mode 100644
 1510   1075   
index 0000000..4f42ffc
 1511         -
-- /dev/null
        1076  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1512   1077   
@@ -0,0 +1,5 @@
        1078  +
GET /example/.. HTTP/1.1
        1079  +
Host:example.amazonaws.com
        1080  +
X-Amz-Date:20150830T123600Z
        1081  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
        1082  +
 1513   1083   
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
 1514   1084   
new file mode 100644
 1515   1085   
index 0000000..ca54bda
 1516         -
-- /dev/null
        1086  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1517   1087   
@@ -0,0 +1,4 @@
        1088  +
AWS4-HMAC-SHA256
        1089  +
20150830T123600Z
        1090  +
20150830/us-east-1/service/aws4_request
        1091  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
 1518   1092   
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
 1519   1093   
new file mode 100644
 1520   1094   
index 0000000..dc80036
 1521         -
-- /dev/null
        1095  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1522   1096   
@@ -0,0 +1,7 @@
        1097  +
GET
        1098  +
/example/..
        1099  +
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
        1100  +
host:example.amazonaws.com
        1101  +
        1102  +
host
        1103  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1523   1104   
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
 1524   1105   
new file mode 100644
 1525   1106   
index 0000000..dfa0437
 1526         -
-- /dev/null
        1107  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1527   1108   
@@ -0,0 +1 @@
        1109  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
 1528   1110   
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
 1529   1111   
new file mode 100644
 1530   1112   
index 0000000..98367b1
 1531         -
-- /dev/null
        1113  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1532   1114   
@@ -0,0 +1,3 @@
        1115  +
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
        1116  +
Host:example.amazonaws.com
        1117  +
 1533   1118   
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
 1534   1119   
new file mode 100644
 1535   1120   
index 0000000..f65dd66
 1536         -
-- /dev/null
        1121  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1537   1122   
@@ -0,0 +1,4 @@
        1123  +
AWS4-HMAC-SHA256
        1124  +
20150830T123600Z
        1125  +
20150830/us-east-1/service/aws4_request
        1126  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
 1538   1127   
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
 1539   1128   
similarity index 100%
 1540   1129   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
 1541   1130   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1542   1131   
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
 1543   1132   
new file mode 100644
 1544   1133   
index 0000000..0468d80
 1545         -
-- /dev/null
        1134  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1546   1135   
@@ -0,0 +1,12 @@
        1136  +
{
        1137  +
    "credentials": {
        1138  +
        "access_key_id": "AKIDEXAMPLE",
        1139  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1140  +
    },
        1141  +
    "expiration_in_seconds": 3600,
        1142  +
    "normalize": true,
        1143  +
    "region": "us-east-1",
        1144  +
    "service": "service",
        1145  +
    "sign_body": false,
        1146  +
    "timestamp": "2015-08-30T12:36:00Z"
        1147  +
}
              \
 No newline at end of file
 1547   1148   
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
 1548   1149   
similarity index 100%
 1549   1150   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
 1550   1151   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1551   1152   
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
 1552   1153   
new file mode 100644
 1553   1154   
index 0000000..87f295f
 1554         -
-- /dev/null
        1155  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1555   1156   
@@ -0,0 +1 @@
        1157  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1556   1158   
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
 1557   1159   
new file mode 100644
 1558   1160   
index 0000000..99c8eeb
 1559         -
-- /dev/null
        1161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1560   1162   
@@ -0,0 +1,5 @@
        1163  +
GET /./ HTTP/1.1
        1164  +
Host:example.amazonaws.com
        1165  +
X-Amz-Date:20150830T123600Z
        1166  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1167  +
 1561   1168   
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
 1562   1169   
similarity index 100%
 1563   1170   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
 1564   1171   
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
 1565   1172   
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
 1566   1173   
new file mode 100644
 1567   1174   
index 0000000..fb2420d
 1568         -
-- /dev/null
        1175  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1569   1176   
@@ -0,0 +1,7 @@
        1177  +
GET
        1178  +
/
        1179  +
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
        1180  +
host:example.amazonaws.com
        1181  +
        1182  +
host
        1183  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1570   1184   
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
 1571   1185   
new file mode 100644
 1572   1186   
index 0000000..da5c905
 1573         -
-- /dev/null
        1187  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1574   1188   
@@ -0,0 +1 @@
        1189  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1575   1190   
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
 1576   1191   
new file mode 100644
 1577   1192   
index 0000000..2e47f69
 1578         -
-- /dev/null
        1193  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1579   1194   
@@ -0,0 +1,3 @@
        1195  +
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
        1196  +
Host:example.amazonaws.com
        1197  +
 1580   1198   
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
 1581   1199   
new file mode 100644
 1582   1200   
index 0000000..d837e67
 1583         -
-- /dev/null
        1201  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1584   1202   
@@ -0,0 +1,4 @@
        1203  +
AWS4-HMAC-SHA256
        1204  +
20150830T123600Z
        1205  +
20150830/us-east-1/service/aws4_request
        1206  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1585   1207   
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
 1586   1208   
similarity index 100%
 1587   1209   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
 1588   1210   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1589   1211   
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
 1590   1212   
similarity index 99%
 1591   1213   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
 1592   1214   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1593   1215   
index afe367b..7bee5c7 100644
 1594         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
        1216  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1595   1217   
@@ -1,12 +1,12 @@
 1596   1218   
{
 1597   1219   
    "credentials": {
 1598   1220   
        "access_key_id": "AKIDEXAMPLE",
 1599   1221   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1600   1222   
    },
 1601   1223   
    "expiration_in_seconds": 3600,
 1602   1224   
    "normalize": false,
 1603   1225   
    "region": "us-east-1",
 1604   1226   
    "service": "service",
 1605   1227   
    "sign_body": false,
 1606   1228   
    "timestamp": "2015-08-30T12:36:00Z"
 1607         -
}
        1229  +
}
              \
 No newline at end of file
 1608   1230   
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
 1609   1231   
new file mode 100644
 1610   1232   
index 0000000..5159048
 1611         -
-- /dev/null
        1233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1612   1234   
@@ -0,0 +1,8 @@
        1235  +
GET
        1236  +
/./
        1237  +
        1238  +
host:example.amazonaws.com
        1239  +
x-amz-date:20150830T123600Z
        1240  +
        1241  +
host;x-amz-date
        1242  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1613   1243   
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
 1614   1244   
new file mode 100644
 1615   1245   
index 0000000..b49ff0e
 1616         -
-- /dev/null
        1246  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1617   1247   
@@ -0,0 +1 @@
        1248  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
 1618   1249   
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
 1619   1250   
new file mode 100644
 1620   1251   
index 0000000..aeb1ffa
 1621         -
-- /dev/null
        1252  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1622   1253   
@@ -0,0 +1,5 @@
        1254  +
GET /./ HTTP/1.1
        1255  +
Host:example.amazonaws.com
        1256  +
X-Amz-Date:20150830T123600Z
        1257  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
        1258  +
 1623   1259   
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
 1624   1260   
new file mode 100644
 1625   1261   
index 0000000..b7d8caf
 1626         -
-- /dev/null
        1262  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1627   1263   
@@ -0,0 +1,4 @@
        1264  +
AWS4-HMAC-SHA256
        1265  +
20150830T123600Z
        1266  +
20150830/us-east-1/service/aws4_request
        1267  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
 1628   1268   
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
 1629   1269   
new file mode 100644
 1630   1270   
index 0000000..d4e029e
 1631         -
-- /dev/null
        1271  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1632   1272   
@@ -0,0 +1,7 @@
        1273  +
GET
        1274  +
/./
        1275  +
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
        1276  +
host:example.amazonaws.com
        1277  +
        1278  +
host
        1279  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1633   1280   
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
 1634   1281   
new file mode 100644
 1635   1282   
index 0000000..fe8f4cc
 1636         -
-- /dev/null
        1283  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1637   1284   
@@ -0,0 +1 @@
        1285  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
 1638   1286   
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
 1639   1287   
new file mode 100644
 1640   1288   
index 0000000..dcc4fc4
 1641         -
-- /dev/null
        1289  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1642   1290   
@@ -0,0 +1,3 @@
        1291  +
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
        1292  +
Host:example.amazonaws.com
        1293  +
 1643   1294   
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
 1644   1295   
new file mode 100644
 1645   1296   
index 0000000..5fb3ada
 1646         -
-- /dev/null
        1297  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1647   1298   
@@ -0,0 +1,4 @@
        1299  +
AWS4-HMAC-SHA256
        1300  +
20150830T123600Z
        1301  +
20150830/us-east-1/service/aws4_request
        1302  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
 1648   1303   
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
 1649   1304   
similarity index 100%
 1650   1305   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
 1651   1306   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1652   1307   
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
 1653   1308   
new file mode 100644
 1654   1309   
index 0000000..0468d80
 1655         -
-- /dev/null
        1310  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1656   1311   
@@ -0,0 +1,12 @@
        1312  +
{
        1313  +
    "credentials": {
        1314  +
        "access_key_id": "AKIDEXAMPLE",
        1315  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1316  +
    },
        1317  +
    "expiration_in_seconds": 3600,
        1318  +
    "normalize": true,
        1319  +
    "region": "us-east-1",
        1320  +
    "service": "service",
        1321  +
    "sign_body": false,
        1322  +
    "timestamp": "2015-08-30T12:36:00Z"
        1323  +
}
              \
 No newline at end of file
 1657   1324   
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
 1658   1325   
similarity index 100%
 1659   1326   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
 1660   1327   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1661   1328   
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
 1662   1329   
new file mode 100644
 1663   1330   
index 0000000..87f295f
 1664         -
-- /dev/null
        1331  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1665   1332   
@@ -0,0 +1 @@
        1333  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1666   1334   
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
 1667   1335   
new file mode 100644
 1668   1336   
index 0000000..b91087b
 1669         -
-- /dev/null
        1337  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1670   1338   
@@ -0,0 +1,5 @@
        1339  +
GET // HTTP/1.1
        1340  +
Host:example.amazonaws.com
        1341  +
X-Amz-Date:20150830T123600Z
        1342  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1343  +
 1671   1344   
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
 1672   1345   
similarity index 100%
 1673   1346   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
 1674   1347   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1675   1348   
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
 1676   1349   
new file mode 100644
 1677   1350   
index 0000000..fb2420d
 1678         -
-- /dev/null
        1351  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1679   1352   
@@ -0,0 +1,7 @@
        1353  +
GET
        1354  +
/
        1355  +
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
        1356  +
host:example.amazonaws.com
        1357  +
        1358  +
host
        1359  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1680   1360   
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
 1681   1361   
new file mode 100644
 1682   1362   
index 0000000..da5c905
 1683         -
-- /dev/null
        1363  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1684   1364   
@@ -0,0 +1 @@
        1365  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1685   1366   
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
 1686   1367   
new file mode 100644
 1687   1368   
index 0000000..0290ba4
 1688         -
-- /dev/null
        1369  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1689   1370   
@@ -0,0 +1,3 @@
        1371  +
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
        1372  +
Host:example.amazonaws.com
        1373  +
 1690   1374   
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
 1691   1375   
new file mode 100644
 1692   1376   
index 0000000..d837e67
 1693         -
-- /dev/null
        1377  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1694   1378   
@@ -0,0 +1,4 @@
        1379  +
AWS4-HMAC-SHA256
        1380  +
20150830T123600Z
        1381  +
20150830/us-east-1/service/aws4_request
        1382  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1695   1383   
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
 1696   1384   
similarity index 100%
 1697   1385   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
 1698   1386   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1699   1387   
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
 1700   1388   
new file mode 100644
 1701   1389   
index 0000000..0468d80
 1702         -
-- /dev/null
        1390  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1703   1391   
@@ -0,0 +1,12 @@
        1392  +
{
        1393  +
    "credentials": {
        1394  +
        "access_key_id": "AKIDEXAMPLE",
        1395  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1396  +
    },
        1397  +
    "expiration_in_seconds": 3600,
        1398  +
    "normalize": true,
        1399  +
    "region": "us-east-1",
        1400  +
    "service": "service",
        1401  +
    "sign_body": false,
        1402  +
    "timestamp": "2015-08-30T12:36:00Z"
        1403  +
}
              \
 No newline at end of file
 1704   1404   
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
 1705   1405   
similarity index 100%
 1706   1406   
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
 1707   1407   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1708   1408   
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
 1709   1409   
new file mode 100644
 1710   1410   
index 0000000..8f892bf
 1711         -
-- /dev/null
        1411  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1712   1412   
@@ -0,0 +1 @@
        1413  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
 1713   1414   
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
 1714   1415   
new file mode 100644
 1715   1416   
index 0000000..2a1895c
 1716         -
-- /dev/null
        1417  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1717   1418   
@@ -0,0 +1,5 @@
        1419  +
GET /./example HTTP/1.1
        1420  +
Host:example.amazonaws.com
        1421  +
X-Amz-Date:20150830T123600Z
        1422  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
        1423  +
 1718   1424   
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
 1719   1425   
similarity index 100%
 1720   1426   
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
 1721   1427   
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
 1722   1428   
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
 1723   1429   
new file mode 100644
 1724   1430   
index 0000000..99dfc2a
 1725         -
-- /dev/null
        1431  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1726   1432   
@@ -0,0 +1,7 @@
        1433  +
GET
        1434  +
/example
        1435  +
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
        1436  +
host:example.amazonaws.com
        1437  +
        1438  +
host
        1439  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1727   1440   
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
 1728   1441   
new file mode 100644
 1729   1442   
index 0000000..fcd7a17
 1730         -
-- /dev/null
        1443  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1731   1444   
@@ -0,0 +1 @@
        1445  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
 1732   1446   
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
 1733   1447   
new file mode 100644
 1734   1448   
index 0000000..f671de2
 1735         -
-- /dev/null
        1449  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1736   1450   
@@ -0,0 +1,3 @@
        1451  +
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
        1452  +
Host:example.amazonaws.com
        1453  +
 1737   1454   
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
 1738   1455   
new file mode 100644
 1739   1456   
index 0000000..f8456dc
 1740         -
-- /dev/null
        1457  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1741   1458   
@@ -0,0 +1,4 @@
        1459  +
AWS4-HMAC-SHA256
        1460  +
20150830T123600Z
        1461  +
20150830/us-east-1/service/aws4_request
        1462  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
 1742   1463   
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
 1743   1464   
similarity index 100%
 1744   1465   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
 1745   1466   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1746   1467   
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
 1747   1468   
similarity index 99%
 1748   1469   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
 1749   1470   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1750   1471   
index afe367b..7bee5c7 100644
 1751         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
        1472  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1752   1473   
@@ -1,12 +1,12 @@
 1753   1474   
{
 1754   1475   
    "credentials": {
 1755   1476   
        "access_key_id": "AKIDEXAMPLE",
 1756   1477   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1757   1478   
    },
 1758   1479   
    "expiration_in_seconds": 3600,
 1759   1480   
    "normalize": false,
 1760   1481   
    "region": "us-east-1",
 1761   1482   
    "service": "service",
 1762   1483   
    "sign_body": false,
 1763   1484   
    "timestamp": "2015-08-30T12:36:00Z"
 1764         -
}
        1485  +
}
              \
 No newline at end of file
 1765   1486   
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
 1766   1487   
new file mode 100644
 1767   1488   
index 0000000..36698c7
 1768         -
-- /dev/null
        1489  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 1769   1490   
@@ -0,0 +1,8 @@
        1491  +
GET
        1492  +
/./example
        1493  +
        1494  +
host:example.amazonaws.com
        1495  +
x-amz-date:20150830T123600Z
        1496  +
        1497  +
host;x-amz-date
        1498  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1770   1499   
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
 1771   1500   
new file mode 100644
 1772   1501   
index 0000000..4a4b8f2
 1773         -
-- /dev/null
        1502  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 1774   1503   
@@ -0,0 +1 @@
        1504  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
 1775   1505   
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
 1776   1506   
new file mode 100644
 1777   1507   
index 0000000..d462bcd
 1778         -
-- /dev/null
        1508  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 1779   1509   
@@ -0,0 +1,5 @@
        1510  +
GET /./example HTTP/1.1
        1511  +
Host:example.amazonaws.com
        1512  +
X-Amz-Date:20150830T123600Z
        1513  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1514  +
 1780   1515   
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
 1781   1516   
new file mode 100644
 1782   1517   
index 0000000..8be78c9
 1783         -
-- /dev/null
        1518  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 1784   1519   
@@ -0,0 +1,4 @@
        1520  +
AWS4-HMAC-SHA256
        1521  +
20150830T123600Z
        1522  +
20150830/us-east-1/service/aws4_request
        1523  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
 1785   1524   
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
 1786   1525   
new file mode 100644
 1787   1526   
index 0000000..fe1103c
 1788         -
-- /dev/null
        1527  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 1789   1528   
@@ -0,0 +1,7 @@
        1529  +
GET
        1530  +
/./example
        1531  +
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
        1532  +
host:example.amazonaws.com
        1533  +
        1534  +
host
        1535  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1790   1536   
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
 1791   1537   
new file mode 100644
 1792   1538   
index 0000000..ce80762
 1793         -
-- /dev/null
        1539  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 1794   1540   
@@ -0,0 +1 @@
        1541  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
 1795   1542   
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
 1796   1543   
new file mode 100644
 1797   1544   
index 0000000..30841a6
 1798         -
-- /dev/null
        1545  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 1799   1546   
@@ -0,0 +1,3 @@
        1547  +
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
        1548  +
Host:example.amazonaws.com
        1549  +
 1800   1550   
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
 1801   1551   
new file mode 100644
 1802   1552   
index 0000000..5c66509
 1803         -
-- /dev/null
        1553  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 1804   1554   
@@ -0,0 +1,4 @@
        1555  +
AWS4-HMAC-SHA256
        1556  +
20150830T123600Z
        1557  +
20150830/us-east-1/service/aws4_request
        1558  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
 1805   1559   
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
 1806   1560   
similarity index 100%
 1807   1561   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
 1808   1562   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 1809   1563   
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
 1810   1564   
new file mode 100644
 1811   1565   
index 0000000..7bee5c7
 1812         -
-- /dev/null
        1566  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 1813   1567   
@@ -0,0 +1,12 @@
        1568  +
{
        1569  +
    "credentials": {
        1570  +
        "access_key_id": "AKIDEXAMPLE",
        1571  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1572  +
    },
        1573  +
    "expiration_in_seconds": 3600,
        1574  +
    "normalize": false,
        1575  +
    "region": "us-east-1",
        1576  +
    "service": "service",
        1577  +
    "sign_body": false,
        1578  +
    "timestamp": "2015-08-30T12:36:00Z"
        1579  +
}
              \
 No newline at end of file
 1814   1580   
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
 1815   1581   
new file mode 100644
 1816   1582   
index 0000000..5860c8a
 1817         -
-- /dev/null
        1583  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 1818   1584   
@@ -0,0 +1,8 @@
        1585  +
GET
        1586  +
//
        1587  +
        1588  +
host:example.amazonaws.com
        1589  +
x-amz-date:20150830T123600Z
        1590  +
        1591  +
host;x-amz-date
        1592  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1819   1593   
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
 1820   1594   
new file mode 100644
 1821   1595   
index 0000000..8310471
 1822         -
-- /dev/null
        1596  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 1823   1597   
@@ -0,0 +1 @@
        1598  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
 1824   1599   
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
 1825   1600   
new file mode 100644
 1826   1601   
index 0000000..2a7afef
 1827         -
-- /dev/null
        1602  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 1828   1603   
@@ -0,0 +1,5 @@
        1604  +
GET // HTTP/1.1
        1605  +
Host:example.amazonaws.com
        1606  +
X-Amz-Date:20150830T123600Z
        1607  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1608  +
 1829   1609   
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
 1830   1610   
new file mode 100644
 1831   1611   
index 0000000..06059dd
 1832         -
-- /dev/null
        1612  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 1833   1613   
@@ -0,0 +1,4 @@
        1614  +
AWS4-HMAC-SHA256
        1615  +
20150830T123600Z
        1616  +
20150830/us-east-1/service/aws4_request
        1617  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
 1834   1618   
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
 1835   1619   
new file mode 100644
 1836   1620   
index 0000000..6d63aef
 1837         -
-- /dev/null
        1621  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 1838   1622   
@@ -0,0 +1,7 @@
        1623  +
GET
        1624  +
//
        1625  +
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
        1626  +
host:example.amazonaws.com
        1627  +
        1628  +
host
        1629  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1839   1630   
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
 1840   1631   
new file mode 100644
 1841   1632   
index 0000000..e5b7b6c
 1842         -
-- /dev/null
        1633  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 1843   1634   
@@ -0,0 +1 @@
        1635  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
 1844   1636   
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
 1845   1637   
new file mode 100644
 1846   1638   
index 0000000..46fe3fd
 1847         -
-- /dev/null
        1639  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 1848   1640   
@@ -0,0 +1,3 @@
        1641  +
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
        1642  +
Host:example.amazonaws.com
        1643  +
 1849   1644   
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
 1850   1645   
new file mode 100644
 1851   1646   
index 0000000..ea79940
 1852         -
-- /dev/null
        1647  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 1853   1648   
@@ -0,0 +1,4 @@
        1649  +
AWS4-HMAC-SHA256
        1650  +
20150830T123600Z
        1651  +
20150830/us-east-1/service/aws4_request
        1652  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
 1854   1653   
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
 1855   1654   
similarity index 100%
 1856   1655   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
 1857   1656   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 1858   1657   
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
 1859   1658   
new file mode 100644
 1860   1659   
index 0000000..0468d80
 1861         -
-- /dev/null
        1660  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 1862   1661   
@@ -0,0 +1,12 @@
        1662  +
{
        1663  +
    "credentials": {
        1664  +
        "access_key_id": "AKIDEXAMPLE",
        1665  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1666  +
    },
        1667  +
    "expiration_in_seconds": 3600,
        1668  +
    "normalize": true,
        1669  +
    "region": "us-east-1",
        1670  +
    "service": "service",
        1671  +
    "sign_body": false,
        1672  +
    "timestamp": "2015-08-30T12:36:00Z"
        1673  +
}
              \
 No newline at end of file
 1863   1674   
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
 1864   1675   
similarity index 100%
 1865   1676   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
 1866   1677   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 1867   1678   
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
 1868   1679   
new file mode 100644
 1869   1680   
index 0000000..71c7bac
 1870         -
-- /dev/null
        1681  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 1871   1682   
@@ -0,0 +1 @@
        1683  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
 1872   1684   
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
 1873   1685   
new file mode 100644
 1874   1686   
index 0000000..0add1f1
 1875         -
-- /dev/null
        1687  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 1876   1688   
@@ -0,0 +1,5 @@
        1689  +
GET //example// HTTP/1.1
        1690  +
Host:example.amazonaws.com
        1691  +
X-Amz-Date:20150830T123600Z
        1692  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1693  +
 1877   1694   
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
 1878   1695   
similarity index 100%
 1879   1696   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
 1880   1697   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 1881   1698   
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
 1882   1699   
new file mode 100644
 1883   1700   
index 0000000..ce72510
 1884         -
-- /dev/null
        1701  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 1885   1702   
@@ -0,0 +1,7 @@
        1703  +
GET
        1704  +
/example/
        1705  +
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
        1706  +
host:example.amazonaws.com
        1707  +
        1708  +
host
        1709  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1886   1710   
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
 1887   1711   
new file mode 100644
 1888   1712   
index 0000000..265f387
 1889         -
-- /dev/null
        1713  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 1890   1714   
@@ -0,0 +1 @@
        1715  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
 1891   1716   
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
 1892   1717   
new file mode 100644
 1893   1718   
index 0000000..e1fcb2e
 1894         -
-- /dev/null
        1719  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 1895   1720   
@@ -0,0 +1,3 @@
        1721  +
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
        1722  +
Host:example.amazonaws.com
        1723  +
 1896   1724   
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
 1897   1725   
new file mode 100644
 1898   1726   
index 0000000..a14de61
 1899         -
-- /dev/null
        1727  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 1900   1728   
@@ -0,0 +1,4 @@
        1729  +
AWS4-HMAC-SHA256
        1730  +
20150830T123600Z
        1731  +
20150830/us-east-1/service/aws4_request
        1732  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
 1901   1733   
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
 1902   1734   
similarity index 100%
 1903   1735   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
 1904   1736   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 1905   1737   
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
 1906   1738   
new file mode 100644
 1907   1739   
index 0000000..7bee5c7
 1908         -
-- /dev/null
        1740  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 1909   1741   
@@ -0,0 +1,12 @@
        1742  +
{
        1743  +
    "credentials": {
        1744  +
        "access_key_id": "AKIDEXAMPLE",
        1745  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1746  +
    },
        1747  +
    "expiration_in_seconds": 3600,
        1748  +
    "normalize": false,
        1749  +
    "region": "us-east-1",
        1750  +
    "service": "service",
        1751  +
    "sign_body": false,
        1752  +
    "timestamp": "2015-08-30T12:36:00Z"
        1753  +
}
              \
 No newline at end of file
 1910   1754   
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
 1911   1755   
new file mode 100644
 1912   1756   
index 0000000..dfffaaf
 1913         -
-- /dev/null
        1757  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 1914   1758   
@@ -0,0 +1,8 @@
        1759  +
GET
        1760  +
//example//
        1761  +
        1762  +
host:example.amazonaws.com
        1763  +
x-amz-date:20150830T123600Z
        1764  +
        1765  +
host;x-amz-date
        1766  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1915   1767   
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
 1916   1768   
new file mode 100644
 1917   1769   
index 0000000..edbcc0d
 1918         -
-- /dev/null
        1770  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 1919   1771   
@@ -0,0 +1 @@
        1772  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
 1920   1773   
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
 1921   1774   
new file mode 100644
 1922   1775   
index 0000000..4cc12dd
 1923         -
-- /dev/null
        1776  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 1924   1777   
@@ -0,0 +1,5 @@
        1778  +
GET //example// HTTP/1.1
        1779  +
Host:example.amazonaws.com
        1780  +
X-Amz-Date:20150830T123600Z
        1781  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1782  +
 1925   1783   
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
 1926   1784   
new file mode 100644
 1927   1785   
index 0000000..3eba390
 1928         -
-- /dev/null
        1786  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 1929   1787   
@@ -0,0 +1,4 @@
        1788  +
AWS4-HMAC-SHA256
        1789  +
20150830T123600Z
        1790  +
20150830/us-east-1/service/aws4_request
        1791  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
 1930   1792   
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
 1931   1793   
new file mode 100644
 1932   1794   
index 0000000..f7844e3
 1933         -
-- /dev/null
        1795  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 1934   1796   
@@ -0,0 +1,7 @@
        1797  +
GET
        1798  +
//example//
        1799  +
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
        1800  +
host:example.amazonaws.com
        1801  +
        1802  +
host
        1803  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1935   1804   
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
 1936   1805   
new file mode 100644
 1937   1806   
index 0000000..a8d6b96
 1938         -
-- /dev/null
        1807  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 1939   1808   
@@ -0,0 +1 @@
        1809  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
 1940   1810   
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
 1941   1811   
new file mode 100644
 1942   1812   
index 0000000..a8322c6
 1943         -
-- /dev/null
        1813  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 1944   1814   
@@ -0,0 +1,3 @@
        1815  +
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
        1816  +
Host:example.amazonaws.com
        1817  +
 1945   1818   
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
 1946   1819   
new file mode 100644
 1947   1820   
index 0000000..068724d
 1948         -
-- /dev/null
        1821  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 1949   1822   
@@ -0,0 +1,4 @@
        1823  +
AWS4-HMAC-SHA256
        1824  +
20150830T123600Z
        1825  +
20150830/us-east-1/service/aws4_request
        1826  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
 1950   1827   
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
 1951   1828   
similarity index 100%
 1952   1829   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
 1953   1830   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 1954   1831   
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
 1955   1832   
new file mode 100644
 1956   1833   
index 0000000..0468d80
 1957         -
-- /dev/null
        1834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 1958   1835   
@@ -0,0 +1,12 @@
        1836  +
{
        1837  +
    "credentials": {
        1838  +
        "access_key_id": "AKIDEXAMPLE",
        1839  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1840  +
    },
        1841  +
    "expiration_in_seconds": 3600,
        1842  +
    "normalize": true,
        1843  +
    "region": "us-east-1",
        1844  +
    "service": "service",
        1845  +
    "sign_body": false,
        1846  +
    "timestamp": "2015-08-30T12:36:00Z"
        1847  +
}
              \
 No newline at end of file
 1959   1848   
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
 1960   1849   
similarity index 100%
 1961   1850   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
 1962   1851   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 1963   1852   
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
 1964   1853   
new file mode 100644
 1965   1854   
index 0000000..f63892b
 1966         -
-- /dev/null
        1855  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 1967   1856   
@@ -0,0 +1 @@
        1857  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1968   1858   
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
 1969   1859   
new file mode 100644
 1970   1860   
index 0000000..19cd5cb
 1971         -
-- /dev/null
        1861  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 1972   1862   
@@ -0,0 +1,5 @@
        1863  +
GET /example space/ HTTP/1.1
        1864  +
Host:example.amazonaws.com
        1865  +
X-Amz-Date:20150830T123600Z
        1866  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1867  +
 1973   1868   
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
 1974   1869   
similarity index 100%
 1975   1870   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
 1976   1871   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 1977   1872   
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
 1978   1873   
new file mode 100644
 1979   1874   
index 0000000..fa3d3e2
 1980         -
-- /dev/null
        1875  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 1981   1876   
@@ -0,0 +1,7 @@
        1877  +
GET
        1878  +
/example%20space/
        1879  +
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
        1880  +
host:example.amazonaws.com
        1881  +
        1882  +
host
        1883  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1982   1884   
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
 1983   1885   
new file mode 100644
 1984   1886   
index 0000000..5b2e204
 1985         -
-- /dev/null
        1887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 1986   1888   
@@ -0,0 +1 @@
        1889  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 1987   1890   
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
 1988   1891   
new file mode 100644
 1989   1892   
index 0000000..93ca1d0
 1990         -
-- /dev/null
        1893  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 1991   1894   
@@ -0,0 +1,3 @@
        1895  +
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
        1896  +
Host:example.amazonaws.com
        1897  +
 1992   1898   
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
 1993   1899   
new file mode 100644
 1994   1900   
index 0000000..b4cb789
 1995         -
-- /dev/null
        1901  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 1996   1902   
@@ -0,0 +1,4 @@
        1903  +
AWS4-HMAC-SHA256
        1904  +
20150830T123600Z
        1905  +
20150830/us-east-1/service/aws4_request
        1906  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 1997   1907   
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
 1998   1908   
new file mode 100644
 1999   1909   
index 0000000..860a277
 2000         -
-- /dev/null
        1910  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 2001   1911   
@@ -0,0 +1,2 @@
        1912  +
GET /example%20space/ HTTP/1.1
        1913  +
Host:example.amazonaws.com
 2002   1914   
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
 2003   1915   
new file mode 100644
 2004   1916   
index 0000000..7bee5c7
 2005         -
-- /dev/null
        1917  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 2006   1918   
@@ -0,0 +1,12 @@
        1919  +
{
        1920  +
    "credentials": {
        1921  +
        "access_key_id": "AKIDEXAMPLE",
        1922  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1923  +
    },
        1924  +
    "expiration_in_seconds": 3600,
        1925  +
    "normalize": false,
        1926  +
    "region": "us-east-1",
        1927  +
    "service": "service",
        1928  +
    "sign_body": false,
        1929  +
    "timestamp": "2015-08-30T12:36:00Z"
        1930  +
}
              \
 No newline at end of file
 2007   1931   
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
 2008   1932   
similarity index 66%
 2009   1933   
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
 2010   1934   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2011   1935   
index 71dc981..124a709 100644
 2012         -
-- 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
        1936  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2013   1937   
@@ -1,9 +1,8 @@
 2014         -
POST
 2015         -
/
        1938  +
GET
        1939  +
/example%20space/
 2016   1940   
 2017         -
content-type:application/x-www-form-urlencoded; charset=utf-8
 2018   1941   
host:example.amazonaws.com
 2019   1942   
x-amz-date:20150830T123600Z
 2020   1943   
 2021   1944   
host;x-amz-date
 2022   1945   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2023   1946   
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
 2024   1947   
new file mode 100644
 2025   1948   
index 0000000..f63892b
 2026         -
-- /dev/null
        1949  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 2027   1950   
@@ -0,0 +1 @@
        1951  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 2028   1952   
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
 2029   1953   
new file mode 100644
 2030   1954   
index 0000000..19cd5cb
 2031         -
-- /dev/null
        1955  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 2032   1956   
@@ -0,0 +1,5 @@
        1957  +
GET /example space/ HTTP/1.1
        1958  +
Host:example.amazonaws.com
        1959  +
X-Amz-Date:20150830T123600Z
        1960  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1961  +
 2033   1962   
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
 2034   1963   
new file mode 100644
 2035   1964   
index 0000000..a633f0c
 2036         -
-- /dev/null
        1965  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 2037   1966   
@@ -0,0 +1,4 @@
        1967  +
AWS4-HMAC-SHA256
        1968  +
20150830T123600Z
        1969  +
20150830/us-east-1/service/aws4_request
        1970  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
 2038   1971   
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
 2039   1972   
new file mode 100644
 2040   1973   
index 0000000..fa3d3e2
 2041         -
-- /dev/null
        1974  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 2042   1975   
@@ -0,0 +1,7 @@
        1976  +
GET
        1977  +
/example%20space/
        1978  +
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
        1979  +
host:example.amazonaws.com
        1980  +
        1981  +
host
        1982  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2043   1983   
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
 2044   1984   
new file mode 100644
 2045   1985   
index 0000000..5b2e204
 2046         -
-- /dev/null
        1986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 2047   1987   
@@ -0,0 +1 @@
        1988  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 2048   1989   
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
 2049   1990   
new file mode 100644
 2050   1991   
index 0000000..93ca1d0
 2051         -
-- /dev/null
        1992  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 2052   1993   
@@ -0,0 +1,3 @@
        1994  +
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
        1995  +
Host:example.amazonaws.com
        1996  +
 2053   1997   
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
 2054   1998   
new file mode 100644
 2055   1999   
index 0000000..b4cb789
 2056         -
-- /dev/null
        2000  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 2057   2001   
@@ -0,0 +1,4 @@
        2002  +
AWS4-HMAC-SHA256
        2003  +
20150830T123600Z
        2004  +
20150830/us-east-1/service/aws4_request
        2005  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 2058   2006   
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
 2059   2007   
similarity index 67%
 2060   2008   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
 2061   2009   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2062   2010   
index b7d5e8b..ab509ab 100644
 2063         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        2011  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2064   2012   
@@ -1,3 +1,2 @@
 2065   2013   
GET /example space/ HTTP/1.1
 2066   2014   
Host:example.amazonaws.com
 2067         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2068   2015   
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
 2069   2016   
new file mode 100644
 2070   2017   
index 0000000..0468d80
 2071         -
-- /dev/null
        2018  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 2072   2019   
@@ -0,0 +1,12 @@
        2020  +
{
        2021  +
    "credentials": {
        2022  +
        "access_key_id": "AKIDEXAMPLE",
        2023  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2024  +
    },
        2025  +
    "expiration_in_seconds": 3600,
        2026  +
    "normalize": true,
        2027  +
    "region": "us-east-1",
        2028  +
    "service": "service",
        2029  +
    "sign_body": false,
        2030  +
    "timestamp": "2015-08-30T12:36:00Z"
        2031  +
}
              \
 No newline at end of file
 2073   2032   
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
 2074   2033   
similarity index 100%
 2075   2034   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
 2076   2035   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 2077   2036   
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
 2078   2037   
new file mode 100644
 2079   2038   
index 0000000..e503354
 2080         -
-- /dev/null
        2039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 2081   2040   
@@ -0,0 +1 @@
        2041  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
 2082   2042   
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
 2083   2043   
new file mode 100644
 2084   2044   
index 0000000..4367892
 2085         -
-- /dev/null
        2045  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 2086   2046   
@@ -0,0 +1,5 @@
        2047  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        2048  +
Host:example.amazonaws.com
        2049  +
X-Amz-Date:20150830T123600Z
        2050  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        2051  +
 2087   2052   
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
 2088   2053   
similarity index 100%
 2089   2054   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
 2090   2055   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 2091   2056   
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
 2092   2057   
new file mode 100644
 2093   2058   
index 0000000..d7f0696
 2094         -
-- /dev/null
        2059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 2095   2060   
@@ -0,0 +1,7 @@
        2061  +
GET
        2062  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        2063  +
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
        2064  +
host:example.amazonaws.com
        2065  +
        2066  +
host
        2067  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2096   2068   
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
 2097   2069   
new file mode 100644
 2098   2070   
index 0000000..509e972
 2099         -
-- /dev/null
        2071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 2100   2072   
@@ -0,0 +1 @@
        2073  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
 2101   2074   
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
 2102   2075   
new file mode 100644
 2103   2076   
index 0000000..79aad36
 2104         -
-- /dev/null
        2077  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 2105   2078   
@@ -0,0 +1,3 @@
        2079  +
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
        2080  +
Host:example.amazonaws.com
        2081  +
 2106   2082   
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
 2107   2083   
new file mode 100644
 2108   2084   
index 0000000..e8068b3
 2109         -
-- /dev/null
        2085  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 2110   2086   
@@ -0,0 +1,4 @@
        2087  +
AWS4-HMAC-SHA256
        2088  +
20150830T123600Z
        2089  +
20150830/us-east-1/service/aws4_request
        2090  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
 2111   2091   
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
 2112   2092   
similarity index 100%
 2113   2093   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
 2114   2094   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 2115   2095   
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
 2116   2096   
new file mode 100644
 2117   2097   
index 0000000..0468d80
 2118         -
-- /dev/null
        2098  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 2119   2099   
@@ -0,0 +1,12 @@
        2100  +
{
        2101  +
    "credentials": {
        2102  +
        "access_key_id": "AKIDEXAMPLE",
        2103  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2104  +
    },
        2105  +
    "expiration_in_seconds": 3600,
        2106  +
    "normalize": true,
        2107  +
    "region": "us-east-1",
        2108  +
    "service": "service",
        2109  +
    "sign_body": false,
        2110  +
    "timestamp": "2015-08-30T12:36:00Z"
        2111  +
}
              \
 No newline at end of file
 2120   2112   
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
 2121   2113   
similarity index 100%
 2122   2114   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
 2123   2115   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 2124   2116   
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
 2125   2117   
new file mode 100644
 2126   2118   
index 0000000..9a13676
 2127         -
-- /dev/null
        2119  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 2128   2120   
@@ -0,0 +1 @@
        2121  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
 2129   2122   
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
 2130   2123   
new file mode 100644
 2131   2124   
index 0000000..5aaf47c
 2132         -
-- /dev/null
        2125  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 2133   2126   
@@ -0,0 +1,5 @@
        2127  +
GET /ሴ HTTP/1.1
        2128  +
Host:example.amazonaws.com
        2129  +
X-Amz-Date:20150830T123600Z
        2130  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        2131  +
 2134   2132   
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
 2135   2133   
similarity index 100%
 2136   2134   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
 2137   2135   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 2138   2136   
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
 2139   2137   
new file mode 100644
 2140   2138   
index 0000000..bdb77c9
 2141         -
-- /dev/null
        2139  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 2142   2140   
@@ -0,0 +1,7 @@
        2141  +
GET
        2142  +
/%E1%88%B4
        2143  +
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
        2144  +
host:example.amazonaws.com
        2145  +
        2146  +
host
        2147  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2143   2148   
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
 2144   2149   
new file mode 100644
 2145   2150   
index 0000000..21342b3
 2146         -
-- /dev/null
        2151  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 2147   2152   
@@ -0,0 +1 @@
        2153  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 2148   2154   
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
 2149   2155   
new file mode 100644
 2150   2156   
index 0000000..368c2ff
 2151         -
-- /dev/null
        2157  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 2152   2158   
@@ -0,0 +1,3 @@
        2159  +
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
        2160  +
Host:example.amazonaws.com
        2161  +
 2153   2162   
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
 2154   2163   
new file mode 100644
 2155   2164   
index 0000000..56b8fbf
 2156         -
-- /dev/null
        2165  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 2157   2166   
@@ -0,0 +1,4 @@
        2167  +
AWS4-HMAC-SHA256
        2168  +
20150830T123600Z
        2169  +
20150830/us-east-1/service/aws4_request
        2170  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 2158   2171   
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
 2159   2172   
similarity index 62%
 2160   2173   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 2161   2174   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2162   2175   
index da4808d..9e273f6 100644
 2163         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        2176  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2164   2177   
@@ -1,3 +1,2 @@
 2165   2178   
GET /ሴ HTTP/1.1
 2166   2179   
Host:example.amazonaws.com
 2167         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2168   2180   
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
 2169   2181   
new file mode 100644
 2170   2182   
index 0000000..0468d80
 2171         -
-- /dev/null
        2183  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 2172   2184   
@@ -0,0 +1,12 @@
        2185  +
{
        2186  +
    "credentials": {
        2187  +
        "access_key_id": "AKIDEXAMPLE",
        2188  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2189  +
    },
        2190  +
    "expiration_in_seconds": 3600,
        2191  +
    "normalize": true,
        2192  +
    "region": "us-east-1",
        2193  +
    "service": "service",
        2194  +
    "sign_body": false,
        2195  +
    "timestamp": "2015-08-30T12:36:00Z"
        2196  +
}
              \
 No newline at end of file
 2173   2197   
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
 2174   2198   
similarity index 100%
 2175   2199   
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
 2176   2200   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 2177   2201   
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
 2178   2202   
new file mode 100644
 2179   2203   
index 0000000..d7f1c1c
 2180         -
-- /dev/null
        2204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 2181   2205   
@@ -0,0 +1 @@
        2206  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 2182   2207   
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
 2183   2208   
new file mode 100644
 2184   2209   
index 0000000..1c60790
 2185         -
-- /dev/null
        2210  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 2186   2211   
@@ -0,0 +1,5 @@
        2212  +
GET /?Param1=value1 HTTP/1.1
        2213  +
Host:example.amazonaws.com
        2214  +
X-Amz-Date:20150830T123600Z
        2215  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        2216  +
 2187   2217   
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
 2188   2218   
similarity index 100%
 2189   2219   
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
 2190   2220   
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
 2191   2221   
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
 2192   2222   
new file mode 100644
 2193   2223   
index 0000000..6a823ed
 2194         -
-- /dev/null
        2224  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 2195   2225   
@@ -0,0 +1,7 @@
        2226  +
GET
        2227  +
/
        2228  +
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
        2229  +
host:example.amazonaws.com
        2230  +
        2231  +
host
        2232  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2196   2233   
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
 2197   2234   
new file mode 100644
 2198   2235   
index 0000000..8c77136
 2199         -
-- /dev/null
        2236  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 2200   2237   
@@ -0,0 +1 @@
        2238  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 2201   2239   
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
 2202   2240   
new file mode 100644
 2203   2241   
index 0000000..2d337d8
 2204         -
-- /dev/null
        2242  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 2205   2243   
@@ -0,0 +1,3 @@
        2244  +
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
        2245  +
Host:example.amazonaws.com
        2246  +
 2206   2247   
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
 2207   2248   
new file mode 100644
 2208   2249   
index 0000000..191a484
 2209         -
-- /dev/null
        2250  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 2210   2251   
@@ -0,0 +1,4 @@
        2252  +
AWS4-HMAC-SHA256
        2253  +
20150830T123600Z
        2254  +
20150830/us-east-1/service/aws4_request
        2255  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 2211   2256   
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
 2212   2257   
similarity index 100%
 2213   2258   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 2214   2259   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 2215   2260   
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
 2216   2261   
new file mode 100644
 2217   2262   
index 0000000..0468d80
 2218         -
-- /dev/null
        2263  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 2219   2264   
@@ -0,0 +1,12 @@
        2265  +
{
        2266  +
    "credentials": {
        2267  +
        "access_key_id": "AKIDEXAMPLE",
        2268  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2269  +
    },
        2270  +
    "expiration_in_seconds": 3600,
        2271  +
    "normalize": true,
        2272  +
    "region": "us-east-1",
        2273  +
    "service": "service",
        2274  +
    "sign_body": false,
        2275  +
    "timestamp": "2015-08-30T12:36:00Z"
        2276  +
}
              \
 No newline at end of file
 2220   2277   
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
 2221   2278   
new file mode 100644
 2222   2279   
index 0000000..0c8ba21
 2223         -
-- /dev/null
        2280  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 2224   2281   
@@ -0,0 +1,8 @@
        2282  +
GET
        2283  +
/
        2284  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        2285  +
host:example.amazonaws.com
        2286  +
x-amz-date:20150830T123600Z
        2287  +
        2288  +
host;x-amz-date
        2289  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2225   2290   
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
 2226   2291   
new file mode 100644
 2227   2292   
index 0000000..9ab65ed
 2228         -
-- /dev/null
        2293  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 2229   2294   
@@ -0,0 +1 @@
        2295  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 2230   2296   
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
 2231   2297   
new file mode 100644
 2232   2298   
index 0000000..0bcdf98
 2233         -
-- /dev/null
        2299  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 2234   2300   
@@ -0,0 +1,5 @@
        2301  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2302  +
Host:example.amazonaws.com
        2303  +
X-Amz-Date:20150830T123600Z
        2304  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        2305  +
 2235   2306   
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
 2236   2307   
new file mode 100644
 2237   2308   
index 0000000..bf674ad
 2238         -
-- /dev/null
        2309  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 2239   2310   
@@ -0,0 +1,4 @@
        2311  +
AWS4-HMAC-SHA256
        2312  +
20150830T123600Z
        2313  +
20150830/us-east-1/service/aws4_request
        2314  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 2240   2315   
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
 2241   2316   
new file mode 100644
 2242   2317   
index 0000000..3f590a4
 2243         -
-- /dev/null
        2318  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 2244   2319   
@@ -0,0 +1,7 @@
        2320  +
GET
        2321  +
/
        2322  +
%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
        2323  +
host:example.amazonaws.com
        2324  +
        2325  +
host
        2326  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2245   2327   
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
 2246   2328   
new file mode 100644
 2247   2329   
index 0000000..e225eab
 2248         -
-- /dev/null
        2330  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 2249   2331   
@@ -0,0 +1 @@
        2332  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 2250   2333   
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
 2251   2334   
new file mode 100644
 2252   2335   
index 0000000..6206719
 2253         -
-- /dev/null
        2336  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 2254   2337   
@@ -0,0 +1,3 @@
        2338  +
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
        2339  +
Host:example.amazonaws.com
        2340  +
 2255   2341   
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
 2256   2342   
new file mode 100644
 2257   2343   
index 0000000..81a4210
 2258         -
-- /dev/null
        2344  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2259   2345   
@@ -0,0 +1,4 @@
        2346  +
AWS4-HMAC-SHA256
        2347  +
20150830T123600Z
        2348  +
20150830/us-east-1/service/aws4_request
        2349  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 2260   2350   
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
 2261   2351   
new file mode 100644
 2262   2352   
index 0000000..368c6e3
 2263         -
-- /dev/null
        2353  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2264   2354   
@@ -0,0 +1,2 @@
        2355  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2356  +
Host:example.amazonaws.com
 2265   2357   
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
 2266   2358   
new file mode 100644
 2267   2359   
index 0000000..0468d80
 2268         -
-- /dev/null
        2360  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2269   2361   
@@ -0,0 +1,12 @@
        2362  +
{
        2363  +
    "credentials": {
        2364  +
        "access_key_id": "AKIDEXAMPLE",
        2365  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2366  +
    },
        2367  +
    "expiration_in_seconds": 3600,
        2368  +
    "normalize": true,
        2369  +
    "region": "us-east-1",
        2370  +
    "service": "service",
        2371  +
    "sign_body": false,
        2372  +
    "timestamp": "2015-08-30T12:36:00Z"
        2373  +
}
              \
 No newline at end of file
 2270   2374   
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
 2271   2375   
similarity index 100%
 2272   2376   
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
 2273   2377   
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
 2274   2378   
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
 2275   2379   
new file mode 100644
 2276   2380   
index 0000000..6a8cb9d
 2277         -
-- /dev/null
        2381  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2278   2382   
@@ -0,0 +1 @@
        2383  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 2279   2384   
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
 2280   2385   
new file mode 100644
 2281   2386   
index 0000000..f78a9d2
 2282         -
-- /dev/null
        2387  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2283   2388   
@@ -0,0 +1,5 @@
        2389  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        2390  +
Host:example.amazonaws.com
        2391  +
X-Amz-Date:20150830T123600Z
        2392  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        2393  +
 2284   2394   
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
 2285   2395   
similarity index 100%
 2286   2396   
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
 2287   2397   
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
 2288   2398   
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
 2289   2399   
new file mode 100644
 2290   2400   
index 0000000..a6e1bc7
 2291         -
-- /dev/null
        2401  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2292   2402   
@@ -0,0 +1,7 @@
        2403  +
GET
        2404  +
/
        2405  +
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
        2406  +
host:example.amazonaws.com
        2407  +
        2408  +
host
        2409  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2293   2410   
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
 2294   2411   
new file mode 100644
 2295   2412   
index 0000000..d6e6a88
 2296         -
-- /dev/null
        2413  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2297   2414   
@@ -0,0 +1 @@
        2415  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 2298   2416   
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
 2299   2417   
new file mode 100644
 2300   2418   
index 0000000..538e2f0
 2301         -
-- /dev/null
        2419  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2302   2420   
@@ -0,0 +1,3 @@
        2421  +
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
        2422  +
Host:example.amazonaws.com
        2423  +
 2303   2424   
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
 2304   2425   
new file mode 100644
 2305   2426   
index 0000000..e696085
 2306         -
-- /dev/null
        2427  +
++ 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
 2307   2428   
@@ -0,0 +1,4 @@
        2429  +
AWS4-HMAC-SHA256
        2430  +
20150830T123600Z
        2431  +
20150830/us-east-1/service/aws4_request
        2432  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 2308   2433   
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
 2309   2434   
similarity index 100%
 2310   2435   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 2311   2436   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2312   2437   
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
 2313   2438   
new file mode 100644
 2314   2439   
index 0000000..0468d80
 2315         -
-- /dev/null
        2440  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2316   2441   
@@ -0,0 +1,12 @@
        2442  +
{
        2443  +
    "credentials": {
        2444  +
        "access_key_id": "AKIDEXAMPLE",
        2445  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2446  +
    },
        2447  +
    "expiration_in_seconds": 3600,
        2448  +
    "normalize": true,
        2449  +
    "region": "us-east-1",
        2450  +
    "service": "service",
        2451  +
    "sign_body": false,
        2452  +
    "timestamp": "2015-08-30T12:36:00Z"
        2453  +
}
              \
 No newline at end of file
 2317   2454   
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
 2318   2455   
similarity index 100%
 2319   2456   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 2320   2457   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2321   2458   
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
 2322   2459   
new file mode 100644
 2323   2460   
index 0000000..876a64b
 2324         -
-- /dev/null
        2461  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2325   2462   
@@ -0,0 +1 @@
        2463  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 2326   2464   
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
 2327   2465   
similarity index 50%
 2328   2466   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 2329   2467   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2330   2468   
index ba1ef40..9d0d993 100644
 2331         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        2469  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2332   2470   
@@ -1,4 +1,5 @@
 2333   2471   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 2334   2472   
Host:example.amazonaws.com
 2335   2473   
X-Amz-Date:20150830T123600Z
 2336         -
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
        2474  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        2475  +
 2337   2476   
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
 2338   2477   
similarity index 100%
 2339   2478   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 2340   2479   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2341   2480   
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
 2342   2481   
new file mode 100644
 2343   2482   
index 0000000..a1bac59
 2344         -
-- /dev/null
        2483  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2345   2484   
@@ -0,0 +1,7 @@
        2485  +
GET
        2486  +
/
        2487  +
-._~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
        2488  +
host:example.amazonaws.com
        2489  +
        2490  +
host
        2491  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2346   2492   
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
 2347   2493   
new file mode 100644
 2348   2494   
index 0000000..41881e9
 2349         -
-- /dev/null
        2495  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2350   2496   
@@ -0,0 +1 @@
        2497  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 2351   2498   
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
 2352   2499   
new file mode 100644
 2353   2500   
index 0000000..3179076
 2354         -
-- /dev/null
        2501  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2355   2502   
@@ -0,0 +1,3 @@
        2503  +
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
        2504  +
Host:example.amazonaws.com
        2505  +
 2356   2506   
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
 2357   2507   
new file mode 100644
 2358   2508   
index 0000000..6d675fc
 2359         -
-- /dev/null
        2509  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2360   2510   
@@ -0,0 +1,4 @@
        2511  +
AWS4-HMAC-SHA256
        2512  +
20150830T123600Z
        2513  +
20150830/us-east-1/service/aws4_request
        2514  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 2361   2515   
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
 2362   2516   
similarity index 100%
 2363   2517   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 2364   2518   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2365   2519   
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
 2366   2520   
new file mode 100644
 2367   2521   
index 0000000..0468d80
 2368         -
-- /dev/null
        2522  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2369   2523   
@@ -0,0 +1,12 @@
        2524  +
{
        2525  +
    "credentials": {
        2526  +
        "access_key_id": "AKIDEXAMPLE",
        2527  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2528  +
    },
        2529  +
    "expiration_in_seconds": 3600,
        2530  +
    "normalize": true,
        2531  +
    "region": "us-east-1",
        2532  +
    "service": "service",
        2533  +
    "sign_body": false,
        2534  +
    "timestamp": "2015-08-30T12:36:00Z"
        2535  +
}
              \
 No newline at end of file
 2370   2536   
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
 2371   2537   
similarity index 100%
 2372   2538   
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
 2373   2539   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2374   2540   
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
 2375   2541   
new file mode 100644
 2376   2542   
index 0000000..87f295f
 2377         -
-- /dev/null
        2543  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2378   2544   
@@ -0,0 +1 @@
        2545  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2379   2546   
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
 2380   2547   
new file mode 100644
 2381   2548   
index 0000000..36b86e7
 2382         -
-- /dev/null
        2549  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2383   2550   
@@ -0,0 +1,5 @@
        2551  +
GET / HTTP/1.1
        2552  +
Host:example.amazonaws.com
        2553  +
X-Amz-Date:20150830T123600Z
        2554  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2555  +
 2384   2556   
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
 2385   2557   
similarity index 100%
 2386   2558   
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
 2387   2559   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2388   2560   
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
 2389   2561   
new file mode 100644
 2390   2562   
index 0000000..fb2420d
 2391         -
-- /dev/null
        2563  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2392   2564   
@@ -0,0 +1,7 @@
        2565  +
GET
        2566  +
/
        2567  +
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
        2568  +
host:example.amazonaws.com
        2569  +
        2570  +
host
        2571  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2393   2572   
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
 2394   2573   
new file mode 100644
 2395   2574   
index 0000000..da5c905
 2396         -
-- /dev/null
        2575  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2397   2576   
@@ -0,0 +1 @@
        2577  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2398   2578   
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
 2399   2579   
new file mode 100644
 2400   2580   
index 0000000..eeb7a8f
 2401         -
-- /dev/null
        2581  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2402   2582   
@@ -0,0 +1,3 @@
        2583  +
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
        2584  +
Host:example.amazonaws.com
        2585  +
 2403   2586   
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
 2404   2587   
new file mode 100644
 2405   2588   
index 0000000..d837e67
 2406         -
-- /dev/null
        2589  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2407   2590   
@@ -0,0 +1,4 @@
        2591  +
AWS4-HMAC-SHA256
        2592  +
20150830T123600Z
        2593  +
20150830/us-east-1/service/aws4_request
        2594  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2408   2595   
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
 2409   2596   
similarity index 100%
 2410   2597   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 2411   2598   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2412   2599   
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
 2413   2600   
new file mode 100644
 2414   2601   
index 0000000..0468d80
 2415         -
-- /dev/null
        2602  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2416   2603   
@@ -0,0 +1,12 @@
        2604  +
{
        2605  +
    "credentials": {
        2606  +
        "access_key_id": "AKIDEXAMPLE",
        2607  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2608  +
    },
        2609  +
    "expiration_in_seconds": 3600,
        2610  +
    "normalize": true,
        2611  +
    "region": "us-east-1",
        2612  +
    "service": "service",
        2613  +
    "sign_body": false,
        2614  +
    "timestamp": "2015-08-30T12:36:00Z"
        2615  +
}
              \
 No newline at end of file
 2417   2616   
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
 2418   2617   
similarity index 100%
 2419   2618   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 2420   2619   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2421   2620   
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
 2422   2621   
new file mode 100644
 2423   2622   
index 0000000..19a2cc9
 2424         -
-- /dev/null
        2623  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2425   2624   
@@ -0,0 +1 @@
        2625  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 2426   2626   
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
 2427   2627   
new file mode 100644
 2428   2628   
index 0000000..acb13ee
 2429         -
-- /dev/null
        2629  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2430   2630   
@@ -0,0 +1,5 @@
        2631  +
GET /?ሴ=bar HTTP/1.1
        2632  +
Host:example.amazonaws.com
        2633  +
X-Amz-Date:20150830T123600Z
        2634  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2635  +
 2431   2636   
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
 2432   2637   
similarity index 100%
 2433   2638   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 2434   2639   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2435   2640   
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
 2436   2641   
new file mode 100644
 2437   2642   
index 0000000..92cee62
 2438         -
-- /dev/null
        2643  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2439   2644   
@@ -0,0 +1,7 @@
        2645  +
GET
        2646  +
/
        2647  +
%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
        2648  +
host:example.amazonaws.com
        2649  +
        2650  +
host
        2651  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2440   2652   
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
 2441   2653   
new file mode 100644
 2442   2654   
index 0000000..c9e49de
 2443         -
-- /dev/null
        2655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2444   2656   
@@ -0,0 +1 @@
        2657  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 2445   2658   
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
 2446   2659   
new file mode 100644
 2447   2660   
index 0000000..8f4d8d0
 2448         -
-- /dev/null
        2661  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2449   2662   
@@ -0,0 +1,3 @@
        2663  +
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
        2664  +
Host:example.amazonaws.com
        2665  +
 2450   2666   
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
 2451   2667   
new file mode 100644
 2452   2668   
index 0000000..a6181dc
 2453         -
-- /dev/null
        2669  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2454   2670   
@@ -0,0 +1,4 @@
        2671  +
AWS4-HMAC-SHA256
        2672  +
20150830T123600Z
        2673  +
20150830/us-east-1/service/aws4_request
        2674  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 2455   2675   
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
 2456   2676   
similarity index 64%
 2457   2677   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 2458   2678   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2459   2679   
index cc2757e..aff333a 100644
 2460         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2680  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2461   2681   
@@ -1,3 +1,2 @@
 2462   2682   
GET /?ሴ=bar HTTP/1.1
 2463   2683   
Host:example.amazonaws.com
 2464         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2465   2684   
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
 2466   2685   
similarity index 99%
 2467   2686   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 2468   2687   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2469   2688   
index a457c8a..a334e18 100644
 2470         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
        2689  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2471   2690   
@@ -1,13 +1,13 @@
 2472   2691   
{
 2473   2692   
    "credentials": {
 2474   2693   
        "access_key_id": "AKIDEXAMPLE",
 2475   2694   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
 2476   2695   
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
 2477   2696   
    },
 2478   2697   
    "expiration_in_seconds": 3600,
 2479   2698   
    "normalize": true,
 2480   2699   
    "region": "us-east-1",
 2481   2700   
    "service": "service",
 2482   2701   
    "sign_body": false,
 2483   2702   
    "timestamp": "2015-08-30T12:36:00Z"
 2484         -
}
        2703  +
}
              \
 No newline at end of file
 2485   2704   
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
 2486   2705   
new file mode 100644
 2487   2706   
index 0000000..ccacdeb
 2488         -
-- /dev/null
        2707  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2489   2708   
@@ -0,0 +1,9 @@
        2709  +
GET
        2710  +
/
        2711  +
        2712  +
host:example.amazonaws.com
        2713  +
x-amz-date:20150830T123600Z
        2714  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2715  +
        2716  +
host;x-amz-date;x-amz-security-token
        2717  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2490   2718   
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
 2491   2719   
new file mode 100644
 2492   2720   
index 0000000..083e30d
 2493         -
-- /dev/null
        2721  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2494   2722   
@@ -0,0 +1 @@
        2723  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 2495   2724   
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
 2496   2725   
new file mode 100644
 2497   2726   
index 0000000..5287932
 2498         -
-- /dev/null
        2727  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2499   2728   
@@ -0,0 +1,6 @@
        2729  +
GET / HTTP/1.1
        2730  +
Host:example.amazonaws.com
        2731  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2732  +
X-Amz-Date:20150830T123600Z
        2733  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2734  +
 2500   2735   
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
 2501   2736   
new file mode 100644
 2502   2737   
index 0000000..742b880
 2503         -
-- /dev/null
        2738  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2504   2739   
@@ -0,0 +1,4 @@
        2740  +
AWS4-HMAC-SHA256
        2741  +
20150830T123600Z
        2742  +
20150830/us-east-1/service/aws4_request
        2743  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 2505   2744   
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
 2506   2745   
new file mode 100644
 2507   2746   
index 0000000..5e75179
 2508         -
-- /dev/null
        2747  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2509   2748   
@@ -0,0 +1,7 @@
        2749  +
GET
        2750  +
/
        2751  +
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
        2752  +
host:example.amazonaws.com
        2753  +
        2754  +
host
        2755  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2510   2756   
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
 2511   2757   
new file mode 100644
 2512   2758   
index 0000000..50b947f
 2513         -
-- /dev/null
        2759  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2514   2760   
@@ -0,0 +1 @@
        2761  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 2515   2762   
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
 2516   2763   
new file mode 100644
 2517   2764   
index 0000000..aee910b
 2518         -
-- /dev/null
        2765  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2519   2766   
@@ -0,0 +1,3 @@
        2767  +
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
        2768  +
Host:example.amazonaws.com
        2769  +
 2520   2770   
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
 2521   2771   
new file mode 100644
 2522   2772   
index 0000000..04a6c17
 2523         -
-- /dev/null
        2773  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2524   2774   
@@ -0,0 +1,4 @@
        2775  +
AWS4-HMAC-SHA256
        2776  +
20150830T123600Z
        2777  +
20150830/us-east-1/service/aws4_request
        2778  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 2525   2779   
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
 2526   2780   
similarity index 100%
 2527   2781   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 2528   2782   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2529   2783   
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
 2530   2784   
new file mode 100644
 2531   2785   
index 0000000..0468d80
 2532         -
-- /dev/null
        2786  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2533   2787   
@@ -0,0 +1,12 @@
        2788  +
{
        2789  +
    "credentials": {
        2790  +
        "access_key_id": "AKIDEXAMPLE",
        2791  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2792  +
    },
        2793  +
    "expiration_in_seconds": 3600,
        2794  +
    "normalize": true,
        2795  +
    "region": "us-east-1",
        2796  +
    "service": "service",
        2797  +
    "sign_body": false,
        2798  +
    "timestamp": "2015-08-30T12:36:00Z"
        2799  +
}
              \
 No newline at end of file
 2534   2800   
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
 2535   2801   
similarity index 100%
 2536   2802   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 2537   2803   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2538   2804   
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
 2539   2805   
new file mode 100644
 2540   2806   
index 0000000..87f295f
 2541         -
-- /dev/null
        2807  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2542   2808   
@@ -0,0 +1 @@
        2809  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2543   2810   
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
 2544   2811   
new file mode 100644
 2545   2812   
index 0000000..36b86e7
 2546         -
-- /dev/null
        2813  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2547   2814   
@@ -0,0 +1,5 @@
        2815  +
GET / HTTP/1.1
        2816  +
Host:example.amazonaws.com
        2817  +
X-Amz-Date:20150830T123600Z
        2818  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2819  +
 2548   2820   
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
 2549   2821   
similarity index 100%
 2550   2822   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 2551   2823   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2552   2824   
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
 2553   2825   
new file mode 100644
 2554   2826   
index 0000000..fb2420d
 2555         -
-- /dev/null
        2827  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2556   2828   
@@ -0,0 +1,7 @@
        2829  +
GET
        2830  +
/
        2831  +
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
        2832  +
host:example.amazonaws.com
        2833  +
        2834  +
host
        2835  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2557   2836   
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
 2558   2837   
new file mode 100644
 2559   2838   
index 0000000..da5c905
 2560         -
-- /dev/null
        2839  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2561   2840   
@@ -0,0 +1 @@
        2841  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2562   2842   
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
 2563   2843   
new file mode 100644
 2564   2844   
index 0000000..eeb7a8f
 2565         -
-- /dev/null
        2845  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2566   2846   
@@ -0,0 +1,3 @@
        2847  +
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
        2848  +
Host:example.amazonaws.com
        2849  +
 2567   2850   
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
 2568   2851   
new file mode 100644
 2569   2852   
index 0000000..d837e67
 2570         -
-- /dev/null
        2853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2571   2854   
@@ -0,0 +1,4 @@
        2855  +
AWS4-HMAC-SHA256
        2856  +
20150830T123600Z
        2857  +
20150830/us-east-1/service/aws4_request
        2858  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2572   2859   
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
 2573   2860   
similarity index 100%
 2574   2861   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 2575   2862   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2576   2863   
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
 2577   2864   
new file mode 100644
 2578   2865   
index 0000000..0468d80
 2579         -
-- /dev/null
        2866  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2580   2867   
@@ -0,0 +1,12 @@
        2868  +
{
        2869  +
    "credentials": {
        2870  +
        "access_key_id": "AKIDEXAMPLE",
        2871  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2872  +
    },
        2873  +
    "expiration_in_seconds": 3600,
        2874  +
    "normalize": true,
        2875  +
    "region": "us-east-1",
        2876  +
    "service": "service",
        2877  +
    "sign_body": false,
        2878  +
    "timestamp": "2015-08-30T12:36:00Z"
        2879  +
}
              \
 No newline at end of file
 2581   2880   
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
 2582   2881   
similarity index 100%
 2583   2882   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 2584   2883   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2585   2884   
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
 2586   2885   
new file mode 100644
 2587   2886   
index 0000000..629487f
 2588         -
-- /dev/null
        2887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2589   2888   
@@ -0,0 +1 @@
        2889  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2590   2890   
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
 2591   2891   
new file mode 100644
 2592   2892   
index 0000000..0d99b1c
 2593         -
-- /dev/null
        2893  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2594   2894   
@@ -0,0 +1,5 @@
        2895  +
POST / HTTP/1.1
        2896  +
Host:example.amazonaws.com
        2897  +
X-Amz-Date:20150830T123600Z
        2898  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2899  +
 2595   2900   
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
 2596   2901   
similarity index 100%
 2597   2902   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 2598   2903   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2599   2904   
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
 2600   2905   
new file mode 100644
 2601   2906   
index 0000000..d3341e7
 2602         -
-- /dev/null
        2907  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2603   2908   
@@ -0,0 +1,7 @@
        2909  +
POST
        2910  +
/
        2911  +
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
        2912  +
host:example.amazonaws.com
        2913  +
        2914  +
host
        2915  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2604   2916   
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
 2605   2917   
new file mode 100644
 2606   2918   
index 0000000..79f7e0d
 2607         -
-- /dev/null
        2919  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2608   2920   
@@ -0,0 +1 @@
        2921  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2609   2922   
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
 2610   2923   
new file mode 100644
 2611   2924   
index 0000000..94f1b21
 2612         -
-- /dev/null
        2925  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2613   2926   
@@ -0,0 +1,3 @@
        2927  +
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
        2928  +
Host:example.amazonaws.com
        2929  +
 2614   2930   
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
 2615   2931   
new file mode 100644
 2616   2932   
index 0000000..e8f335b
 2617         -
-- /dev/null
        2933  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2618   2934   
@@ -0,0 +1,4 @@
        2935  +
AWS4-HMAC-SHA256
        2936  +
20150830T123600Z
        2937  +
20150830/us-east-1/service/aws4_request
        2938  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2619   2939   
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
 2620   2940   
similarity index 100%
 2621   2941   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 2622   2942   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2623   2943   
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
 2624   2944   
new file mode 100644
 2625   2945   
index 0000000..0468d80
 2626         -
-- /dev/null
        2946  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2627   2947   
@@ -0,0 +1,12 @@
        2948  +
{
        2949  +
    "credentials": {
        2950  +
        "access_key_id": "AKIDEXAMPLE",
        2951  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2952  +
    },
        2953  +
    "expiration_in_seconds": 3600,
        2954  +
    "normalize": true,
        2955  +
    "region": "us-east-1",
        2956  +
    "service": "service",
        2957  +
    "sign_body": false,
        2958  +
    "timestamp": "2015-08-30T12:36:00Z"
        2959  +
}
              \
 No newline at end of file
 2628   2960   
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
 2629   2961   
similarity index 100%
 2630   2962   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 2631   2963   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2632   2964   
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
 2633   2965   
new file mode 100644
 2634   2966   
index 0000000..e4e6428
 2635         -
-- /dev/null
        2967  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2636   2968   
@@ -0,0 +1 @@
        2969  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 2637   2970   
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
 2638   2971   
new file mode 100644
 2639   2972   
index 0000000..e3778f5
 2640         -
-- /dev/null
        2973  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2641   2974   
@@ -0,0 +1,6 @@
        2975  +
POST / HTTP/1.1
        2976  +
Host:example.amazonaws.com
        2977  +
My-Header1:value1
        2978  +
X-Amz-Date:20150830T123600Z
        2979  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        2980  +
 2642   2981   
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
 2643   2982   
similarity index 100%
 2644   2983   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 2645   2984   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2646   2985   
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
 2647   2986   
new file mode 100644
 2648   2987   
index 0000000..bd7c937
 2649         -
-- /dev/null
        2988  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2650   2989   
@@ -0,0 +1,8 @@
        2990  +
POST
        2991  +
/
        2992  +
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
        2993  +
host:example.amazonaws.com
        2994  +
my-header1:value1
        2995  +
        2996  +
host;my-header1
        2997  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2651   2998   
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
 2652   2999   
new file mode 100644
 2653   3000   
index 0000000..0416f13
 2654         -
-- /dev/null
        3001  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2655   3002   
@@ -0,0 +1 @@
        3003  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 2656   3004   
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
 2657   3005   
new file mode 100644
 2658   3006   
index 0000000..5e6522f
 2659         -
-- /dev/null
        3007  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2660   3008   
@@ -0,0 +1,4 @@
        3009  +
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
        3010  +
Host:example.amazonaws.com
        3011  +
My-Header1:value1
        3012  +
 2661   3013   
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
 2662   3014   
new file mode 100644
 2663   3015   
index 0000000..d06d1df
 2664         -
-- /dev/null
        3016  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2665   3017   
@@ -0,0 +1,4 @@
        3018  +
AWS4-HMAC-SHA256
        3019  +
20150830T123600Z
        3020  +
20150830/us-east-1/service/aws4_request
        3021  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 2666   3022   
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
 2667   3023   
similarity index 100%
 2668   3024   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 2669   3025   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2670   3026   
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
 2671   3027   
new file mode 100644
 2672   3028   
index 0000000..0468d80
 2673         -
-- /dev/null
        3029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2674   3030   
@@ -0,0 +1,12 @@
        3031  +
{
        3032  +
    "credentials": {
        3033  +
        "access_key_id": "AKIDEXAMPLE",
        3034  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3035  +
    },
        3036  +
    "expiration_in_seconds": 3600,
        3037  +
    "normalize": true,
        3038  +
    "region": "us-east-1",
        3039  +
    "service": "service",
        3040  +
    "sign_body": false,
        3041  +
    "timestamp": "2015-08-30T12:36:00Z"
        3042  +
}
              \
 No newline at end of file
 2675   3043   
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
 2676   3044   
similarity index 100%
 2677   3045   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 2678   3046   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2679   3047   
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
 2680   3048   
new file mode 100644
 2681   3049   
index 0000000..bb3809c
 2682         -
-- /dev/null
        3050  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2683   3051   
@@ -0,0 +1 @@
        3052  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 2684   3053   
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
 2685   3054   
new file mode 100644
 2686   3055   
index 0000000..10f6761
 2687         -
-- /dev/null
        3056  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2688   3057   
@@ -0,0 +1,6 @@
        3058  +
POST / HTTP/1.1
        3059  +
Host:example.amazonaws.com
        3060  +
My-Header1:VALUE1
        3061  +
X-Amz-Date:20150830T123600Z
        3062  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        3063  +
 2689   3064   
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
 2690   3065   
similarity index 100%
 2691   3066   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 2692   3067   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2693   3068   
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
 2694   3069   
new file mode 100644
 2695   3070   
index 0000000..f84856f
 2696         -
-- /dev/null
        3071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2697   3072   
@@ -0,0 +1,8 @@
        3073  +
POST
        3074  +
/
        3075  +
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
        3076  +
host:example.amazonaws.com
        3077  +
my-header1:VALUE1
        3078  +
        3079  +
host;my-header1
        3080  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2698   3081   
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
 2699   3082   
new file mode 100644
 2700   3083   
index 0000000..a9d3cac
 2701         -
-- /dev/null
        3084  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2702   3085   
@@ -0,0 +1 @@
        3086  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 2703   3087   
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
 2704   3088   
new file mode 100644
 2705   3089   
index 0000000..cf96c7c
 2706         -
-- /dev/null
        3090  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2707   3091   
@@ -0,0 +1,4 @@
        3092  +
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
        3093  +
Host:example.amazonaws.com
        3094  +
My-Header1:VALUE1
        3095  +
 2708   3096   
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
 2709   3097   
new file mode 100644
 2710   3098   
index 0000000..47ef566
 2711         -
-- /dev/null
        3099  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2712   3100   
@@ -0,0 +1,4 @@
        3101  +
AWS4-HMAC-SHA256
        3102  +
20150830T123600Z
        3103  +
20150830/us-east-1/service/aws4_request
        3104  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 2713   3105   
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
 2714   3106   
similarity index 100%
 2715   3107   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 2716   3108   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2717   3109   
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
 2718   3110   
similarity index 100%
 2719   3111   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 2720   3112   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2721   3113   
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
 2722   3114   
similarity index 100%
 2723   3115   
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
 2724   3116   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2725   3117   
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
 2726   3118   
new file mode 100644
 2727   3119   
index 0000000..629487f
 2728         -
-- /dev/null
        3120  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2729   3121   
@@ -0,0 +1 @@
        3122  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2730   3123   
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
 2731   3124   
similarity index 67%
 2732   3125   
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
 2733   3126   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2734   3127   
index 291ed07..f96ff9e 100644
 2735         -
-- 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
        3128  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2736   3129   
@@ -1,5 +1,6 @@
 2737   3130   
POST / HTTP/1.1
 2738   3131   
Host:example.amazonaws.com
 2739         -
X-Amz-Date:20150830T123600Z
 2740   3132   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2741         -
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
        3133  +
X-Amz-Date:20150830T123600Z
        3134  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3135  +
 2742   3136   
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
 2743   3137   
similarity index 100%
 2744   3138   
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
 2745   3139   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2746   3140   
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
 2747   3141   
new file mode 100644
 2748   3142   
index 0000000..d3341e7
 2749         -
-- /dev/null
        3143  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 2750   3144   
@@ -0,0 +1,7 @@
        3145  +
POST
        3146  +
/
        3147  +
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
        3148  +
host:example.amazonaws.com
        3149  +
        3150  +
host
        3151  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2751   3152   
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
 2752   3153   
new file mode 100644
 2753   3154   
index 0000000..79f7e0d
 2754         -
-- /dev/null
        3155  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 2755   3156   
@@ -0,0 +1 @@
        3157  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2756   3158   
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
 2757   3159   
new file mode 100644
 2758   3160   
index 0000000..4983268
 2759         -
-- /dev/null
        3161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 2760   3162   
@@ -0,0 +1,3 @@
        3163  +
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
        3164  +
Host:example.amazonaws.com
        3165  +
 2761   3166   
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
 2762   3167   
new file mode 100644
 2763   3168   
index 0000000..e8f335b
 2764         -
-- /dev/null
        3169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 2765   3170   
@@ -0,0 +1,4 @@
        3171  +
AWS4-HMAC-SHA256
        3172  +
20150830T123600Z
        3173  +
20150830/us-east-1/service/aws4_request
        3174  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2766   3175   
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
 2767   3176   
similarity index 100%
 2768   3177   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 2769   3178   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 2770   3179   
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
 2771   3180   
similarity index 100%
 2772   3181   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 2773   3182   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 2774   3183   
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
 2775   3184   
similarity index 100%
 2776   3185   
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
 2777   3186   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2778   3187   
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
 2779   3188   
new file mode 100644
 2780   3189   
index 0000000..85a7c29
 2781         -
-- /dev/null
        3190  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 2782   3191   
@@ -0,0 +1 @@
        3192  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 2783   3193   
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
 2784   3194   
similarity index 65%
 2785   3195   
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
 2786   3196   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2787   3197   
index 37b2f04..4d0b143 100644
 2788         -
-- 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
        3198  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2789   3199   
@@ -1,5 +1,6 @@
 2790   3200   
POST / HTTP/1.1
 2791   3201   
Host:example.amazonaws.com
 2792         -
X-Amz-Date:20150830T123600Z
 2793   3202   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2794         -
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
        3203  +
X-Amz-Date:20150830T123600Z
        3204  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        3205  +
 2795   3206   
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
 2796   3207   
similarity index 100%
 2797   3208   
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
 2798   3209   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 2799   3210   
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
 2800   3211   
new file mode 100644
 2801   3212   
index 0000000..57a7bc3
 2802         -
-- /dev/null
        3213  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 2803   3214   
@@ -0,0 +1,7 @@
        3215  +
POST
        3216  +
/
        3217  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-SignedHeaders=host
        3218  +
host:example.amazonaws.com
        3219  +
        3220  +
host
        3221  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2804   3222   
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
 2805   3223   
new file mode 100644
 2806   3224   
index 0000000..eb905d2
 2807         -
-- /dev/null
        3225  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 2808   3226   
@@ -0,0 +1 @@
        3227  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 2809   3228   
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
 2810   3229   
new file mode 100644
 2811   3230   
index 0000000..1d80ec0
 2812         -
-- /dev/null
        3231  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 2813   3232   
@@ -0,0 +1,3 @@
        3233  +
POST /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-Signature=46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c HTTP/1.1
        3234  +
Host:example.amazonaws.com
        3235  +
 2814   3236   
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
 2815   3237   
new file mode 100644
 2816   3238   
index 0000000..bd0239a
 2817         -
-- /dev/null
        3239  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 2818   3240   
@@ -0,0 +1,4 @@
        3241  +
AWS4-HMAC-SHA256
        3242  +
20150830T123600Z
        3243  +
20150830/us-east-1/service/aws4_request
        3244  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 2819   3245   
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
 2820   3246   
similarity index 100%
 2821   3247   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 2822   3248   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 2823   3249   
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
 2824   3250   
new file mode 100644
 2825   3251   
index 0000000..0468d80
 2826         -
-- /dev/null
        3252  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 2827   3253   
@@ -0,0 +1,12 @@
        3254  +
{
        3255  +
    "credentials": {
        3256  +
        "access_key_id": "AKIDEXAMPLE",
        3257  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3258  +
    },
        3259  +
    "expiration_in_seconds": 3600,
        3260  +
    "normalize": true,
        3261  +
    "region": "us-east-1",
        3262  +
    "service": "service",
        3263  +
    "sign_body": false,
        3264  +
    "timestamp": "2015-08-30T12:36:00Z"
        3265  +
}
              \
 No newline at end of file
 2828   3266   
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
 2829   3267   
similarity index 100%
 2830   3268   
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
 2831   3269   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 2832   3270   
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
 2833   3271   
new file mode 100644
 2834   3272   
index 0000000..80ed433
 2835         -
-- /dev/null
        3273  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 2836   3274   
@@ -0,0 +1 @@
        3275  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2837   3276   
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
 2838   3277   
new file mode 100644
 2839   3278   
index 0000000..4e614f8
 2840         -
-- /dev/null
        3279  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 2841   3280   
@@ -0,0 +1,5 @@
        3281  +
POST /?Param1=value1 HTTP/1.1
        3282  +
Host:example.amazonaws.com
        3283  +
X-Amz-Date:20150830T123600Z
        3284  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3285  +
 2842   3286   
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
 2843   3287   
similarity index 100%
 2844   3288   
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
 2845   3289   
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
 2846   3290   
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
 2847   3291   
new file mode 100644
 2848   3292   
index 0000000..be66403
 2849         -
-- /dev/null
        3293  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 2850   3294   
@@ -0,0 +1,7 @@
        3295  +
POST
        3296  +
/
        3297  +
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
        3298  +
host:example.amazonaws.com
        3299  +
        3300  +
host
        3301  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2851   3302   
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
 2852   3303   
new file mode 100644
 2853   3304   
index 0000000..20fd32b
 2854         -
-- /dev/null
        3305  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 2855   3306   
@@ -0,0 +1 @@
        3307  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2856   3308   
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
 2857   3309   
new file mode 100644
 2858   3310   
index 0000000..d1148d0
 2859         -
-- /dev/null
        3311  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 2860   3312   
@@ -0,0 +1,3 @@
        3313  +
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
        3314  +
Host:example.amazonaws.com
        3315  +
 2861   3316   
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
 2862   3317   
new file mode 100644
 2863   3318   
index 0000000..1a77103
 2864         -
-- /dev/null
        3319  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 2865   3320   
@@ -0,0 +1,4 @@
        3321  +
AWS4-HMAC-SHA256
        3322  +
20150830T123600Z
        3323  +
20150830/us-east-1/service/aws4_request
        3324  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2866   3325   
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
 2867   3326   
similarity index 100%
 2868   3327   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 2869   3328   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 2870   3329   
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
 2871   3330   
new file mode 100644
 2872   3331   
index 0000000..0468d80
 2873         -
-- /dev/null
        3332  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 2874   3333   
@@ -0,0 +1,12 @@
        3334  +
{
        3335  +
    "credentials": {
        3336  +
        "access_key_id": "AKIDEXAMPLE",
        3337  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3338  +
    },
        3339  +
    "expiration_in_seconds": 3600,
        3340  +
    "normalize": true,
        3341  +
    "region": "us-east-1",
        3342  +
    "service": "service",
        3343  +
    "sign_body": false,
        3344  +
    "timestamp": "2015-08-30T12:36:00Z"
        3345  +
}
              \
 No newline at end of file
 2875   3346   
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
 2876   3347   
similarity index 100%
 2877   3348   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 2878   3349   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 2879   3350   
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
 2880   3351   
new file mode 100644
 2881   3352   
index 0000000..80ed433
 2882         -
-- /dev/null
        3353  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 2883   3354   
@@ -0,0 +1 @@
        3355  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2884   3356   
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
 2885   3357   
new file mode 100644
 2886   3358   
index 0000000..4e614f8
 2887         -
-- /dev/null
        3359  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 2888   3360   
@@ -0,0 +1,5 @@
        3361  +
POST /?Param1=value1 HTTP/1.1
        3362  +
Host:example.amazonaws.com
        3363  +
X-Amz-Date:20150830T123600Z
        3364  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3365  +
 2889   3366   
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
 2890   3367   
similarity index 100%
 2891   3368   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 2892   3369   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 2893   3370   
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
 2894   3371   
new file mode 100644
 2895   3372   
index 0000000..be66403
 2896         -
-- /dev/null
        3373  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 2897   3374   
@@ -0,0 +1,7 @@
        3375  +
POST
        3376  +
/
        3377  +
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
        3378  +
host:example.amazonaws.com
        3379  +
        3380  +
host
        3381  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2898   3382   
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
 2899   3383   
new file mode 100644
 2900   3384   
index 0000000..20fd32b
 2901         -
-- /dev/null
        3385  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 2902   3386   
@@ -0,0 +1 @@
        3387  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2903   3388   
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
 2904   3389   
new file mode 100644
 2905   3390   
index 0000000..d1148d0
 2906         -
-- /dev/null
        3391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 2907   3392   
@@ -0,0 +1,3 @@
        3393  +
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
        3394  +
Host:example.amazonaws.com
        3395  +
 2908   3396   
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
 2909   3397   
new file mode 100644
 2910   3398   
index 0000000..1a77103
 2911         -
-- /dev/null
        3399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 2912   3400   
@@ -0,0 +1,4 @@
        3401  +
AWS4-HMAC-SHA256
        3402  +
20150830T123600Z
        3403  +
20150830/us-east-1/service/aws4_request
        3404  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2913   3405   
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
 2914   3406   
similarity index 100%
 2915   3407   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 2916   3408   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 2917   3409   
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
 2918   3410   
new file mode 100644
 2919   3411   
index 0000000..0468d80
 2920         -
-- /dev/null
        3412  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 2921   3413   
@@ -0,0 +1,12 @@
        3414  +
{
        3415  +
    "credentials": {
        3416  +
        "access_key_id": "AKIDEXAMPLE",
        3417  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3418  +
    },
        3419  +
    "expiration_in_seconds": 3600,
        3420  +
    "normalize": true,
        3421  +
    "region": "us-east-1",
        3422  +
    "service": "service",
        3423  +
    "sign_body": false,
        3424  +
    "timestamp": "2015-08-30T12:36:00Z"
        3425  +
}
              \
 No newline at end of file
 2922   3426   
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
 2923   3427   
similarity index 100%
 2924   3428   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 2925   3429   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 2926   3430   
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
 2927   3431   
new file mode 100644
 2928   3432   
index 0000000..629487f
 2929         -
-- /dev/null
        3433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 2930   3434   
@@ -0,0 +1 @@
        3435  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2931   3436   
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
 2932   3437   
new file mode 100644
 2933   3438   
index 0000000..0d99b1c
 2934         -
-- /dev/null
        3439  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 2935   3440   
@@ -0,0 +1,5 @@
        3441  +
POST / HTTP/1.1
        3442  +
Host:example.amazonaws.com
        3443  +
X-Amz-Date:20150830T123600Z
        3444  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3445  +
 2936   3446   
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
 2937   3447   
similarity index 100%
 2938   3448   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 2939   3449   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 2940   3450   
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
 2941   3451   
new file mode 100644
 2942   3452   
index 0000000..d3341e7
 2943         -
-- /dev/null
        3453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 2944   3454   
@@ -0,0 +1,7 @@
        3455  +
POST
        3456  +
/
        3457  +
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
        3458  +
host:example.amazonaws.com
        3459  +
        3460  +
host
        3461  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2945   3462   
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
 2946   3463   
new file mode 100644
 2947   3464   
index 0000000..79f7e0d
 2948         -
-- /dev/null
        3465  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 2949   3466   
@@ -0,0 +1 @@
        3467  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2950   3468   
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
 2951   3469   
new file mode 100644
 2952   3470   
index 0000000..94f1b21
 2953         -
-- /dev/null
        3471  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 2954   3472   
@@ -0,0 +1,3 @@
        3473  +
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
        3474  +
Host:example.amazonaws.com
        3475  +
 2955   3476   
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
 2956   3477   
new file mode 100644
 2957   3478   
index 0000000..e8f335b
 2958         -
-- /dev/null
        3479  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 2959   3480   
@@ -0,0 +1,4 @@
        3481  +
AWS4-HMAC-SHA256
        3482  +
20150830T123600Z
        3483  +
20150830/us-east-1/service/aws4_request
        3484  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2960   3485   
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
 2961   3486   
similarity index 100%
 2962   3487   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 2963   3488   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 2964   3489   
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
 2965   3490   
similarity index 99%
 2966   3491   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 2967   3492   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 2968   3493   
index fc4bce6..0db1df1 100644
 2969         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
        3494  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 2970   3495   
@@ -1,12 +1,12 @@
 2971   3496   
{
 2972   3497   
    "credentials": {
 2973   3498   
        "access_key_id": "AKIDEXAMPLE",
 2974   3499   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 2975   3500   
    },
 2976   3501   
    "expiration_in_seconds": 3600,
 2977   3502   
    "normalize": true,
 2978   3503   
    "region": "us-east-1",
 2979   3504   
    "service": "service",
 2980   3505   
    "sign_body": true,
 2981   3506   
    "timestamp": "2015-08-30T12:36:00Z"
 2982         -
}
        3507  +
}
              \
 No newline at end of file
 2983   3508   
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
 2984   3509   
new file mode 100644
 2985   3510   
index 0000000..c218fdf
 2986         -
-- /dev/null
        3511  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 2987   3512   
@@ -0,0 +1,11 @@
        3513  +
POST
        3514  +
/
        3515  +
        3516  +
content-length:13
        3517  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3518  +
host:example.amazonaws.com
        3519  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3520  +
x-amz-date:20150830T123600Z
        3521  +
        3522  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3523  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2988   3524   
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
 2989   3525   
new file mode 100644
 2990   3526   
index 0000000..836aa8b
 2991         -
-- /dev/null
        3527  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 2992   3528   
@@ -0,0 +1 @@
        3529  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 2993   3530   
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
 2994   3531   
new file mode 100644
 2995   3532   
index 0000000..9262d53
 2996         -
-- /dev/null
        3533  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 2997   3534   
@@ -0,0 +1,9 @@
        3535  +
POST / HTTP/1.1
        3536  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3537  +
Host:example.amazonaws.com
        3538  +
Content-Length:13
        3539  +
X-Amz-Date:20150830T123600Z
        3540  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3541  +
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
        3542  +
        3543  +
Param1=value1
              \
 No newline at end of file
 2998   3544   
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
 2999   3545   
new file mode 100644
 3000   3546   
index 0000000..ddbdccc
 3001         -
-- /dev/null
        3547  +
++ 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
 3002   3548   
@@ -0,0 +1,4 @@
        3549  +
AWS4-HMAC-SHA256
        3550  +
20150830T123600Z
        3551  +
20150830/us-east-1/service/aws4_request
        3552  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 3003   3553   
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
 3004   3554   
new file mode 100644
 3005   3555   
index 0000000..596a579
 3006         -
-- /dev/null
        3556  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 3007   3557   
@@ -0,0 +1,9 @@
        3558  +
POST
        3559  +
/
        3560  +
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
        3561  +
content-length:13
        3562  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3563  +
host:example.amazonaws.com
        3564  +
        3565  +
content-length;content-type;host
        3566  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3008   3567   
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
 3009   3568   
new file mode 100644
 3010   3569   
index 0000000..bc85cd8
 3011         -
-- /dev/null
        3570  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 3012   3571   
@@ -0,0 +1 @@
        3572  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 3013   3573   
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
 3014   3574   
new file mode 100644
 3015   3575   
index 0000000..16b59e5
 3016         -
-- /dev/null
        3576  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 3017   3577   
@@ -0,0 +1,6 @@
        3578  +
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
        3579  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3580  +
Host:example.amazonaws.com
        3581  +
Content-Length:13
        3582  +
        3583  +
Param1=value1
              \
 No newline at end of file
 3018   3584   
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
 3019   3585   
new file mode 100644
 3020   3586   
index 0000000..50074af
 3021         -
-- /dev/null
        3587  +
++ 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
 3022   3588   
@@ -0,0 +1,4 @@
        3589  +
AWS4-HMAC-SHA256
        3590  +
20150830T123600Z
        3591  +
20150830/us-east-1/service/aws4_request
        3592  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 3023   3593   
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
 3024   3594   
similarity index 89%
 3025   3595   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 3026   3596   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 3027   3597   
index b711c25..8289eaa 100644
 3028         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
        3598  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 3029   3599   
@@ -1,6 +1,6 @@
 3030   3600   
POST / HTTP/1.1
 3031   3601   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 3032   3602   
Host:example.amazonaws.com
 3033   3603   
Content-Length:13
 3034   3604   
 3035         -
Param1=value1
        3605  +
Param1=value1
              \
 No newline at end of file
 3036   3606   
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
 3037   3607   
similarity index 99%
 3038   3608   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 3039   3609   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 3040   3610   
index fc4bce6..0db1df1 100644
 3041         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
        3611  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 3042   3612   
@@ -1,12 +1,12 @@
 3043   3613   
{
 3044   3614   
    "credentials": {
 3045   3615   
        "access_key_id": "AKIDEXAMPLE",
 3046   3616   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 3047   3617   
    },
 3048   3618   
    "expiration_in_seconds": 3600,
 3049   3619   
    "normalize": true,
 3050   3620   
    "region": "us-east-1",
 3051   3621   
    "service": "service",
 3052   3622   
    "sign_body": true,
 3053   3623   
    "timestamp": "2015-08-30T12:36:00Z"
 3054         -
}
        3624  +
}
              \
 No newline at end of file
 3055   3625   
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
 3056   3626   
new file mode 100644
 3057   3627   
index 0000000..4d116a5
 3058         -
-- /dev/null
        3628  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 3059   3629   
@@ -0,0 +1,11 @@
        3630  +
POST
        3631  +
/
        3632  +
        3633  +
content-length:13
        3634  +
content-type:application/x-www-form-urlencoded
        3635  +
host:example.amazonaws.com
        3636  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3637  +
x-amz-date:20150830T123600Z
        3638  +
        3639  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3640  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3060   3641   
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
 3061   3642   
new file mode 100644
 3062   3643   
index 0000000..0d2ac37
 3063         -
-- /dev/null
        3644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 3064   3645   
@@ -0,0 +1 @@
        3646  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 3065   3647   
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
 3066   3648   
new file mode 100644
 3067   3649   
index 0000000..bd5e49c
 3068         -
-- /dev/null
        3650  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 3069   3651   
@@ -0,0 +1,9 @@
        3652  +
POST / HTTP/1.1
        3653  +
Content-Type:application/x-www-form-urlencoded
        3654  +
Host:example.amazonaws.com
        3655  +
Content-Length:13
        3656  +
X-Amz-Date:20150830T123600Z
        3657  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3658  +
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
        3659  +
        3660  +
Param1=value1
              \
 No newline at end of file
 3070   3661   
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
 3071   3662   
new file mode 100644
 3072   3663   
index 0000000..f1c599c
 3073         -
-- /dev/null
        3664  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 3074   3665   
@@ -0,0 +1,4 @@
        3666  +
AWS4-HMAC-SHA256
        3667  +
20150830T123600Z
        3668  +
20150830/us-east-1/service/aws4_request
        3669  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 3075   3670   
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
 3076   3671   
new file mode 100644
 3077   3672   
index 0000000..1fc1bb7
 3078         -
-- /dev/null
        3673  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 3079   3674   
@@ -0,0 +1,9 @@
        3675  +
POST
        3676  +
/
        3677  +
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
        3678  +
content-length:13
        3679  +
content-type:application/x-www-form-urlencoded
        3680  +
host:example.amazonaws.com
        3681  +
        3682  +
content-length;content-type;host
        3683  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3080   3684   
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
 3081   3685   
new file mode 100644
 3082   3686   
index 0000000..98c91b3
 3083         -
-- /dev/null
        3687  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 3084   3688   
@@ -0,0 +1 @@
        3689  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 3085   3690   
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
 3086   3691   
new file mode 100644
 3087   3692   
index 0000000..055cd7a
 3088         -
-- /dev/null
        3693  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 3089   3694   
@@ -0,0 +1,6 @@
        3695  +
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
        3696  +
Content-Type:application/x-www-form-urlencoded
        3697  +
Host:example.amazonaws.com
        3698  +
Content-Length:13
        3699  +
        3700  +
Param1=value1
              \
 No newline at end of file
 3090   3701   
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
 3091   3702   
new file mode 100644
 3092   3703   
index 0000000..db7fc27
 3093         -
-- /dev/null
        3704  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 3094   3705   
@@ -0,0 +1,4 @@
        3706  +
AWS4-HMAC-SHA256
        3707  +
20150830T123600Z
        3708  +
20150830/us-east-1/service/aws4_request
        3709  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 3095   3710   
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
 3096   3711   
similarity index 88%
 3097   3712   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 3098   3713   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3099   3714   
index 0091102..760b2d3 100644
 3100         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
        3715  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3101   3716   
@@ -1,6 +1,6 @@
 3102   3717   
POST / HTTP/1.1
 3103   3718   
Content-Type:application/x-www-form-urlencoded
 3104   3719   
Host:example.amazonaws.com
 3105   3720   
Content-Length:13
 3106   3721   
 3107         -
Param1=value1
        3722  +
Param1=value1
              \
 No newline at end of file
 3108   3723   
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
 3109   3724   
new file mode 100644
 3110   3725   
index 0000000..0468d80
 3111         -
-- /dev/null
        3726  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 3112   3727   
@@ -0,0 +1,12 @@
        3728  +
{
        3729  +
    "credentials": {
        3730  +
        "access_key_id": "AKIDEXAMPLE",
        3731  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3732  +
    },
        3733  +
    "expiration_in_seconds": 3600,
        3734  +
    "normalize": true,
        3735  +
    "region": "us-east-1",
        3736  +
    "service": "service",
        3737  +
    "sign_body": false,
        3738  +
    "timestamp": "2015-08-30T12:36:00Z"
        3739  +
}
              \
 No newline at end of file
 3113   3740   
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
 3114   3741   
similarity index 99%
 3115   3742   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 3116   3743   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3117   3744   
index ccb5f43..1bc448e 100644
 3118         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
        3745  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3119   3746   
@@ -1,10 +1,10 @@
 3120   3747   
GET
 3121   3748   
/
 3122   3749   
 3123   3750   
host:example.amazonaws.com
 3124   3751   
my-header1:value2,value2,value1
 3125   3752   
x-amz-date:20150830T123600Z
 3126   3753   
x-amz-region-set:us-east-1
 3127   3754   
 3128   3755   
host;my-header1;x-amz-date;x-amz-region-set
 3129         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3756  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3130   3757   
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
 3131   3758   
new file mode 100644
 3132   3759   
index 0000000..489c182
 3133         -
-- /dev/null
        3760  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 3134   3761   
@@ -0,0 +1 @@
        3762  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 3135   3763   
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
 3136   3764   
new file mode 100644
 3137   3765   
index 0000000..e1b8dbf
 3138         -
-- /dev/null
        3766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 3139   3767   
@@ -0,0 +1,9 @@
        3768  +
GET / HTTP/1.1
        3769  +
Host:example.amazonaws.com
        3770  +
My-Header1:value2
        3771  +
My-Header1:value2
        3772  +
My-Header1:value1
        3773  +
X-Amz-Date:20150830T123600Z
        3774  +
X-Amz-Region-Set:us-east-1
        3775  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3776  +
 3140   3777   
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
 3141   3778   
similarity index 99%
 3142   3779   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 3143   3780   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3144   3781   
index 8783461..bfc4619 100644
 3145         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
        3782  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3146   3783   
@@ -1,4 +1,4 @@
 3147   3784   
AWS4-ECDSA-P256-SHA256
 3148   3785   
20150830T123600Z
 3149   3786   
20150830/service/aws4_request
 3150         -
30f1f7b639b7fd5982a0f700e6d23bf7bb24f2f1d9e1314005bf22130da61cdf
        3787  +
30f1f7b639b7fd5982a0f700e6d23bf7bb24f2f1d9e1314005bf22130da61cdf
              \
 No newline at end of file
 3151   3788   
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
 3152   3789   
new file mode 100644
 3153   3790   
index 0000000..379dcb2
 3154         -
-- /dev/null
        3791  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 3155   3792   
@@ -0,0 +1,4 @@
        3793  +
{
        3794  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3795  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3796  +
}
 3156   3797   
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
 3157   3798   
similarity index 99%
 3158   3799   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 3159   3800   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3160   3801   
index 9561297..c05c3f5 100644
 3161         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
        3802  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3162   3803   
@@ -1,8 +1,8 @@
 3163   3804   
GET
 3164   3805   
/
 3165   3806   
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
 3166   3807   
host:example.amazonaws.com
 3167   3808   
my-header1:value2,value2,value1
 3168   3809   
 3169   3810   
host;my-header1
 3170         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3811  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3171   3812   
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
 3172   3813   
new file mode 100644
 3173   3814   
index 0000000..de9a4c3
 3174         -
-- /dev/null
        3815  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 3175   3816   
@@ -0,0 +1 @@
        3817  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 3176   3818   
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
 3177   3819   
new file mode 100644
 3178   3820   
index 0000000..6c6b8c4
 3179         -
-- /dev/null
        3821  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 3180   3822   
@@ -0,0 +1,6 @@
        3823  +
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
        3824  +
Host:example.amazonaws.com
        3825  +
My-Header1:value2
        3826  +
My-Header1:value2
        3827  +
My-Header1:value1
        3828  +
 3181   3829   
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
 3182   3830   
similarity index 99%
 3183   3831   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 3184   3832   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3185   3833   
index 3140f6f..4eef106 100644
 3186         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
        3834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3187   3835   
@@ -1,4 +1,4 @@
 3188   3836   
AWS4-ECDSA-P256-SHA256
 3189   3837   
20150830T123600Z
 3190   3838   
20150830/service/aws4_request
 3191         -
a6e21a0099c98cbb4ec73928a08e8b116dfd634c471a8c03c4007b5258b664ea
        3839  +
a6e21a0099c98cbb4ec73928a08e8b116dfd634c471a8c03c4007b5258b664ea
              \
 No newline at end of file
 3192   3840   
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
 3193   3841   
similarity index 78%
 3194   3842   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 3195   3843   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3196   3844   
index 08a0364..40455ce 100644
 3197         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        3845  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3198   3846   
@@ -1,6 +1,5 @@
 3199   3847   
GET / HTTP/1.1
 3200   3848   
Host:example.amazonaws.com
 3201   3849   
My-Header1:value2
 3202   3850   
My-Header1:value2
 3203   3851   
My-Header1:value1
 3204         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3205   3852   
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
 3206   3853   
new file mode 100644
 3207   3854   
index 0000000..0468d80
 3208         -
-- /dev/null
        3855  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 3209   3856   
@@ -0,0 +1,12 @@
        3857  +
{
        3858  +
    "credentials": {
        3859  +
        "access_key_id": "AKIDEXAMPLE",
        3860  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3861  +
    },
        3862  +
    "expiration_in_seconds": 3600,
        3863  +
    "normalize": true,
        3864  +
    "region": "us-east-1",
        3865  +
    "service": "service",
        3866  +
    "sign_body": false,
        3867  +
    "timestamp": "2015-08-30T12:36:00Z"
        3868  +
}
              \
 No newline at end of file
 3210   3869   
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
 3211   3870   
new file mode 100644
 3212   3871   
index 0000000..69526cd
 3213         -
-- /dev/null
        3872  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 3214   3873   
@@ -0,0 +1,10 @@
        3874  +
GET
        3875  +
/
        3876  +
        3877  +
host:example.amazonaws.com
        3878  +
my-header1:value1 value2 value3
        3879  +
x-amz-date:20150830T123600Z
        3880  +
x-amz-region-set:us-east-1
        3881  +
        3882  +
host;my-header1;x-amz-date;x-amz-region-set
        3883  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3215   3884   
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
 3216   3885   
new file mode 100644
 3217   3886   
index 0000000..d51b4f3
 3218         -
-- /dev/null
        3887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 3219   3888   
@@ -0,0 +1 @@
        3889  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 3220   3890   
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
 3221   3891   
new file mode 100644
 3222   3892   
index 0000000..8131420
 3223         -
-- /dev/null
        3893  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 3224   3894   
@@ -0,0 +1,9 @@
        3895  +
GET / HTTP/1.1
        3896  +
Host:example.amazonaws.com
        3897  +
My-Header1:value1
        3898  +
  value2
        3899  +
     value3
        3900  +
X-Amz-Date:20150830T123600Z
        3901  +
X-Amz-Region-Set:us-east-1
        3902  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        3903  +
 3225   3904   
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
 3226   3905   
new file mode 100644
 3227   3906   
index 0000000..e4d99fa
 3228         -
-- /dev/null
        3907  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 3229   3908   
@@ -0,0 +1,4 @@
        3909  +
AWS4-ECDSA-P256-SHA256
        3910  +
20150830T123600Z
        3911  +
20150830/service/aws4_request
        3912  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 3230   3913   
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
 3231   3914   
new file mode 100644
 3232   3915   
index 0000000..379dcb2
 3233         -
-- /dev/null
        3916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 3234   3917   
@@ -0,0 +1,4 @@
        3918  +
{
        3919  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3920  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3921  +
}
 3235   3922   
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
 3236   3923   
new file mode 100644
 3237   3924   
index 0000000..3c4d52f
 3238         -
-- /dev/null
        3925  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 3239   3926   
@@ -0,0 +1,8 @@
        3927  +
GET
        3928  +
/
        3929  +
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
        3930  +
host:example.amazonaws.com
        3931  +
my-header1:value1 value2 value3
        3932  +
        3933  +
host;my-header1
        3934  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3240   3935   
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
 3241   3936   
new file mode 100644
 3242   3937   
index 0000000..4e63f9a
 3243         -
-- /dev/null
        3938  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 3244   3939   
@@ -0,0 +1 @@
        3940  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 3245   3941   
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
 3246   3942   
new file mode 100644
 3247   3943   
index 0000000..adf1f09
 3248         -
-- /dev/null
        3944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 3249   3945   
@@ -0,0 +1,6 @@
        3946  +
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
        3947  +
Host:example.amazonaws.com
        3948  +
My-Header1:value1
        3949  +
  value2
        3950  +
     value3
        3951  +
 3250   3952   
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
 3251   3953   
new file mode 100644
 3252   3954   
index 0000000..e085407
 3253         -
-- /dev/null
        3955  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 3254   3956   
@@ -0,0 +1,4 @@
        3957  +
AWS4-ECDSA-P256-SHA256
        3958  +
20150830T123600Z
        3959  +
20150830/service/aws4_request
        3960  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 3255   3961   
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
 3256   3962   
new file mode 100644
 3257   3963   
index 0000000..b5026cd
 3258         -
-- /dev/null
        3964  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 3259   3965   
@@ -0,0 +1,5 @@
        3966  +
GET / HTTP/1.1
        3967  +
Host:example.amazonaws.com
        3968  +
My-Header1:value1
        3969  +
  value2
        3970  +
     value3
 3260   3971   
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
 3261   3972   
new file mode 100644
 3262   3973   
index 0000000..0468d80
 3263         -
-- /dev/null
        3974  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 3264   3975   
@@ -0,0 +1,12 @@
        3976  +
{
        3977  +
    "credentials": {
        3978  +
        "access_key_id": "AKIDEXAMPLE",
        3979  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3980  +
    },
        3981  +
    "expiration_in_seconds": 3600,
        3982  +
    "normalize": true,
        3983  +
    "region": "us-east-1",
        3984  +
    "service": "service",
        3985  +
    "sign_body": false,
        3986  +
    "timestamp": "2015-08-30T12:36:00Z"
        3987  +
}
              \
 No newline at end of file
 3265   3988   
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
 3266   3989   
similarity index 99%
 3267   3990   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 3268   3991   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3269   3992   
index 9375193..533afdb 100644
 3270         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
        3993  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3271   3994   
@@ -1,10 +1,10 @@
 3272   3995   
GET
 3273   3996   
/
 3274   3997   
 3275   3998   
host:example.amazonaws.com
 3276   3999   
my-header1:value4,value1,value3,value2
 3277   4000   
x-amz-date:20150830T123600Z
 3278   4001   
x-amz-region-set:us-east-1
 3279   4002   
 3280   4003   
host;my-header1;x-amz-date;x-amz-region-set
 3281         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4004  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3282   4005   
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
 3283   4006   
new file mode 100644
 3284   4007   
index 0000000..057b426
 3285         -
-- /dev/null
        4008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 3286   4009   
@@ -0,0 +1 @@
        4010  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 3287   4011   
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
 3288   4012   
new file mode 100644
 3289   4013   
index 0000000..4e4ccf0
 3290         -
-- /dev/null
        4014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 3291   4015   
@@ -0,0 +1,10 @@
        4016  +
GET / HTTP/1.1
        4017  +
Host:example.amazonaws.com
        4018  +
My-Header1:value4
        4019  +
My-Header1:value1
        4020  +
My-Header1:value3
        4021  +
My-Header1:value2
        4022  +
X-Amz-Date:20150830T123600Z
        4023  +
X-Amz-Region-Set:us-east-1
        4024  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        4025  +
 3292   4026   
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
 3293   4027   
similarity index 99%
 3294   4028   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 3295   4029   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3296   4030   
index 6400baf..e68c952 100644
 3297         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
        4031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3298   4032   
@@ -1,4 +1,4 @@
 3299   4033   
AWS4-ECDSA-P256-SHA256
 3300   4034   
20150830T123600Z
 3301   4035   
20150830/service/aws4_request
 3302         -
e1c3b5d34632ffff080330b3bc31906c8988bf1683f4af689ef3f1811952df36
        4036  +
e1c3b5d34632ffff080330b3bc31906c8988bf1683f4af689ef3f1811952df36
              \
 No newline at end of file
 3303   4037   
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
 3304   4038   
new file mode 100644
 3305   4039   
index 0000000..379dcb2
 3306         -
-- /dev/null
        4040  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 3307   4041   
@@ -0,0 +1,4 @@
        4042  +
{
        4043  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4044  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4045  +
}
 3308   4046   
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
 3309   4047   
similarity index 99%
 3310   4048   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 3311   4049   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3312   4050   
index ecf494a..68450fe 100644
 3313         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
        4051  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3314   4052   
@@ -1,8 +1,8 @@
 3315   4053   
GET
 3316   4054   
/
 3317   4055   
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
 3318   4056   
host:example.amazonaws.com
 3319   4057   
my-header1:value4,value1,value3,value2
 3320   4058   
 3321   4059   
host;my-header1
 3322         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4060  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3323   4061   
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
 3324   4062   
new file mode 100644
 3325   4063   
index 0000000..9df2eb3
 3326         -
-- /dev/null
        4064  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 3327   4065   
@@ -0,0 +1 @@
        4066  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 3328   4067   
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
 3329   4068   
new file mode 100644
 3330   4069   
index 0000000..62f8cb7
 3331         -
-- /dev/null
        4070  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 3332   4071   
@@ -0,0 +1,7 @@
        4072  +
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
        4073  +
Host:example.amazonaws.com
        4074  +
My-Header1:value4
        4075  +
My-Header1:value1
        4076  +
My-Header1:value3
        4077  +
My-Header1:value2
        4078  +
 3333   4079   
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
 3334   4080   
similarity index 99%
 3335   4081   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 3336   4082   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3337   4083   
index b584179..2bcf7b1 100644
 3338         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
        4084  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3339   4085   
@@ -1,4 +1,4 @@
 3340   4086   
AWS4-ECDSA-P256-SHA256
 3341   4087   
20150830T123600Z
 3342   4088   
20150830/service/aws4_request
 3343         -
e2bf35ea25a1943bf52cfc8348c787db8fd8ca642dc9f2b9443939c2fb0d3c54
        4089  +
e2bf35ea25a1943bf52cfc8348c787db8fd8ca642dc9f2b9443939c2fb0d3c54
              \
 No newline at end of file
 3344   4090   
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
 3345   4091   
similarity index 80%
 3346   4092   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 3347   4093   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3348   4094   
index f7bd9e6..2c6f49d 100644
 3349         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        4095  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3350   4096   
@@ -1,7 +1,6 @@
 3351   4097   
GET / HTTP/1.1
 3352   4098   
Host:example.amazonaws.com
 3353   4099   
My-Header1:value4
 3354   4100   
My-Header1:value1
 3355   4101   
My-Header1:value3
 3356   4102   
My-Header1:value2
 3357         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3358   4103   
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
 3359   4104   
new file mode 100644
 3360   4105   
index 0000000..0468d80
 3361         -
-- /dev/null
        4106  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 3362   4107   
@@ -0,0 +1,12 @@
        4108  +
{
        4109  +
    "credentials": {
        4110  +
        "access_key_id": "AKIDEXAMPLE",
        4111  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4112  +
    },
        4113  +
    "expiration_in_seconds": 3600,
        4114  +
    "normalize": true,
        4115  +
    "region": "us-east-1",
        4116  +
    "service": "service",
        4117  +
    "sign_body": false,
        4118  +
    "timestamp": "2015-08-30T12:36:00Z"
        4119  +
}
              \
 No newline at end of file
 3363   4120   
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
 3364   4121   
similarity index 99%
 3365   4122   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 3366   4123   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3367   4124   
index e91e952..94b6be5 100644
 3368         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
        4125  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3369   4126   
@@ -1,11 +1,11 @@
 3370   4127   
GET
 3371   4128   
/
 3372   4129   
 3373   4130   
host:example.amazonaws.com
 3374   4131   
my-header1:value1
 3375   4132   
my-header2:"a b c"
 3376   4133   
x-amz-date:20150830T123600Z
 3377   4134   
x-amz-region-set:us-east-1
 3378   4135   
 3379   4136   
host;my-header1;my-header2;x-amz-date;x-amz-region-set
 3380         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4137  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3381   4138   
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
 3382   4139   
new file mode 100644
 3383   4140   
index 0000000..bf8c3cb
 3384         -
-- /dev/null
        4141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 3385   4142   
@@ -0,0 +1 @@
        4143  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 3386   4144   
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
 3387   4145   
new file mode 100644
 3388   4146   
index 0000000..f7f054d
 3389         -
-- /dev/null
        4147  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 3390   4148   
@@ -0,0 +1,8 @@
        4149  +
GET / HTTP/1.1
        4150  +
Host:example.amazonaws.com
        4151  +
My-Header1: value1
        4152  +
My-Header2: "a   b   c"
        4153  +
X-Amz-Date:20150830T123600Z
        4154  +
X-Amz-Region-Set:us-east-1
        4155  +
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
        4156  +
 3391   4157   
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
 3392   4158   
similarity index 99%
 3393   4159   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 3394   4160   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3395   4161   
index 0e407d8..a2c9c05 100644
 3396         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
        4162  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3397   4163   
@@ -1,4 +1,4 @@
 3398   4164   
AWS4-ECDSA-P256-SHA256
 3399   4165   
20150830T123600Z
 3400   4166   
20150830/service/aws4_request
 3401         -
18b43001be9b531ebdd8202144dbd7630ea8a35bc328a7d0e561dda03a876095
        4167  +
18b43001be9b531ebdd8202144dbd7630ea8a35bc328a7d0e561dda03a876095
              \
 No newline at end of file
 3402   4168   
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
 3403   4169   
new file mode 100644
 3404   4170   
index 0000000..379dcb2
 3405         -
-- /dev/null
        4171  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3406   4172   
@@ -0,0 +1,4 @@
        4173  +
{
        4174  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4175  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4176  +
}
 3407   4177   
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
 3408   4178   
similarity index 99%
 3409   4179   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 3410   4180   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3411   4181   
index 8a3b042..3a51150 100644
 3412         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
        4182  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3413   4183   
@@ -1,9 +1,9 @@
 3414   4184   
GET
 3415   4185   
/
 3416   4186   
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
 3417   4187   
host:example.amazonaws.com
 3418   4188   
my-header1:value1
 3419   4189   
my-header2:"a b c"
 3420   4190   
 3421   4191   
host;my-header1;my-header2
 3422         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4192  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3423   4193   
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
 3424   4194   
new file mode 100644
 3425   4195   
index 0000000..0033053
 3426         -
-- /dev/null
        4196  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3427   4197   
@@ -0,0 +1 @@
        4198  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 3428   4199   
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
 3429   4200   
new file mode 100644
 3430   4201   
index 0000000..1537888
 3431         -
-- /dev/null
        4202  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3432   4203   
@@ -0,0 +1,5 @@
        4204  +
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
        4205  +
Host:example.amazonaws.com
        4206  +
My-Header1: value1
        4207  +
My-Header2: "a   b   c"
        4208  +
 3433   4209   
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
 3434   4210   
similarity index 99%
 3435   4211   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 3436   4212   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3437   4213   
index 5eead25..633dc1f 100644
 3438         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
        4214  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3439   4215   
@@ -1,4 +1,4 @@
 3440   4216   
AWS4-ECDSA-P256-SHA256
 3441   4217   
20150830T123600Z
 3442   4218   
20150830/service/aws4_request
 3443         -
4f92ebcf5f0844588e443a2243fafdb64319c6d1ad913c07686129b9991326a3
        4219  +
4f92ebcf5f0844588e443a2243fafdb64319c6d1ad913c07686129b9991326a3
              \
 No newline at end of file
 3444   4220   
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
 3445   4221   
similarity index 75%
 3446   4222   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 3447   4223   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3448   4224   
index 901f36c..ad1ea98 100644
 3449         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        4225  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3450   4226   
@@ -1,5 +1,4 @@
 3451   4227   
GET / HTTP/1.1
 3452   4228   
Host:example.amazonaws.com
 3453   4229   
My-Header1: value1
 3454   4230   
My-Header2: "a   b   c"
 3455         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3456   4231   
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
 3457   4232   
new file mode 100644
 3458   4233   
index 0000000..0468d80
 3459         -
-- /dev/null
        4234  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3460   4235   
@@ -0,0 +1,12 @@
        4236  +
{
        4237  +
    "credentials": {
        4238  +
        "access_key_id": "AKIDEXAMPLE",
        4239  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4240  +
    },
        4241  +
    "expiration_in_seconds": 3600,
        4242  +
    "normalize": true,
        4243  +
    "region": "us-east-1",
        4244  +
    "service": "service",
        4245  +
    "sign_body": false,
        4246  +
    "timestamp": "2015-08-30T12:36:00Z"
        4247  +
}
              \
 No newline at end of file
 3461   4248   
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
 3462   4249   
similarity index 99%
 3463   4250   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 3464   4251   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3465   4252   
index 47e7128..76db73d 100644
 3466         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
        4253  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3467   4254   
@@ -1,9 +1,9 @@
 3468   4255   
GET
 3469   4256   
/
 3470   4257   
 3471   4258   
host:example.amazonaws.com
 3472   4259   
x-amz-date:20150830T123600Z
 3473   4260   
x-amz-region-set:us-east-1
 3474   4261   
 3475   4262   
host;x-amz-date;x-amz-region-set
 3476         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4263  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3477   4264   
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
 3478   4265   
new file mode 100644
 3479   4266   
index 0000000..cbd6ae2
 3480         -
-- /dev/null
        4267  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3481   4268   
@@ -0,0 +1 @@
        4269  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 3482   4270   
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
 3483   4271   
new file mode 100644
 3484   4272   
index 0000000..a343fcf
 3485         -
-- /dev/null
        4273  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3486   4274   
@@ -0,0 +1,6 @@
        4275  +
GET /example/.. HTTP/1.1
        4276  +
Host:example.amazonaws.com
        4277  +
X-Amz-Date:20150830T123600Z
        4278  +
X-Amz-Region-Set:us-east-1
        4279  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        4280  +
 3487   4281   
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
 3488   4282   
similarity index 99%
 3489   4283   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 3490   4284   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3491   4285   
index 95d7219..600f1d8 100644
 3492         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
        4286  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3493   4287   
@@ -1,4 +1,4 @@
 3494   4288   
AWS4-ECDSA-P256-SHA256
 3495   4289   
20150830T123600Z
 3496   4290   
20150830/service/aws4_request
 3497         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4291  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3498   4292   
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
 3499   4293   
new file mode 100644
 3500   4294   
index 0000000..379dcb2
 3501         -
-- /dev/null
        4295  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3502   4296   
@@ -0,0 +1,4 @@
        4297  +
{
        4298  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4299  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4300  +
}
 3503   4301   
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
 3504   4302   
similarity index 99%
 3505   4303   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 3506   4304   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3507   4305   
index a34ea26..779c51c 100644
 3508         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
        4306  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3509   4307   
@@ -1,7 +1,7 @@
 3510   4308   
GET
 3511   4309   
/
 3512   4310   
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
 3513   4311   
host:example.amazonaws.com
 3514   4312   
 3515   4313   
host
 3516         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4314  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3517   4315   
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
 3518   4316   
new file mode 100644
 3519   4317   
index 0000000..3cc88e6
 3520         -
-- /dev/null
        4318  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3521   4319   
@@ -0,0 +1 @@
        4320  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 3522   4321   
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
 3523   4322   
new file mode 100644
 3524   4323   
index 0000000..f68dde8
 3525         -
-- /dev/null
        4324  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3526   4325   
@@ -0,0 +1,3 @@
        4326  +
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
        4327  +
Host:example.amazonaws.com
        4328  +
 3527   4329   
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
 3528   4330   
similarity index 99%
 3529   4331   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 3530   4332   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3531   4333   
index 48f855c..6e29a7e 100644
 3532         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
        4334  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3533   4335   
@@ -1,4 +1,4 @@
 3534   4336   
AWS4-ECDSA-P256-SHA256
 3535   4337   
20150830T123600Z
 3536   4338   
20150830/service/aws4_request
 3537         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4339  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3538   4340   
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
 3539   4341   
similarity index 65%
 3540   4342   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 3541   4343   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3542   4344   
index 9d6d7ca..6aa9f99 100644
 3543         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        4345  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3544   4346   
@@ -1,3 +1,2 @@
 3545   4347   
GET /example/.. HTTP/1.1
 3546   4348   
Host:example.amazonaws.com
 3547         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3548   4349   
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
 3549   4350   
new file mode 100644
 3550   4351   
index 0000000..0468d80
 3551         -
-- /dev/null
        4352  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3552   4353   
@@ -0,0 +1,12 @@
        4354  +
{
        4355  +
    "credentials": {
        4356  +
        "access_key_id": "AKIDEXAMPLE",
        4357  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4358  +
    },
        4359  +
    "expiration_in_seconds": 3600,
        4360  +
    "normalize": true,
        4361  +
    "region": "us-east-1",
        4362  +
    "service": "service",
        4363  +
    "sign_body": false,
        4364  +
    "timestamp": "2015-08-30T12:36:00Z"
        4365  +
}
              \
 No newline at end of file
 3553   4366   
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
 3554   4367   
similarity index 99%
 3555   4368   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 3556   4369   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3557   4370   
index 47e7128..76db73d 100644
 3558         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
        4371  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3559   4372   
@@ -1,9 +1,9 @@
 3560   4373   
GET
 3561   4374   
/
 3562   4375   
 3563   4376   
host:example.amazonaws.com
 3564   4377   
x-amz-date:20150830T123600Z
 3565   4378   
x-amz-region-set:us-east-1
 3566   4379   
 3567   4380   
host;x-amz-date;x-amz-region-set
 3568         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4381  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3569   4382   
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
 3570   4383   
new file mode 100644
 3571   4384   
index 0000000..f7a7ebe
 3572         -
-- /dev/null
        4385  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3573   4386   
@@ -0,0 +1 @@
        4387  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 3574   4388   
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
 3575   4389   
new file mode 100644
 3576   4390   
index 0000000..9d2c50d
 3577         -
-- /dev/null
        4391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3578   4392   
@@ -0,0 +1,6 @@
        4393  +
GET /example1/example2/../.. HTTP/1.1
        4394  +
Host:example.amazonaws.com
        4395  +
X-Amz-Date:20150830T123600Z
        4396  +
X-Amz-Region-Set:us-east-1
        4397  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        4398  +
 3579   4399   
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
 3580   4400   
similarity index 99%
 3581   4401   
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
 3582   4402   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3583   4403   
index 95d7219..600f1d8 100644
 3584         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-string-to-sign.txt
        4404  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3585   4405   
@@ -1,4 +1,4 @@
 3586   4406   
AWS4-ECDSA-P256-SHA256
 3587   4407   
20150830T123600Z
 3588   4408   
20150830/service/aws4_request
 3589         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4409  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3590   4410   
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
 3591   4411   
new file mode 100644
 3592   4412   
index 0000000..379dcb2
 3593         -
-- /dev/null
        4413  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3594   4414   
@@ -0,0 +1,4 @@
        4415  +
{
        4416  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4417  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4418  +
}
 3595   4419   
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
 3596   4420   
similarity index 99%
 3597   4421   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 3598   4422   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3599   4423   
index a34ea26..779c51c 100644
 3600         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
        4424  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3601   4425   
@@ -1,7 +1,7 @@
 3602   4426   
GET
 3603   4427   
/
 3604   4428   
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
 3605   4429   
host:example.amazonaws.com
 3606   4430   
 3607   4431   
host
 3608         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4432  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3609   4433   
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
 3610   4434   
new file mode 100644
 3611   4435   
index 0000000..45ef286
 3612         -
-- /dev/null
        4436  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3613   4437   
@@ -0,0 +1 @@
        4438  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 3614   4439   
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
 3615   4440   
new file mode 100644
 3616   4441   
index 0000000..0d16f66
 3617         -
-- /dev/null
        4442  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3618   4443   
@@ -0,0 +1,3 @@
        4444  +
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
        4445  +
Host:example.amazonaws.com
        4446  +
 3619   4447   
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
 3620   4448   
similarity index 99%
 3621   4449   
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
 3622   4450   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3623   4451   
index 48f855c..6e29a7e 100644
 3624         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-string-to-sign.txt
        4452  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3625   4453   
@@ -1,4 +1,4 @@
 3626   4454   
AWS4-ECDSA-P256-SHA256
 3627   4455   
20150830T123600Z
 3628   4456   
20150830/service/aws4_request
 3629         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4457  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3630   4458   
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
 3631   4459   
similarity index 70%
 3632   4460   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 3633   4461   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3634   4462   
index cfd4e8b..a856c10 100644
 3635         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        4463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3636   4464   
@@ -1,3 +1,2 @@
 3637   4465   
GET /example1/example2/../.. HTTP/1.1
 3638   4466   
Host:example.amazonaws.com
 3639         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3640   4467   
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
 3641   4468   
new file mode 100644
 3642   4469   
index 0000000..7bee5c7
 3643         -
-- /dev/null
        4470  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3644   4471   
@@ -0,0 +1,12 @@
        4472  +
{
        4473  +
    "credentials": {
        4474  +
        "access_key_id": "AKIDEXAMPLE",
        4475  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4476  +
    },
        4477  +
    "expiration_in_seconds": 3600,
        4478  +
    "normalize": false,
        4479  +
    "region": "us-east-1",
        4480  +
    "service": "service",
        4481  +
    "sign_body": false,
        4482  +
    "timestamp": "2015-08-30T12:36:00Z"
        4483  +
}
              \
 No newline at end of file
 3645   4484   
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
 3646   4485   
similarity index 99%
 3647   4486   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 3648   4487   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3649   4488   
index 5e1d1cf..e4e6d57 100644
 3650         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
        4489  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3651   4490   
@@ -1,9 +1,9 @@
 3652   4491   
GET
 3653   4492   
/example1/example2/../..
 3654   4493   
 3655   4494   
host:example.amazonaws.com
 3656   4495   
x-amz-date:20150830T123600Z
 3657   4496   
x-amz-region-set:us-east-1
 3658   4497   
 3659   4498   
host;x-amz-date;x-amz-region-set
 3660         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4499  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3661   4500   
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
 3662   4501   
new file mode 100644
 3663   4502   
index 0000000..2d1b47c
 3664         -
-- /dev/null
        4503  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3665   4504   
@@ -0,0 +1 @@
        4505  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 3666   4506   
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
 3667   4507   
new file mode 100644
 3668   4508   
index 0000000..7158179
 3669         -
-- /dev/null
        4509  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3670   4510   
@@ -0,0 +1,6 @@
        4511  +
GET /example1/example2/../.. HTTP/1.1
        4512  +
Host:example.amazonaws.com
        4513  +
X-Amz-Date:20150830T123600Z
        4514  +
X-Amz-Region-Set:us-east-1
        4515  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        4516  +
 3671   4517   
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
 3672   4518   
similarity index 99%
 3673   4519   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 3674   4520   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3675   4521   
index 1cca6cf..db60c8e 100644
 3676         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
        4522  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3677   4523   
@@ -1,4 +1,4 @@
 3678   4524   
AWS4-ECDSA-P256-SHA256
 3679   4525   
20150830T123600Z
 3680   4526   
20150830/service/aws4_request
 3681         -
7bad1fab948577ec4e860ff2bb06ce9b69f0dd60eb8a9ad7c016b584254f9b5b
        4527  +
7bad1fab948577ec4e860ff2bb06ce9b69f0dd60eb8a9ad7c016b584254f9b5b
              \
 No newline at end of file
 3682   4528   
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
 3683   4529   
new file mode 100644
 3684   4530   
index 0000000..379dcb2
 3685         -
-- /dev/null
        4531  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3686   4532   
@@ -0,0 +1,4 @@
        4533  +
{
        4534  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4535  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4536  +
}
 3687   4537   
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
 3688   4538   
similarity index 99%
 3689   4539   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 3690   4540   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3691   4541   
index 95dc104..0d963ba 100644
 3692         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
        4542  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3693   4543   
@@ -1,7 +1,7 @@
 3694   4544   
GET
 3695   4545   
/example1/example2/../..
 3696   4546   
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
 3697   4547   
host:example.amazonaws.com
 3698   4548   
 3699   4549   
host
 3700         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4550  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3701   4551   
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
 3702   4552   
new file mode 100644
 3703   4553   
index 0000000..ae774e4
 3704         -
-- /dev/null
        4554  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3705   4555   
@@ -0,0 +1 @@
        4556  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 3706   4557   
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
 3707   4558   
new file mode 100644
 3708   4559   
index 0000000..be6b86e
 3709         -
-- /dev/null
        4560  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3710   4561   
@@ -0,0 +1,3 @@
        4562  +
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
        4563  +
Host:example.amazonaws.com
        4564  +
 3711   4565   
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
 3712   4566   
similarity index 99%
 3713   4567   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 3714   4568   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3715   4569   
index 50edce6..fcc70cd 100644
 3716         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
        4570  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3717   4571   
@@ -1,4 +1,4 @@
 3718   4572   
AWS4-ECDSA-P256-SHA256
 3719   4573   
20150830T123600Z
 3720   4574   
20150830/service/aws4_request
 3721         -
504892d7f7262dd98d79ab7f3bb6f918cd59d491aacb2d76450f6e065479b31a
        4575  +
504892d7f7262dd98d79ab7f3bb6f918cd59d491aacb2d76450f6e065479b31a
              \
 No newline at end of file
 3722   4576   
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
 3723   4577   
new file mode 100644
 3724   4578   
index 0000000..a856c10
 3725         -
-- /dev/null
        4579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3726   4580   
@@ -0,0 +1,2 @@
        4581  +
GET /example1/example2/../.. HTTP/1.1
        4582  +
Host:example.amazonaws.com
 3727   4583   
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
 3728   4584   
new file mode 100644
 3729   4585   
index 0000000..7bee5c7
 3730         -
-- /dev/null
        4586  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3731   4587   
@@ -0,0 +1,12 @@
        4588  +
{
        4589  +
    "credentials": {
        4590  +
        "access_key_id": "AKIDEXAMPLE",
        4591  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4592  +
    },
        4593  +
    "expiration_in_seconds": 3600,
        4594  +
    "normalize": false,
        4595  +
    "region": "us-east-1",
        4596  +
    "service": "service",
        4597  +
    "sign_body": false,
        4598  +
    "timestamp": "2015-08-30T12:36:00Z"
        4599  +
}
              \
 No newline at end of file
 3732   4600   
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
 3733   4601   
similarity index 99%
 3734   4602   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 3735   4603   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3736   4604   
index d6a0abe..22def1a 100644
 3737         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
        4605  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3738   4606   
@@ -1,9 +1,9 @@
 3739   4607   
GET
 3740   4608   
/example/..
 3741   4609   
 3742   4610   
host:example.amazonaws.com
 3743   4611   
x-amz-date:20150830T123600Z
 3744   4612   
x-amz-region-set:us-east-1
 3745   4613   
 3746   4614   
host;x-amz-date;x-amz-region-set
 3747         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4615  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3748   4616   
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
 3749   4617   
new file mode 100644
 3750   4618   
index 0000000..9251bad
 3751         -
-- /dev/null
        4619  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 3752   4620   
@@ -0,0 +1 @@
        4621  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 3753   4622   
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
 3754   4623   
new file mode 100644
 3755   4624   
index 0000000..f1bb60f
 3756         -
-- /dev/null
        4625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 3757   4626   
@@ -0,0 +1,6 @@
        4627  +
GET /example/.. HTTP/1.1
        4628  +
Host:example.amazonaws.com
        4629  +
X-Amz-Date:20150830T123600Z
        4630  +
X-Amz-Region-Set:us-east-1
        4631  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        4632  +
 3758   4633   
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
 3759   4634   
similarity index 99%
 3760   4635   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 3761   4636   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3762   4637   
index 4a34e93..5673a20 100644
 3763         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
        4638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3764   4639   
@@ -1,4 +1,4 @@
 3765   4640   
AWS4-ECDSA-P256-SHA256
 3766   4641   
20150830T123600Z
 3767   4642   
20150830/service/aws4_request
 3768         -
c859b5032f2ebd5df0285ff633b495b0e6e962e5adb94731c95e8e993a9a8213
        4643  +
c859b5032f2ebd5df0285ff633b495b0e6e962e5adb94731c95e8e993a9a8213
              \
 No newline at end of file
 3769   4644   
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
 3770   4645   
new file mode 100644
 3771   4646   
index 0000000..379dcb2
 3772         -
-- /dev/null
        4647  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 3773   4648   
@@ -0,0 +1,4 @@
        4649  +
{
        4650  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4651  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4652  +
}
 3774   4653   
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
 3775   4654   
similarity index 99%
 3776   4655   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 3777   4656   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3778   4657   
index b1d123e..a1c22e0 100644
 3779         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
        4658  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3780   4659   
@@ -1,7 +1,7 @@
 3781   4660   
GET
 3782   4661   
/example/..
 3783   4662   
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
 3784   4663   
host:example.amazonaws.com
 3785   4664   
 3786   4665   
host
 3787         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4666  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3788   4667   
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
 3789   4668   
new file mode 100644
 3790   4669   
index 0000000..9f0f686
 3791         -
-- /dev/null
        4670  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 3792   4671   
@@ -0,0 +1 @@
        4672  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 3793   4673   
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
 3794   4674   
new file mode 100644
 3795   4675   
index 0000000..d1d451a
 3796         -
-- /dev/null
        4676  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 3797   4677   
@@ -0,0 +1,3 @@
        4678  +
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
        4679  +
Host:example.amazonaws.com
        4680  +
 3798   4681   
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
 3799   4682   
similarity index 99%
 3800   4683   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 3801   4684   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3802   4685   
index a17f5ab..81b41e8 100644
 3803         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
        4686  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3804   4687   
@@ -1,4 +1,4 @@
 3805   4688   
AWS4-ECDSA-P256-SHA256
 3806   4689   
20150830T123600Z
 3807   4690   
20150830/service/aws4_request
 3808         -
bbbb3668f996906ebb2c96ebdc2418af99656315adaf647989ab336c88fb516e
        4691  +
bbbb3668f996906ebb2c96ebdc2418af99656315adaf647989ab336c88fb516e
              \
 No newline at end of file
 3809   4692   
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
 3810   4693   
new file mode 100644
 3811   4694   
index 0000000..6aa9f99
 3812         -
-- /dev/null
        4695  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 3813   4696   
@@ -0,0 +1,2 @@
        4697  +
GET /example/.. HTTP/1.1
        4698  +
Host:example.amazonaws.com
 3814   4699   
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
 3815   4700   
new file mode 100644
 3816   4701   
index 0000000..0468d80
 3817         -
-- /dev/null
        4702  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 3818   4703   
@@ -0,0 +1,12 @@
        4704  +
{
        4705  +
    "credentials": {
        4706  +
        "access_key_id": "AKIDEXAMPLE",
        4707  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4708  +
    },
        4709  +
    "expiration_in_seconds": 3600,
        4710  +
    "normalize": true,
        4711  +
    "region": "us-east-1",
        4712  +
    "service": "service",
        4713  +
    "sign_body": false,
        4714  +
    "timestamp": "2015-08-30T12:36:00Z"
        4715  +
}
              \
 No newline at end of file
 3819   4716   
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
 3820   4717   
similarity index 99%
 3821   4718   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 3822   4719   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3823   4720   
index 47e7128..76db73d 100644
 3824         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
        4721  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3825   4722   
@@ -1,9 +1,9 @@
 3826   4723   
GET
 3827   4724   
/
 3828   4725   
 3829   4726   
host:example.amazonaws.com
 3830   4727   
x-amz-date:20150830T123600Z
 3831   4728   
x-amz-region-set:us-east-1
 3832   4729   
 3833   4730   
host;x-amz-date;x-amz-region-set
 3834         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4731  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3835   4732   
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
 3836   4733   
new file mode 100644
 3837   4734   
index 0000000..ca6e84e
 3838         -
-- /dev/null
        4735  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 3839   4736   
@@ -0,0 +1 @@
        4737  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 3840   4738   
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
 3841   4739   
new file mode 100644
 3842   4740   
index 0000000..a7c764c
 3843         -
-- /dev/null
        4741  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 3844   4742   
@@ -0,0 +1,6 @@
        4743  +
GET /./ HTTP/1.1
        4744  +
Host:example.amazonaws.com
        4745  +
X-Amz-Date:20150830T123600Z
        4746  +
X-Amz-Region-Set:us-east-1
        4747  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        4748  +
 3845   4749   
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
 3846   4750   
similarity index 99%
 3847   4751   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 3848   4752   
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
 3849   4753   
index 95d7219..600f1d8 100644
 3850         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
        4754  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-string-to-sign.txt
 3851   4755   
@@ -1,4 +1,4 @@
 3852   4756   
AWS4-ECDSA-P256-SHA256
 3853   4757   
20150830T123600Z
 3854   4758   
20150830/service/aws4_request
 3855         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4759  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3856   4760   
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
 3857   4761   
new file mode 100644
 3858   4762   
index 0000000..379dcb2
 3859         -
-- /dev/null
        4763  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 3860   4764   
@@ -0,0 +1,4 @@
        4765  +
{
        4766  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4767  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4768  +
}
 3861   4769   
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
 3862   4770   
similarity index 99%
 3863   4771   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 3864   4772   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3865   4773   
index a34ea26..779c51c 100644
 3866         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
        4774  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3867   4775   
@@ -1,7 +1,7 @@
 3868   4776   
GET
 3869   4777   
/
 3870   4778   
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
 3871   4779   
host:example.amazonaws.com
 3872   4780   
 3873   4781   
host
 3874         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4782  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3875   4783   
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
 3876   4784   
new file mode 100644
 3877   4785   
index 0000000..4b6ed09
 3878         -
-- /dev/null
        4786  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 3879   4787   
@@ -0,0 +1 @@
        4788  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 3880   4789   
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
 3881   4790   
new file mode 100644
 3882   4791   
index 0000000..d6c7176
 3883         -
-- /dev/null
        4792  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 3884   4793   
@@ -0,0 +1,3 @@
        4794  +
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
        4795  +
Host:example.amazonaws.com
        4796  +
 3885   4797   
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
 3886   4798   
similarity index 99%
 3887   4799   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 3888   4800   
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
 3889   4801   
index 48f855c..6e29a7e 100644
 3890         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
        4802  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-string-to-sign.txt
 3891   4803   
@@ -1,4 +1,4 @@
 3892   4804   
AWS4-ECDSA-P256-SHA256
 3893   4805   
20150830T123600Z
 3894   4806   
20150830/service/aws4_request
 3895         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4807  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3896   4808   
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
 3897   4809   
similarity index 61%
 3898   4810   
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
 3899   4811   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3900   4812   
index f3537b7..2c5ff38 100644
 3901         -
-- 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
        4813  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3902   4814   
@@ -1,3 +1,2 @@
 3903   4815   
GET /./ HTTP/1.1
 3904   4816   
Host:example.amazonaws.com
 3905         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3906   4817   
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
 3907   4818   
new file mode 100644
 3908   4819   
index 0000000..7bee5c7
 3909         -
-- /dev/null
        4820  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 3910   4821   
@@ -0,0 +1,12 @@
        4822  +
{
        4823  +
    "credentials": {
        4824  +
        "access_key_id": "AKIDEXAMPLE",
        4825  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4826  +
    },
        4827  +
    "expiration_in_seconds": 3600,
        4828  +
    "normalize": false,
        4829  +
    "region": "us-east-1",
        4830  +
    "service": "service",
        4831  +
    "sign_body": false,
        4832  +
    "timestamp": "2015-08-30T12:36:00Z"
        4833  +
}
              \
 No newline at end of file
 3911   4834   
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
 3912   4835   
similarity index 99%
 3913   4836   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3914   4837   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3915   4838   
index d05303d..9257ac4 100644
 3916         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
        4839  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3917   4840   
@@ -1,9 +1,9 @@
 3918   4841   
GET
 3919   4842   
/./
 3920   4843   
 3921   4844   
host:example.amazonaws.com
 3922   4845   
x-amz-date:20150830T123600Z
 3923   4846   
x-amz-region-set:us-east-1
 3924   4847   
 3925   4848   
host;x-amz-date;x-amz-region-set
 3926         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4849  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3927   4850   
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
 3928   4851   
new file mode 100644
 3929   4852   
index 0000000..2eb1aa5
 3930         -
-- /dev/null
        4853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 3931   4854   
@@ -0,0 +1 @@
        4855  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 3932   4856   
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
 3933   4857   
new file mode 100644
 3934   4858   
index 0000000..df3b1da
 3935         -
-- /dev/null
        4859  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 3936   4860   
@@ -0,0 +1,6 @@
        4861  +
GET /./ HTTP/1.1
        4862  +
Host:example.amazonaws.com
        4863  +
X-Amz-Date:20150830T123600Z
        4864  +
X-Amz-Region-Set:us-east-1
        4865  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        4866  +
 3937   4867   
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
 3938   4868   
similarity index 99%
 3939   4869   
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
 3940   4870   
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
 3941   4871   
index e1bfb39..754b3ed 100644
 3942         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
        4872  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 3943   4873   
@@ -1,4 +1,4 @@
 3944   4874   
AWS4-ECDSA-P256-SHA256
 3945   4875   
20150830T123600Z
 3946   4876   
20150830/service/aws4_request
 3947         -
a14dce0217a32357c623c3db790988b6b5aa1494a527158b06d3ca4444561a4b
        4877  +
a14dce0217a32357c623c3db790988b6b5aa1494a527158b06d3ca4444561a4b
              \
 No newline at end of file
 3948   4878   
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
 3949   4879   
new file mode 100644
 3950   4880   
index 0000000..379dcb2
 3951         -
-- /dev/null
        4881  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 3952   4882   
@@ -0,0 +1,4 @@
        4883  +
{
        4884  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4885  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4886  +
}
 3953   4887   
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
 3954   4888   
similarity index 99%
 3955   4889   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3956   4890   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3957   4891   
index f048d0f..c8edce3 100644
 3958         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
        4892  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3959   4893   
@@ -1,7 +1,7 @@
 3960   4894   
GET
 3961   4895   
/./
 3962   4896   
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
 3963   4897   
host:example.amazonaws.com
 3964   4898   
 3965   4899   
host
 3966         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4900  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3967   4901   
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
 3968   4902   
new file mode 100644
 3969   4903   
index 0000000..d3af3b8
 3970         -
-- /dev/null
        4904  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 3971   4905   
@@ -0,0 +1 @@
        4906  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 3972   4907   
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
 3973   4908   
new file mode 100644
 3974   4909   
index 0000000..eb38155
 3975         -
-- /dev/null
        4910  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 3976   4911   
@@ -0,0 +1,3 @@
        4912  +
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
        4913  +
Host:example.amazonaws.com
        4914  +
 3977   4915   
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
 3978   4916   
similarity index 99%
 3979   4917   
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
 3980   4918   
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
 3981   4919   
index bfcf245..4f20b8f 100644
 3982         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
        4920  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 3983   4921   
@@ -1,4 +1,4 @@
 3984   4922   
AWS4-ECDSA-P256-SHA256
 3985   4923   
20150830T123600Z
 3986   4924   
20150830/service/aws4_request
 3987         -
0d146fed00cdf50d7a87864583b7a33ca75322aab46b0a2d204f5d0c13440917
        4925  +
0d146fed00cdf50d7a87864583b7a33ca75322aab46b0a2d204f5d0c13440917
              \
 No newline at end of file
 3988   4926   
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
 3989   4927   
new file mode 100644
 3990   4928   
index 0000000..2c5ff38
 3991         -
-- /dev/null
        4929  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 3992   4930   
@@ -0,0 +1,2 @@
        4931  +
GET /./ HTTP/1.1
        4932  +
Host:example.amazonaws.com
 3993   4933   
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
 3994   4934   
new file mode 100644
 3995   4935   
index 0000000..0468d80
 3996         -
-- /dev/null
        4936  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 3997   4937   
@@ -0,0 +1,12 @@
        4938  +
{
        4939  +
    "credentials": {
        4940  +
        "access_key_id": "AKIDEXAMPLE",
        4941  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4942  +
    },
        4943  +
    "expiration_in_seconds": 3600,
        4944  +
    "normalize": true,
        4945  +
    "region": "us-east-1",
        4946  +
    "service": "service",
        4947  +
    "sign_body": false,
        4948  +
    "timestamp": "2015-08-30T12:36:00Z"
        4949  +
}
              \
 No newline at end of file
 3998   4950   
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
 3999   4951   
similarity index 99%
 4000   4952   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 4001   4953   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 4002   4954   
index 47e7128..76db73d 100644
 4003         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
        4955  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 4004   4956   
@@ -1,9 +1,9 @@
 4005   4957   
GET
 4006   4958   
/
 4007   4959   
 4008   4960   
host:example.amazonaws.com
 4009   4961   
x-amz-date:20150830T123600Z
 4010   4962   
x-amz-region-set:us-east-1
 4011   4963   
 4012   4964   
host;x-amz-date;x-amz-region-set
 4013         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4965  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4014   4966   
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
 4015   4967   
new file mode 100644
 4016   4968   
index 0000000..0c049ca
 4017         -
-- /dev/null
        4969  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 4018   4970   
@@ -0,0 +1 @@
        4971  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 4019   4972   
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
 4020   4973   
new file mode 100644
 4021   4974   
index 0000000..f4bb1e1
 4022         -
-- /dev/null
        4975  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 4023   4976   
@@ -0,0 +1,6 @@
        4977  +
GET // HTTP/1.1
        4978  +
Host:example.amazonaws.com
        4979  +
X-Amz-Date:20150830T123600Z
        4980  +
X-Amz-Region-Set:us-east-1
        4981  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        4982  +
 4024   4983   
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
 4025   4984   
similarity index 99%
 4026   4985   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 4027   4986   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 4028   4987   
index 95d7219..600f1d8 100644
 4029         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
        4988  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 4030   4989   
@@ -1,4 +1,4 @@
 4031   4990   
AWS4-ECDSA-P256-SHA256
 4032   4991   
20150830T123600Z
 4033   4992   
20150830/service/aws4_request
 4034         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4993  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4035   4994   
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
 4036   4995   
new file mode 100644
 4037   4996   
index 0000000..379dcb2
 4038         -
-- /dev/null
        4997  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 4039   4998   
@@ -0,0 +1,4 @@
        4999  +
{
        5000  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5001  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5002  +
}
 4040   5003   
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
 4041   5004   
similarity index 99%
 4042   5005   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 4043   5006   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 4044   5007   
index a34ea26..779c51c 100644
 4045         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
        5008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 4046   5009   
@@ -1,7 +1,7 @@
 4047   5010   
GET
 4048   5011   
/
 4049   5012   
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
 4050   5013   
host:example.amazonaws.com
 4051   5014   
 4052   5015   
host
 4053         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5016  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4054   5017   
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
 4055   5018   
new file mode 100644
 4056   5019   
index 0000000..ca52293
 4057         -
-- /dev/null
        5020  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 4058   5021   
@@ -0,0 +1 @@
        5022  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 4059   5023   
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
 4060   5024   
new file mode 100644
 4061   5025   
index 0000000..4a212a9
 4062         -
-- /dev/null
        5026  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 4063   5027   
@@ -0,0 +1,3 @@
        5028  +
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
        5029  +
Host:example.amazonaws.com
        5030  +
 4064   5031   
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
 4065   5032   
similarity index 99%
 4066   5033   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 4067   5034   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 4068   5035   
index 48f855c..6e29a7e 100644
 4069         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
        5036  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 4070   5037   
@@ -1,4 +1,4 @@
 4071   5038   
AWS4-ECDSA-P256-SHA256
 4072   5039   
20150830T123600Z
 4073   5040   
20150830/service/aws4_request
 4074         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        5041  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4075   5042   
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
 4076   5043   
similarity index 61%
 4077   5044   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 4078   5045   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 4079   5046   
index ede8e3c..25bc21e 100644
 4080         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        5047  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 4081   5048   
@@ -1,3 +1,2 @@
 4082   5049   
GET // HTTP/1.1
 4083   5050   
Host:example.amazonaws.com
 4084         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4085   5051   
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
 4086   5052   
new file mode 100644
 4087   5053   
index 0000000..0468d80
 4088         -
-- /dev/null
        5054  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 4089   5055   
@@ -0,0 +1,12 @@
        5056  +
{
        5057  +
    "credentials": {
        5058  +
        "access_key_id": "AKIDEXAMPLE",
        5059  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5060  +
    },
        5061  +
    "expiration_in_seconds": 3600,
        5062  +
    "normalize": true,
        5063  +
    "region": "us-east-1",
        5064  +
    "service": "service",
        5065  +
    "sign_body": false,
        5066  +
    "timestamp": "2015-08-30T12:36:00Z"
        5067  +
}
              \
 No newline at end of file
 4090   5068   
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
 4091   5069   
similarity index 99%
 4092   5070   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4093   5071   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4094   5072   
index 2e36c20..a51f1ba 100644
 4095         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
        5073  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4096   5074   
@@ -1,9 +1,9 @@
 4097   5075   
GET
 4098   5076   
/example
 4099   5077   
 4100   5078   
host:example.amazonaws.com
 4101   5079   
x-amz-date:20150830T123600Z
 4102   5080   
x-amz-region-set:us-east-1
 4103   5081   
 4104   5082   
host;x-amz-date;x-amz-region-set
 4105         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5083  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4106   5084   
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
 4107   5085   
new file mode 100644
 4108   5086   
index 0000000..f5c871f
 4109         -
-- /dev/null
        5087  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 4110   5088   
@@ -0,0 +1 @@
        5089  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 4111   5090   
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
 4112   5091   
new file mode 100644
 4113   5092   
index 0000000..bda4718
 4114         -
-- /dev/null
        5093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 4115   5094   
@@ -0,0 +1,6 @@
        5095  +
GET /./example HTTP/1.1
        5096  +
Host:example.amazonaws.com
        5097  +
X-Amz-Date:20150830T123600Z
        5098  +
X-Amz-Region-Set:us-east-1
        5099  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        5100  +
 4116   5101   
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
 4117   5102   
similarity index 99%
 4118   5103   
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
 4119   5104   
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
 4120   5105   
index cd30e8b..2ffe879 100644
 4121         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-string-to-sign.txt
        5106  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-string-to-sign.txt
 4122   5107   
@@ -1,4 +1,4 @@
 4123   5108   
AWS4-ECDSA-P256-SHA256
 4124   5109   
20150830T123600Z
 4125   5110   
20150830/service/aws4_request
 4126         -
823cb165e35e124f862c99c89a46414c24e3800f149377591e35a4848317e825
        5111  +
823cb165e35e124f862c99c89a46414c24e3800f149377591e35a4848317e825
              \
 No newline at end of file
 4127   5112   
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
 4128   5113   
new file mode 100644
 4129   5114   
index 0000000..379dcb2
 4130         -
-- /dev/null
        5115  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 4131   5116   
@@ -0,0 +1,4 @@
        5117  +
{
        5118  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5119  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5120  +
}
 4132   5121   
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
 4133   5122   
similarity index 99%
 4134   5123   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4135   5124   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4136   5125   
index 77cf28d..45151ea 100644
 4137         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
        5126  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4138   5127   
@@ -1,7 +1,7 @@
 4139   5128   
GET
 4140   5129   
/example
 4141   5130   
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
 4142   5131   
host:example.amazonaws.com
 4143   5132   
 4144   5133   
host
 4145         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5134  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4146   5135   
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
 4147   5136   
new file mode 100644
 4148   5137   
index 0000000..11ad7bf
 4149         -
-- /dev/null
        5138  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 4150   5139   
@@ -0,0 +1 @@
        5140  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 4151   5141   
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
 4152   5142   
new file mode 100644
 4153   5143   
index 0000000..a7537b1
 4154         -
-- /dev/null
        5144  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 4155   5145   
@@ -0,0 +1,3 @@
        5146  +
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
        5147  +
Host:example.amazonaws.com
        5148  +
 4156   5149   
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
 4157   5150   
similarity index 99%
 4158   5151   
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
 4159   5152   
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
 4160   5153   
index 49d9b24..b486672 100644
 4161         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-string-to-sign.txt
        5154  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 4162   5155   
@@ -1,4 +1,4 @@
 4163   5156   
AWS4-ECDSA-P256-SHA256
 4164   5157   
20150830T123600Z
 4165   5158   
20150830/service/aws4_request
 4166         -
0cc67a8acfed5946b645794c649dd98d3485728119cdf17d38985ba0ff55abca
        5159  +
0cc67a8acfed5946b645794c649dd98d3485728119cdf17d38985ba0ff55abca
              \
 No newline at end of file
 4167   5160   
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
 4168   5161   
similarity index 65%
 4169   5162   
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
 4170   5163   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 4171   5164   
index 3c91071..5d919c9 100644
 4172         -
-- 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
        5165  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 4173   5166   
@@ -1,3 +1,2 @@
 4174   5167   
GET /./example HTTP/1.1
 4175   5168   
Host:example.amazonaws.com
 4176         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4177   5169   
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
 4178   5170   
new file mode 100644
 4179   5171   
index 0000000..7bee5c7
 4180         -
-- /dev/null
        5172  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 4181   5173   
@@ -0,0 +1,12 @@
        5174  +
{
        5175  +
    "credentials": {
        5176  +
        "access_key_id": "AKIDEXAMPLE",
        5177  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5178  +
    },
        5179  +
    "expiration_in_seconds": 3600,
        5180  +
    "normalize": false,
        5181  +
    "region": "us-east-1",
        5182  +
    "service": "service",
        5183  +
    "sign_body": false,
        5184  +
    "timestamp": "2015-08-30T12:36:00Z"
        5185  +
}
              \
 No newline at end of file
 4182   5186   
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
 4183   5187   
similarity index 99%
 4184   5188   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4185   5189   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4186   5190   
index 4444842..2355a69 100644
 4187         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
        5191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4188   5192   
@@ -1,9 +1,9 @@
 4189   5193   
GET
 4190   5194   
/./example
 4191   5195   
 4192   5196   
host:example.amazonaws.com
 4193   5197   
x-amz-date:20150830T123600Z
 4194   5198   
x-amz-region-set:us-east-1
 4195   5199   
 4196   5200   
host;x-amz-date;x-amz-region-set
 4197         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5201  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4198   5202   
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
 4199   5203   
new file mode 100644
 4200   5204   
index 0000000..9c8f737
 4201         -
-- /dev/null
        5205  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 4202   5206   
@@ -0,0 +1 @@
        5207  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 4203   5208   
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
 4204   5209   
new file mode 100644
 4205   5210   
index 0000000..aa5980d
 4206         -
-- /dev/null
        5211  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 4207   5212   
@@ -0,0 +1,6 @@
        5213  +
GET /./example HTTP/1.1
        5214  +
Host:example.amazonaws.com
        5215  +
X-Amz-Date:20150830T123600Z
        5216  +
X-Amz-Region-Set:us-east-1
        5217  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        5218  +
 4208   5219   
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
 4209   5220   
similarity index 99%
 4210   5221   
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
 4211   5222   
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
 4212   5223   
index cc63510..d056816 100644
 4213         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
        5224  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 4214   5225   
@@ -1,4 +1,4 @@
 4215   5226   
AWS4-ECDSA-P256-SHA256
 4216   5227   
20150830T123600Z
 4217   5228   
20150830/service/aws4_request
 4218         -
407314cdff397462b2458ba1860907adefcbb73fd630ddbd3de7300d2f773804
        5229  +
407314cdff397462b2458ba1860907adefcbb73fd630ddbd3de7300d2f773804
              \
 No newline at end of file
 4219   5230   
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
 4220   5231   
new file mode 100644
 4221   5232   
index 0000000..379dcb2
 4222         -
-- /dev/null
        5233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 4223   5234   
@@ -0,0 +1,4 @@
        5235  +
{
        5236  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5237  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5238  +
}
 4224   5239   
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
 4225   5240   
similarity index 99%
 4226   5241   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4227   5242   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4228   5243   
index ed2cb2d..df9928e 100644
 4229         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
        5244  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4230   5245   
@@ -1,7 +1,7 @@
 4231   5246   
GET
 4232   5247   
/./example
 4233   5248   
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
 4234   5249   
host:example.amazonaws.com
 4235   5250   
 4236   5251   
host
 4237         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5252  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4238   5253   
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
 4239   5254   
new file mode 100644
 4240   5255   
index 0000000..bb4d86b
 4241         -
-- /dev/null
        5256  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 4242   5257   
@@ -0,0 +1 @@
        5258  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 4243   5259   
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
 4244   5260   
new file mode 100644
 4245   5261   
index 0000000..0061136
 4246         -
-- /dev/null
        5262  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 4247   5263   
@@ -0,0 +1,3 @@
        5264  +
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
        5265  +
Host:example.amazonaws.com
        5266  +
 4248   5267   
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
 4249   5268   
similarity index 99%
 4250   5269   
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
 4251   5270   
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
 4252   5271   
index c9f3b6d..418f2d6 100644
 4253         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
        5272  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 4254   5273   
@@ -1,4 +1,4 @@
 4255   5274   
AWS4-ECDSA-P256-SHA256
 4256   5275   
20150830T123600Z
 4257   5276   
20150830/service/aws4_request
 4258         -
efbe4f47c2acbb53fbfd0be6846cfa35a48c21f3f800e741278dae7b721302b4
        5277  +
efbe4f47c2acbb53fbfd0be6846cfa35a48c21f3f800e741278dae7b721302b4
              \
 No newline at end of file
 4259   5278   
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
 4260   5279   
new file mode 100644
 4261   5280   
index 0000000..5d919c9
 4262         -
-- /dev/null
        5281  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 4263   5282   
@@ -0,0 +1,2 @@
        5283  +
GET /./example HTTP/1.1
        5284  +
Host:example.amazonaws.com
 4264   5285   
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
 4265   5286   
new file mode 100644
 4266   5287   
index 0000000..7bee5c7
 4267         -
-- /dev/null
        5288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 4268   5289   
@@ -0,0 +1,12 @@
        5290  +
{
        5291  +
    "credentials": {
        5292  +
        "access_key_id": "AKIDEXAMPLE",
        5293  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5294  +
    },
        5295  +
    "expiration_in_seconds": 3600,
        5296  +
    "normalize": false,
        5297  +
    "region": "us-east-1",
        5298  +
    "service": "service",
        5299  +
    "sign_body": false,
        5300  +
    "timestamp": "2015-08-30T12:36:00Z"
        5301  +
}
              \
 No newline at end of file
 4269   5302   
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
 4270   5303   
similarity index 99%
 4271   5304   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 4272   5305   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4273   5306   
index 8a4d33b..5f809da 100644
 4274         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
        5307  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4275   5308   
@@ -1,9 +1,9 @@
 4276   5309   
GET
 4277   5310   
//
 4278   5311   
 4279   5312   
host:example.amazonaws.com
 4280   5313   
x-amz-date:20150830T123600Z
 4281   5314   
x-amz-region-set:us-east-1
 4282   5315   
 4283   5316   
host;x-amz-date;x-amz-region-set
 4284         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5317  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4285   5318   
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
 4286   5319   
new file mode 100644
 4287   5320   
index 0000000..60179e9
 4288         -
-- /dev/null
        5321  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 4289   5322   
@@ -0,0 +1 @@
        5323  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 4290   5324   
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
 4291   5325   
new file mode 100644
 4292   5326   
index 0000000..72bf1b7
 4293         -
-- /dev/null
        5327  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 4294   5328   
@@ -0,0 +1,6 @@
        5329  +
GET // HTTP/1.1
        5330  +
Host:example.amazonaws.com
        5331  +
X-Amz-Date:20150830T123600Z
        5332  +
X-Amz-Region-Set:us-east-1
        5333  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        5334  +
 4295   5335   
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
 4296   5336   
similarity index 99%
 4297   5337   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 4298   5338   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4299   5339   
index 874c01c..2b3bf67 100644
 4300         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
        5340  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4301   5341   
@@ -1,4 +1,4 @@
 4302   5342   
AWS4-ECDSA-P256-SHA256
 4303   5343   
20150830T123600Z
 4304   5344   
20150830/service/aws4_request
 4305         -
fc8f42c7ce50ba8830a34b16d9fb478170176d78c81339e8d7e31d4baa9ec9f4
        5345  +
fc8f42c7ce50ba8830a34b16d9fb478170176d78c81339e8d7e31d4baa9ec9f4
              \
 No newline at end of file
 4306   5346   
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
 4307   5347   
new file mode 100644
 4308   5348   
index 0000000..379dcb2
 4309         -
-- /dev/null
        5349  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 4310   5350   
@@ -0,0 +1,4 @@
        5351  +
{
        5352  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5353  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5354  +
}
 4311   5355   
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
 4312   5356   
similarity index 99%
 4313   5357   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 4314   5358   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4315   5359   
index 81d7b0b..d10ad29 100644
 4316         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
        5360  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4317   5361   
@@ -1,7 +1,7 @@
 4318   5362   
GET
 4319   5363   
//
 4320   5364   
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
 4321   5365   
host:example.amazonaws.com
 4322   5366   
 4323   5367   
host
 4324         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5368  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4325   5369   
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
 4326   5370   
new file mode 100644
 4327   5371   
index 0000000..d9bd824
 4328         -
-- /dev/null
        5372  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 4329   5373   
@@ -0,0 +1 @@
        5374  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 4330   5375   
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
 4331   5376   
new file mode 100644
 4332   5377   
index 0000000..19d1d46
 4333         -
-- /dev/null
        5378  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 4334   5379   
@@ -0,0 +1,3 @@
        5380  +
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
        5381  +
Host:example.amazonaws.com
        5382  +
 4335   5383   
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
 4336   5384   
similarity index 99%
 4337   5385   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 4338   5386   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4339   5387   
index 17e5279..24c8a5e 100644
 4340         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
        5388  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4341   5389   
@@ -1,4 +1,4 @@
 4342   5390   
AWS4-ECDSA-P256-SHA256
 4343   5391   
20150830T123600Z
 4344   5392   
20150830/service/aws4_request
 4345         -
633e0570a745c18cc22e43af8be65cfed3e7173061ec403353734bdfae90e0b6
        5393  +
633e0570a745c18cc22e43af8be65cfed3e7173061ec403353734bdfae90e0b6
              \
 No newline at end of file
 4346   5394   
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
 4347   5395   
new file mode 100644
 4348   5396   
index 0000000..25bc21e
 4349         -
-- /dev/null
        5397  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 4350   5398   
@@ -0,0 +1,2 @@
        5399  +
GET // HTTP/1.1
        5400  +
Host:example.amazonaws.com
 4351   5401   
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
 4352   5402   
new file mode 100644
 4353   5403   
index 0000000..0468d80
 4354         -
-- /dev/null
        5404  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 4355   5405   
@@ -0,0 +1,12 @@
        5406  +
{
        5407  +
    "credentials": {
        5408  +
        "access_key_id": "AKIDEXAMPLE",
        5409  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5410  +
    },
        5411  +
    "expiration_in_seconds": 3600,
        5412  +
    "normalize": true,
        5413  +
    "region": "us-east-1",
        5414  +
    "service": "service",
        5415  +
    "sign_body": false,
        5416  +
    "timestamp": "2015-08-30T12:36:00Z"
        5417  +
}
              \
 No newline at end of file
 4356   5418   
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
 4357   5419   
similarity index 99%
 4358   5420   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 4359   5421   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4360   5422   
index fdf9c48..a8e9e02 100644
 4361         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
        5423  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4362   5424   
@@ -1,9 +1,9 @@
 4363   5425   
GET
 4364   5426   
/example/
 4365   5427   
 4366   5428   
host:example.amazonaws.com
 4367   5429   
x-amz-date:20150830T123600Z
 4368   5430   
x-amz-region-set:us-east-1
 4369   5431   
 4370   5432   
host;x-amz-date;x-amz-region-set
 4371         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5433  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4372   5434   
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
 4373   5435   
new file mode 100644
 4374   5436   
index 0000000..ffe1b60
 4375         -
-- /dev/null
        5437  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 4376   5438   
@@ -0,0 +1 @@
        5439  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 4377   5440   
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
 4378   5441   
new file mode 100644
 4379   5442   
index 0000000..3189f55
 4380         -
-- /dev/null
        5443  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 4381   5444   
@@ -0,0 +1,6 @@
        5445  +
GET //example// HTTP/1.1
        5446  +
Host:example.amazonaws.com
        5447  +
X-Amz-Date:20150830T123600Z
        5448  +
X-Amz-Region-Set:us-east-1
        5449  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        5450  +
 4382   5451   
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
 4383   5452   
similarity index 99%
 4384   5453   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 4385   5454   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4386   5455   
index 8f9c95e..430020e 100644
 4387         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
        5456  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4388   5457   
@@ -1,4 +1,4 @@
 4389   5458   
AWS4-ECDSA-P256-SHA256
 4390   5459   
20150830T123600Z
 4391   5460   
20150830/service/aws4_request
 4392         -
ea6c9c4bc1e85b94f2579cebbc85a84c3f8eaa055c006697555f074dd68509a6
        5461  +
ea6c9c4bc1e85b94f2579cebbc85a84c3f8eaa055c006697555f074dd68509a6
              \
 No newline at end of file
 4393   5462   
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
 4394   5463   
new file mode 100644
 4395   5464   
index 0000000..379dcb2
 4396         -
-- /dev/null
        5465  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 4397   5466   
@@ -0,0 +1,4 @@
        5467  +
{
        5468  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5469  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5470  +
}
 4398   5471   
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
 4399   5472   
similarity index 99%
 4400   5473   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 4401   5474   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4402   5475   
index 1046735..8d41e37 100644
 4403         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
        5476  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4404   5477   
@@ -1,7 +1,7 @@
 4405   5478   
GET
 4406   5479   
/example/
 4407   5480   
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
 4408   5481   
host:example.amazonaws.com
 4409   5482   
 4410   5483   
host
 4411         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5484  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4412   5485   
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
 4413   5486   
new file mode 100644
 4414   5487   
index 0000000..93a0fa4
 4415         -
-- /dev/null
        5488  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 4416   5489   
@@ -0,0 +1 @@
        5490  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 4417   5491   
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
 4418   5492   
new file mode 100644
 4419   5493   
index 0000000..65c8cb6
 4420         -
-- /dev/null
        5494  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 4421   5495   
@@ -0,0 +1,3 @@
        5496  +
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
        5497  +
Host:example.amazonaws.com
        5498  +
 4422   5499   
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
 4423   5500   
similarity index 99%
 4424   5501   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 4425   5502   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4426   5503   
index b293cc2..0f4c4c5 100644
 4427         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
        5504  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4428   5505   
@@ -1,4 +1,4 @@
 4429   5506   
AWS4-ECDSA-P256-SHA256
 4430   5507   
20150830T123600Z
 4431   5508   
20150830/service/aws4_request
 4432         -
ab3f7b8af0ce16e0faf508160fb13d890874992d74f36214ae9eec7437361f2b
        5509  +
ab3f7b8af0ce16e0faf508160fb13d890874992d74f36214ae9eec7437361f2b
              \
 No newline at end of file
 4433   5510   
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
 4434   5511   
similarity index 65%
 4435   5512   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 4436   5513   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4437   5514   
index a4307ce..12e0931 100644
 4438         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        5515  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4439   5516   
@@ -1,3 +1,2 @@
 4440   5517   
GET //example// HTTP/1.1
 4441   5518   
Host:example.amazonaws.com
 4442         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4443   5519   
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
 4444   5520   
new file mode 100644
 4445   5521   
index 0000000..7bee5c7
 4446         -
-- /dev/null
        5522  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 4447   5523   
@@ -0,0 +1,12 @@
        5524  +
{
        5525  +
    "credentials": {
        5526  +
        "access_key_id": "AKIDEXAMPLE",
        5527  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5528  +
    },
        5529  +
    "expiration_in_seconds": 3600,
        5530  +
    "normalize": false,
        5531  +
    "region": "us-east-1",
        5532  +
    "service": "service",
        5533  +
    "sign_body": false,
        5534  +
    "timestamp": "2015-08-30T12:36:00Z"
        5535  +
}
              \
 No newline at end of file
 4448   5536   
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
 4449   5537   
similarity index 99%
 4450   5538   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 4451   5539   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4452   5540   
index a9c55f6..76f55ed 100644
 4453         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
        5541  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4454   5542   
@@ -1,9 +1,9 @@
 4455   5543   
GET
 4456   5544   
//example//
 4457   5545   
 4458   5546   
host:example.amazonaws.com
 4459   5547   
x-amz-date:20150830T123600Z
 4460   5548   
x-amz-region-set:us-east-1
 4461   5549   
 4462   5550   
host;x-amz-date;x-amz-region-set
 4463         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5551  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4464   5552   
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
 4465   5553   
new file mode 100644
 4466   5554   
index 0000000..de333b2
 4467         -
-- /dev/null
        5555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 4468   5556   
@@ -0,0 +1 @@
        5557  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 4469   5558   
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
 4470   5559   
new file mode 100644
 4471   5560   
index 0000000..773ce63
 4472         -
-- /dev/null
        5561  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 4473   5562   
@@ -0,0 +1,6 @@
        5563  +
GET //example// HTTP/1.1
        5564  +
Host:example.amazonaws.com
        5565  +
X-Amz-Date:20150830T123600Z
        5566  +
X-Amz-Region-Set:us-east-1
        5567  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        5568  +
 4474   5569   
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
 4475   5570   
similarity index 99%
 4476   5571   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 4477   5572   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4478   5573   
index 5c4c2cd..46c3265 100644
 4479         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
        5574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4480   5575   
@@ -1,4 +1,4 @@
 4481   5576   
AWS4-ECDSA-P256-SHA256
 4482   5577   
20150830T123600Z
 4483   5578   
20150830/service/aws4_request
 4484         -
bf8c459a6a7f3879f55bff41e4dca65f69df4628456904e47f83013c0deb7276
        5579  +
bf8c459a6a7f3879f55bff41e4dca65f69df4628456904e47f83013c0deb7276
              \
 No newline at end of file
 4485   5580   
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
 4486   5581   
new file mode 100644
 4487   5582   
index 0000000..379dcb2
 4488         -
-- /dev/null
        5583  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 4489   5584   
@@ -0,0 +1,4 @@
        5585  +
{
        5586  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5587  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5588  +
}
 4490   5589   
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
 4491   5590   
similarity index 99%
 4492   5591   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 4493   5592   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4494   5593   
index c878ab4..6047ccf 100644
 4495         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
        5594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4496   5595   
@@ -1,7 +1,7 @@
 4497   5596   
GET
 4498   5597   
//example//
 4499   5598   
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
 4500   5599   
host:example.amazonaws.com
 4501   5600   
 4502   5601   
host
 4503         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5602  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4504   5603   
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
 4505   5604   
new file mode 100644
 4506   5605   
index 0000000..d61fcd0
 4507         -
-- /dev/null
        5606  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 4508   5607   
@@ -0,0 +1 @@
        5608  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 4509   5609   
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
 4510   5610   
new file mode 100644
 4511   5611   
index 0000000..3e37b5b
 4512         -
-- /dev/null
        5612  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 4513   5613   
@@ -0,0 +1,3 @@
        5614  +
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
        5615  +
Host:example.amazonaws.com
        5616  +
 4514   5617   
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
 4515   5618   
similarity index 99%
 4516   5619   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 4517   5620   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4518   5621   
index 5f59645..2537d28 100644
 4519         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
        5622  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4520   5623   
@@ -1,4 +1,4 @@
 4521   5624   
AWS4-ECDSA-P256-SHA256
 4522   5625   
20150830T123600Z
 4523   5626   
20150830/service/aws4_request
 4524         -
660b4a6f0bd53b287cefb21cdf69c1574303de44d2e9f7759b5379b428b70157
        5627  +
660b4a6f0bd53b287cefb21cdf69c1574303de44d2e9f7759b5379b428b70157
              \
 No newline at end of file
 4525   5628   
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
 4526   5629   
new file mode 100644
 4527   5630   
index 0000000..12e0931
 4528         -
-- /dev/null
        5631  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 4529   5632   
@@ -0,0 +1,2 @@
        5633  +
GET //example// HTTP/1.1
        5634  +
Host:example.amazonaws.com
 4530   5635   
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
 4531   5636   
new file mode 100644
 4532   5637   
index 0000000..0468d80
 4533         -
-- /dev/null
        5638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 4534   5639   
@@ -0,0 +1,12 @@
        5640  +
{
        5641  +
    "credentials": {
        5642  +
        "access_key_id": "AKIDEXAMPLE",
        5643  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5644  +
    },
        5645  +
    "expiration_in_seconds": 3600,
        5646  +
    "normalize": true,
        5647  +
    "region": "us-east-1",
        5648  +
    "service": "service",
        5649  +
    "sign_body": false,
        5650  +
    "timestamp": "2015-08-30T12:36:00Z"
        5651  +
}
              \
 No newline at end of file
 4535   5652   
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
 4536   5653   
new file mode 100644
 4537   5654   
index 0000000..0b2b616
 4538         -
-- /dev/null
        5655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 4539   5656   
@@ -0,0 +1,9 @@
        5657  +
GET
        5658  +
/example%20space/
        5659  +
        5660  +
host:example.amazonaws.com
        5661  +
x-amz-date:20150830T123600Z
        5662  +
x-amz-region-set:us-east-1
        5663  +
        5664  +
host;x-amz-date;x-amz-region-set
        5665  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4540   5666   
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
 4541   5667   
new file mode 100644
 4542   5668   
index 0000000..6e7841d
 4543         -
-- /dev/null
        5669  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 4544   5670   
@@ -0,0 +1 @@
        5671  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 4545   5672   
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
 4546   5673   
new file mode 100644
 4547   5674   
index 0000000..0969cd3
 4548         -
-- /dev/null
        5675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 4549   5676   
@@ -0,0 +1,6 @@
        5677  +
GET /example space/ HTTP/1.1
        5678  +
Host:example.amazonaws.com
        5679  +
X-Amz-Date:20150830T123600Z
        5680  +
X-Amz-Region-Set:us-east-1
        5681  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        5682  +
 4550   5683   
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
 4551   5684   
new file mode 100644
 4552   5685   
index 0000000..ddae6e2
 4553         -
-- /dev/null
        5686  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 4554   5687   
@@ -0,0 +1,4 @@
        5688  +
AWS4-ECDSA-P256-SHA256
        5689  +
20150830T123600Z
        5690  +
20150830/service/aws4_request
        5691  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4555   5692   
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
 4556   5693   
new file mode 100644
 4557   5694   
index 0000000..379dcb2
 4558         -
-- /dev/null
        5695  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 4559   5696   
@@ -0,0 +1,4 @@
        5697  +
{
        5698  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5699  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5700  +
}
 4560   5701   
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
 4561   5702   
new file mode 100644
 4562   5703   
index 0000000..a66b3cb
 4563         -
-- /dev/null
        5704  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 4564   5705   
@@ -0,0 +1,7 @@
        5706  +
GET
        5707  +
/example%20space/
        5708  +
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
        5709  +
host:example.amazonaws.com
        5710  +
        5711  +
host
        5712  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4565   5713   
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
 4566   5714   
new file mode 100644
 4567   5715   
index 0000000..b3253ae
 4568         -
-- /dev/null
        5716  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 4569   5717   
@@ -0,0 +1 @@
        5718  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 4570   5719   
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
 4571   5720   
new file mode 100644
 4572   5721   
index 0000000..9e335b2
 4573         -
-- /dev/null
        5722  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 4574   5723   
@@ -0,0 +1,3 @@
        5724  +
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
        5725  +
Host:example.amazonaws.com
        5726  +
 4575   5727   
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
 4576   5728   
new file mode 100644
 4577   5729   
index 0000000..b6ff6fb
 4578         -
-- /dev/null
        5730  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 4579   5731   
@@ -0,0 +1,4 @@
        5732  +
AWS4-ECDSA-P256-SHA256
        5733  +
20150830T123600Z
        5734  +
20150830/service/aws4_request
        5735  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4580   5736   
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
 4581   5737   
new file mode 100644
 4582   5738   
index 0000000..ab509ab
 4583         -
-- /dev/null
        5739  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 4584   5740   
@@ -0,0 +1,2 @@
        5741  +
GET /example space/ HTTP/1.1
        5742  +
Host:example.amazonaws.com
 4585   5743   
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
 4586   5744   
new file mode 100644
 4587   5745   
index 0000000..7bee5c7
 4588         -
-- /dev/null
        5746  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 4589   5747   
@@ -0,0 +1,12 @@
        5748  +
{
        5749  +
    "credentials": {
        5750  +
        "access_key_id": "AKIDEXAMPLE",
        5751  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5752  +
    },
        5753  +
    "expiration_in_seconds": 3600,
        5754  +
    "normalize": false,
        5755  +
    "region": "us-east-1",
        5756  +
    "service": "service",
        5757  +
    "sign_body": false,
        5758  +
    "timestamp": "2015-08-30T12:36:00Z"
        5759  +
}
              \
 No newline at end of file
 4590   5760   
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
 4591   5761   
new file mode 100644
 4592   5762   
index 0000000..0b2b616
 4593         -
-- /dev/null
        5763  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 4594   5764   
@@ -0,0 +1,9 @@
        5765  +
GET
        5766  +
/example%20space/
        5767  +
        5768  +
host:example.amazonaws.com
        5769  +
x-amz-date:20150830T123600Z
        5770  +
x-amz-region-set:us-east-1
        5771  +
        5772  +
host;x-amz-date;x-amz-region-set
        5773  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4595   5774   
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
 4596   5775   
new file mode 100644
 4597   5776   
index 0000000..e75ae08
 4598         -
-- /dev/null
        5777  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 4599   5778   
@@ -0,0 +1 @@
        5779  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 4600   5780   
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
 4601   5781   
new file mode 100644
 4602   5782   
index 0000000..cb089db
 4603         -
-- /dev/null
        5783  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 4604   5784   
@@ -0,0 +1,6 @@
        5785  +
GET /example space/ HTTP/1.1
        5786  +
Host:example.amazonaws.com
        5787  +
X-Amz-Date:20150830T123600Z
        5788  +
X-Amz-Region-Set:us-east-1
        5789  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        5790  +
 4605   5791   
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
 4606   5792   
new file mode 100644
 4607   5793   
index 0000000..ddae6e2
 4608         -
-- /dev/null
        5794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 4609   5795   
@@ -0,0 +1,4 @@
        5796  +
AWS4-ECDSA-P256-SHA256
        5797  +
20150830T123600Z
        5798  +
20150830/service/aws4_request
        5799  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4610   5800   
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
 4611   5801   
new file mode 100644
 4612   5802   
index 0000000..379dcb2
 4613         -
-- /dev/null
        5803  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 4614   5804   
@@ -0,0 +1,4 @@
        5805  +
{
        5806  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5807  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5808  +
}
 4615   5809   
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
 4616   5810   
new file mode 100644
 4617   5811   
index 0000000..a66b3cb
 4618         -
-- /dev/null
        5812  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 4619   5813   
@@ -0,0 +1,7 @@
        5814  +
GET
        5815  +
/example%20space/
        5816  +
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
        5817  +
host:example.amazonaws.com
        5818  +
        5819  +
host
        5820  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4620   5821   
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
 4621   5822   
new file mode 100644
 4622   5823   
index 0000000..66a80c3
 4623         -
-- /dev/null
        5824  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 4624   5825   
@@ -0,0 +1 @@
        5826  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 4625   5827   
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
 4626   5828   
new file mode 100644
 4627   5829   
index 0000000..7d1b9d9
 4628         -
-- /dev/null
        5830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 4629   5831   
@@ -0,0 +1,3 @@
        5832  +
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
        5833  +
Host:example.amazonaws.com
        5834  +
 4630   5835   
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
 4631   5836   
new file mode 100644
 4632   5837   
index 0000000..b6ff6fb
 4633         -
-- /dev/null
        5838  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 4634   5839   
@@ -0,0 +1,4 @@
        5840  +
AWS4-ECDSA-P256-SHA256
        5841  +
20150830T123600Z
        5842  +
20150830/service/aws4_request
        5843  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4635   5844   
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
 4636   5845   
new file mode 100644
 4637   5846   
index 0000000..ab509ab
 4638         -
-- /dev/null
        5847  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 4639   5848   
@@ -0,0 +1,2 @@
        5849  +
GET /example space/ HTTP/1.1
        5850  +
Host:example.amazonaws.com
 4640   5851   
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
 4641   5852   
new file mode 100644
 4642   5853   
index 0000000..0468d80
 4643         -
-- /dev/null
        5854  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 4644   5855   
@@ -0,0 +1,12 @@
        5856  +
{
        5857  +
    "credentials": {
        5858  +
        "access_key_id": "AKIDEXAMPLE",
        5859  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5860  +
    },
        5861  +
    "expiration_in_seconds": 3600,
        5862  +
    "normalize": true,
        5863  +
    "region": "us-east-1",
        5864  +
    "service": "service",
        5865  +
    "sign_body": false,
        5866  +
    "timestamp": "2015-08-30T12:36:00Z"
        5867  +
}
              \
 No newline at end of file
 4645   5868   
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
 4646   5869   
similarity index 99%
 4647   5870   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 4648   5871   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4649   5872   
index b0db648..46d76bb 100644
 4650         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
        5873  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4651   5874   
@@ -1,9 +1,9 @@
 4652   5875   
GET
 4653   5876   
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4654   5877   
 4655   5878   
host:example.amazonaws.com
 4656   5879   
x-amz-date:20150830T123600Z
 4657   5880   
x-amz-region-set:us-east-1
 4658   5881   
 4659   5882   
host;x-amz-date;x-amz-region-set
 4660         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5883  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4661   5884   
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
 4662   5885   
new file mode 100644
 4663   5886   
index 0000000..53c0cb6
 4664         -
-- /dev/null
        5887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 4665   5888   
@@ -0,0 +1 @@
        5889  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 4666   5890   
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
 4667   5891   
new file mode 100644
 4668   5892   
index 0000000..3bdb653
 4669         -
-- /dev/null
        5893  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 4670   5894   
@@ -0,0 +1,6 @@
        5895  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5896  +
Host:example.amazonaws.com
        5897  +
X-Amz-Date:20150830T123600Z
        5898  +
X-Amz-Region-Set:us-east-1
        5899  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        5900  +
 4671   5901   
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
 4672   5902   
similarity index 99%
 4673   5903   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 4674   5904   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4675   5905   
index 20c7cd6..3b30173 100644
 4676         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
        5906  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4677   5907   
@@ -1,4 +1,4 @@
 4678   5908   
AWS4-ECDSA-P256-SHA256
 4679   5909   
20150830T123600Z
 4680   5910   
20150830/service/aws4_request
 4681         -
b48c0f7d7cdaa2cd05e4b789c913063becd96ccace5296a334c950040e58bcac
        5911  +
b48c0f7d7cdaa2cd05e4b789c913063becd96ccace5296a334c950040e58bcac
              \
 No newline at end of file
 4682   5912   
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
 4683   5913   
new file mode 100644
 4684   5914   
index 0000000..379dcb2
 4685         -
-- /dev/null
        5915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 4686   5916   
@@ -0,0 +1,4 @@
        5917  +
{
        5918  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5919  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5920  +
}
 4687   5921   
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
 4688   5922   
similarity index 99%
 4689   5923   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 4690   5924   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4691   5925   
index f9fb726..7e93f58 100644
 4692         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
        5926  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4693   5927   
@@ -1,7 +1,7 @@
 4694   5928   
GET
 4695   5929   
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4696   5930   
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
 4697   5931   
host:example.amazonaws.com
 4698   5932   
 4699   5933   
host
 4700         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5934  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4701   5935   
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
 4702   5936   
new file mode 100644
 4703   5937   
index 0000000..48311a8
 4704         -
-- /dev/null
        5938  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 4705   5939   
@@ -0,0 +1 @@
        5940  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 4706   5941   
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
 4707   5942   
new file mode 100644
 4708   5943   
index 0000000..82da9be
 4709         -
-- /dev/null
        5944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 4710   5945   
@@ -0,0 +1,3 @@
        5946  +
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
        5947  +
Host:example.amazonaws.com
        5948  +
 4711   5949   
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
 4712   5950   
similarity index 99%
 4713   5951   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 4714   5952   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4715   5953   
index ef06e89..4aab9a2 100644
 4716         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
        5954  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4717   5955   
@@ -1,4 +1,4 @@
 4718   5956   
AWS4-ECDSA-P256-SHA256
 4719   5957   
20150830T123600Z
 4720   5958   
20150830/service/aws4_request
 4721         -
a967a5035e5dc574f94fb9f0de0faf9d56e889c26d9a65d7d0a15d89690280d1
        5959  +
a967a5035e5dc574f94fb9f0de0faf9d56e889c26d9a65d7d0a15d89690280d1
              \
 No newline at end of file
 4722   5960   
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
 4723   5961   
similarity index 80%
 4724   5962   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 4725   5963   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4726   5964   
index da760cd..a149694 100644
 4727         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        5965  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4728   5966   
@@ -1,3 +1,2 @@
 4729   5967   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4730   5968   
Host:example.amazonaws.com
 4731         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4732   5969   
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
 4733   5970   
new file mode 100644
 4734   5971   
index 0000000..0468d80
 4735         -
-- /dev/null
        5972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 4736   5973   
@@ -0,0 +1,12 @@
        5974  +
{
        5975  +
    "credentials": {
        5976  +
        "access_key_id": "AKIDEXAMPLE",
        5977  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5978  +
    },
        5979  +
    "expiration_in_seconds": 3600,
        5980  +
    "normalize": true,
        5981  +
    "region": "us-east-1",
        5982  +
    "service": "service",
        5983  +
    "sign_body": false,
        5984  +
    "timestamp": "2015-08-30T12:36:00Z"
        5985  +
}
              \
 No newline at end of file
 4737   5986   
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
 4738   5987   
new file mode 100644
 4739   5988   
index 0000000..0f1afe7
 4740         -
-- /dev/null
        5989  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 4741   5990   
@@ -0,0 +1,9 @@
        5991  +
GET
        5992  +
/%E1%88%B4
        5993  +
        5994  +
host:example.amazonaws.com
        5995  +
x-amz-date:20150830T123600Z
        5996  +
x-amz-region-set:us-east-1
        5997  +
        5998  +
host;x-amz-date;x-amz-region-set
        5999  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4742   6000   
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
 4743   6001   
new file mode 100644
 4744   6002   
index 0000000..4b9af6c
 4745         -
-- /dev/null
        6003  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 4746   6004   
@@ -0,0 +1 @@
        6005  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 4747   6006   
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
 4748   6007   
new file mode 100644
 4749   6008   
index 0000000..d42d7b3
 4750         -
-- /dev/null
        6009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 4751   6010   
@@ -0,0 +1,6 @@
        6011  +
GET /ሴ HTTP/1.1
        6012  +
Host:example.amazonaws.com
        6013  +
X-Amz-Date:20150830T123600Z
        6014  +
X-Amz-Region-Set:us-east-1
        6015  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        6016  +
 4752   6017   
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
 4753   6018   
new file mode 100644
 4754   6019   
index 0000000..0827f62
 4755         -
-- /dev/null
        6020  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 4756   6021   
@@ -0,0 +1,4 @@
        6022  +
AWS4-ECDSA-P256-SHA256
        6023  +
20150830T123600Z
        6024  +
20150830/service/aws4_request
        6025  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 4757   6026   
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
 4758   6027   
new file mode 100644
 4759   6028   
index 0000000..379dcb2
 4760         -
-- /dev/null
        6029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 4761   6030   
@@ -0,0 +1,4 @@
        6031  +
{
        6032  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6033  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6034  +
}
 4762   6035   
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
 4763   6036   
new file mode 100644
 4764   6037   
index 0000000..a41a2f8
 4765         -
-- /dev/null
        6038  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 4766   6039   
@@ -0,0 +1,7 @@
        6040  +
GET
        6041  +
/%E1%88%B4
        6042  +
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
        6043  +
host:example.amazonaws.com
        6044  +
        6045  +
host
        6046  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4767   6047   
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
 4768   6048   
new file mode 100644
 4769   6049   
index 0000000..a5c7f4f
 4770         -
-- /dev/null
        6050  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 4771   6051   
@@ -0,0 +1 @@
        6052  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 4772   6053   
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
 4773   6054   
new file mode 100644
 4774   6055   
index 0000000..492ed33
 4775         -
-- /dev/null
        6056  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 4776   6057   
@@ -0,0 +1,3 @@
        6058  +
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
        6059  +
Host:example.amazonaws.com
        6060  +
 4777   6061   
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
 4778   6062   
new file mode 100644
 4779   6063   
index 0000000..a93108f
 4780         -
-- /dev/null
        6064  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 4781   6065   
@@ -0,0 +1,4 @@
        6066  +
AWS4-ECDSA-P256-SHA256
        6067  +
20150830T123600Z
        6068  +
20150830/service/aws4_request
        6069  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 4782   6070   
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
 4783   6071   
new file mode 100644
 4784   6072   
index 0000000..9e273f6
 4785         -
-- /dev/null
        6073  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 4786   6074   
@@ -0,0 +1,2 @@
        6075  +
GET /ሴ HTTP/1.1
        6076  +
Host:example.amazonaws.com
 4787   6077   
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
 4788   6078   
new file mode 100644
 4789   6079   
index 0000000..0468d80
 4790         -
-- /dev/null
        6080  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 4791   6081   
@@ -0,0 +1,12 @@
        6082  +
{
        6083  +
    "credentials": {
        6084  +
        "access_key_id": "AKIDEXAMPLE",
        6085  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6086  +
    },
        6087  +
    "expiration_in_seconds": 3600,
        6088  +
    "normalize": true,
        6089  +
    "region": "us-east-1",
        6090  +
    "service": "service",
        6091  +
    "sign_body": false,
        6092  +
    "timestamp": "2015-08-30T12:36:00Z"
        6093  +
}
              \
 No newline at end of file
 4792   6094   
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
 4793   6095   
similarity index 99%
 4794   6096   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 4795   6097   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4796   6098   
index bb9d4bf..edc0bb4 100644
 4797         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
        6099  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4798   6100   
@@ -1,9 +1,9 @@
 4799   6101   
GET
 4800   6102   
/
 4801   6103   
Param1=value1
 4802   6104   
host:example.amazonaws.com
 4803   6105   
x-amz-date:20150830T123600Z
 4804   6106   
x-amz-region-set:us-east-1
 4805   6107   
 4806   6108   
host;x-amz-date;x-amz-region-set
 4807         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6109  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4808   6110   
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
 4809   6111   
new file mode 100644
 4810   6112   
index 0000000..ee9a272
 4811         -
-- /dev/null
        6113  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 4812   6114   
@@ -0,0 +1 @@
        6115  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 4813   6116   
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
 4814   6117   
new file mode 100644
 4815   6118   
index 0000000..2090343
 4816         -
-- /dev/null
        6119  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 4817   6120   
@@ -0,0 +1,6 @@
        6121  +
GET /?Param1=value1 HTTP/1.1
        6122  +
Host:example.amazonaws.com
        6123  +
X-Amz-Date:20150830T123600Z
        6124  +
X-Amz-Region-Set:us-east-1
        6125  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        6126  +
 4818   6127   
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
 4819   6128   
similarity index 99%
 4820   6129   
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
 4821   6130   
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
 4822   6131   
index a176f1d..06ed74f 100644
 4823         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-string-to-sign.txt
        6132  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-string-to-sign.txt
 4824   6133   
@@ -1,4 +1,4 @@
 4825   6134   
AWS4-ECDSA-P256-SHA256
 4826   6135   
20150830T123600Z
 4827   6136   
20150830/service/aws4_request
 4828         -
894f4237e92aae973c992da1d1f39d7a5913a23e9f7cbcf085e9550685eb498a
        6137  +
894f4237e92aae973c992da1d1f39d7a5913a23e9f7cbcf085e9550685eb498a
              \
 No newline at end of file
 4829   6138   
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
 4830   6139   
new file mode 100644
 4831   6140   
index 0000000..379dcb2
 4832         -
-- /dev/null
        6141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 4833   6142   
@@ -0,0 +1,4 @@
        6143  +
{
        6144  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6145  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6146  +
}
 4834   6147   
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
 4835   6148   
similarity index 99%
 4836   6149   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 4837   6150   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4838   6151   
index 344384b..a875d70 100644
 4839         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
        6152  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4840   6153   
@@ -1,7 +1,7 @@
 4841   6154   
GET
 4842   6155   
/
 4843   6156   
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
 4844   6157   
host:example.amazonaws.com
 4845   6158   
 4846   6159   
host
 4847         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6160  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4848   6161   
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
 4849   6162   
new file mode 100644
 4850   6163   
index 0000000..ef93624
 4851         -
-- /dev/null
        6164  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 4852   6165   
@@ -0,0 +1 @@
        6166  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 4853   6167   
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
 4854   6168   
new file mode 100644
 4855   6169   
index 0000000..92829f7
 4856         -
-- /dev/null
        6170  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 4857   6171   
@@ -0,0 +1,3 @@
        6172  +
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
        6173  +
Host:example.amazonaws.com
        6174  +
 4858   6175   
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
 4859   6176   
similarity index 99%
 4860   6177   
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
 4861   6178   
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
 4862   6179   
index b625052..4ff9191 100644
 4863         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-string-to-sign.txt
        6180  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-string-to-sign.txt
 4864   6181   
@@ -1,4 +1,4 @@
 4865   6182   
AWS4-ECDSA-P256-SHA256
 4866   6183   
20150830T123600Z
 4867   6184   
20150830/service/aws4_request
 4868         -
07551f1d699afeb50d6811a527ab7b0270b60448ea27d8cbccb9750d68287b3f
        6185  +
07551f1d699afeb50d6811a527ab7b0270b60448ea27d8cbccb9750d68287b3f
              \
 No newline at end of file
 4869   6186   
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
 4870   6187   
similarity index 67%
 4871   6188   
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
 4872   6189   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4873   6190   
index 970d0a0..f4a03bb 100644
 4874         -
-- 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
        6191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4875   6192   
@@ -1,3 +1,2 @@
 4876   6193   
GET /?Param1=value1 HTTP/1.1
 4877   6194   
Host:example.amazonaws.com
 4878         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4879   6195   
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
 4880   6196   
new file mode 100644
 4881   6197   
index 0000000..0468d80
 4882         -
-- /dev/null
        6198  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 4883   6199   
@@ -0,0 +1,12 @@
        6200  +
{
        6201  +
    "credentials": {
        6202  +
        "access_key_id": "AKIDEXAMPLE",
        6203  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6204  +
    },
        6205  +
    "expiration_in_seconds": 3600,
        6206  +
    "normalize": true,
        6207  +
    "region": "us-east-1",
        6208  +
    "service": "service",
        6209  +
    "sign_body": false,
        6210  +
    "timestamp": "2015-08-30T12:36:00Z"
        6211  +
}
              \
 No newline at end of file
 4884   6212   
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
 4885   6213   
new file mode 100644
 4886   6214   
index 0000000..da07537
 4887         -
-- /dev/null
        6215  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 4888   6216   
@@ -0,0 +1,9 @@
        6217  +
GET
        6218  +
/
        6219  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        6220  +
host:example.amazonaws.com
        6221  +
x-amz-date:20150830T123600Z
        6222  +
x-amz-region-set:us-east-1
        6223  +
        6224  +
host;x-amz-date;x-amz-region-set
        6225  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4889   6226   
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
 4890   6227   
new file mode 100644
 4891   6228   
index 0000000..edb21e5
 4892         -
-- /dev/null
        6229  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 4893   6230   
@@ -0,0 +1 @@
        6231  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 4894   6232   
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
 4895   6233   
new file mode 100644
 4896   6234   
index 0000000..e60394c
 4897         -
-- /dev/null
        6235  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 4898   6236   
@@ -0,0 +1,6 @@
        6237  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        6238  +
Host:example.amazonaws.com
        6239  +
X-Amz-Date:20150830T123600Z
        6240  +
X-Amz-Region-Set:us-east-1
        6241  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        6242  +
 4899   6243   
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
 4900   6244   
new file mode 100644
 4901   6245   
index 0000000..1dfc886
 4902         -
-- /dev/null
        6246  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 4903   6247   
@@ -0,0 +1,4 @@
        6248  +
AWS4-ECDSA-P256-SHA256
        6249  +
20150830T123600Z
        6250  +
20150830/service/aws4_request
        6251  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 4904   6252   
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
 4905   6253   
new file mode 100644
 4906   6254   
index 0000000..379dcb2
 4907         -
-- /dev/null
        6255  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 4908   6256   
@@ -0,0 +1,4 @@
        6257  +
{
        6258  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6259  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6260  +
}
 4909   6261   
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
 4910   6262   
new file mode 100644
 4911   6263   
index 0000000..e94dc0c
 4912         -
-- /dev/null
        6264  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 4913   6265   
@@ -0,0 +1,7 @@
        6266  +
GET
        6267  +
/
        6268  +
%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
        6269  +
host:example.amazonaws.com
        6270  +
        6271  +
host
        6272  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4914   6273   
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
 4915   6274   
new file mode 100644
 4916   6275   
index 0000000..7489437
 4917         -
-- /dev/null
        6276  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 4918   6277   
@@ -0,0 +1 @@
        6278  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 4919   6279   
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
 4920   6280   
new file mode 100644
 4921   6281   
index 0000000..90c0e73
 4922         -
-- /dev/null
        6282  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 4923   6283   
@@ -0,0 +1,3 @@
        6284  +
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
        6285  +
Host:example.amazonaws.com
        6286  +
 4924   6287   
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
 4925   6288   
new file mode 100644
 4926   6289   
index 0000000..ab8a711
 4927         -
-- /dev/null
        6290  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 4928   6291   
@@ -0,0 +1,4 @@
        6292  +
AWS4-ECDSA-P256-SHA256
        6293  +
20150830T123600Z
        6294  +
20150830/service/aws4_request
        6295  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 4929   6296   
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
 4930   6297   
new file mode 100644
 4931   6298   
index 0000000..368c6e3
 4932         -
-- /dev/null
        6299  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 4933   6300   
@@ -0,0 +1,2 @@
        6301  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        6302  +
Host:example.amazonaws.com
 4934   6303   
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
 4935   6304   
new file mode 100644
 4936   6305   
index 0000000..0468d80
 4937         -
-- /dev/null
        6306  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 4938   6307   
@@ -0,0 +1,12 @@
        6308  +
{
        6309  +
    "credentials": {
        6310  +
        "access_key_id": "AKIDEXAMPLE",
        6311  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6312  +
    },
        6313  +
    "expiration_in_seconds": 3600,
        6314  +
    "normalize": true,
        6315  +
    "region": "us-east-1",
        6316  +
    "service": "service",
        6317  +
    "sign_body": false,
        6318  +
    "timestamp": "2015-08-30T12:36:00Z"
        6319  +
}
              \
 No newline at end of file
 4939   6320   
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
 4940   6321   
similarity index 99%
 4941   6322   
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
 4942   6323   
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
 4943   6324   
index 74f625a..3db56f7 100644
 4944         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/header-canonical-request.txt
        6325  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-canonical-request.txt
 4945   6326   
@@ -1,9 +1,9 @@
 4946   6327   
GET
 4947   6328   
/
 4948   6329   
Param1=value1&Param2=value2
 4949   6330   
host:example.amazonaws.com
 4950   6331   
x-amz-date:20150830T123600Z
 4951   6332   
x-amz-region-set:us-east-1
 4952   6333   
 4953   6334   
host;x-amz-date;x-amz-region-set
 4954         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6335  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4955   6336   
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
 4956   6337   
new file mode 100644
 4957   6338   
index 0000000..e6042bc
 4958         -
-- /dev/null
        6339  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 4959   6340   
@@ -0,0 +1 @@
        6341  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 4960   6342   
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
 4961   6343   
new file mode 100644
 4962   6344   
index 0000000..5505969
 4963         -
-- /dev/null
        6345  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 4964   6346   
@@ -0,0 +1,6 @@
        6347  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        6348  +
Host:example.amazonaws.com
        6349  +
X-Amz-Date:20150830T123600Z
        6350  +
X-Amz-Region-Set:us-east-1
        6351  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        6352  +
 4965   6353   
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
 4966   6354   
similarity index 99%
 4967   6355   
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
 4968   6356   
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
 4969   6357   
index 44873b7..e8f5e31 100644
 4970         -
-- 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
        6358  +
++ 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
 4971   6359   
@@ -1,4 +1,4 @@
 4972   6360   
AWS4-ECDSA-P256-SHA256
 4973   6361   
20150830T123600Z
 4974   6362   
20150830/service/aws4_request
 4975         -
cc07b29e0d0f0b2d6aa296621a5608fd9c2271159b9b2f737f682704ebb96482
        6363  +
cc07b29e0d0f0b2d6aa296621a5608fd9c2271159b9b2f737f682704ebb96482
              \
 No newline at end of file
 4976   6364   
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
 4977   6365   
new file mode 100644
 4978   6366   
index 0000000..379dcb2
 4979         -
-- /dev/null
        6367  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 4980   6368   
@@ -0,0 +1,4 @@
        6369  +
{
        6370  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6371  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6372  +
}
 4981   6373   
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
 4982   6374   
similarity index 99%
 4983   6375   
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
 4984   6376   
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
 4985   6377   
index 6d30727..3fe6a9f 100644
 4986         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/query-canonical-request.txt
        6378  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-canonical-request.txt
 4987   6379   
@@ -1,7 +1,7 @@
 4988   6380   
GET
 4989   6381   
/
 4990   6382   
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
 4991   6383   
host:example.amazonaws.com
 4992   6384   
 4993   6385   
host
 4994         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6386  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4995   6387   
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
 4996   6388   
new file mode 100644
 4997   6389   
index 0000000..3f35de8
 4998         -
-- /dev/null
        6390  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 4999   6391   
@@ -0,0 +1 @@
        6392  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 5000   6393   
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
 5001   6394   
new file mode 100644
 5002   6395   
index 0000000..30b336b
 5003         -
-- /dev/null
        6396  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 5004   6397   
@@ -0,0 +1,3 @@
        6398  +
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
        6399  +
Host:example.amazonaws.com
        6400  +
 5005   6401   
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
 5006   6402   
similarity index 99%
 5007   6403   
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
 5008   6404   
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
 5009   6405   
index 99d0510..7f0565f 100644
 5010         -
-- 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
        6406  +
++ 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
 5011   6407   
@@ -1,4 +1,4 @@
 5012   6408   
AWS4-ECDSA-P256-SHA256
 5013   6409   
20150830T123600Z
 5014   6410   
20150830/service/aws4_request
 5015         -
c688584c3dbae2868c4911c825239f2c9375e66b9962f21db60b9b2fcd75bf45
        6411  +
c688584c3dbae2868c4911c825239f2c9375e66b9962f21db60b9b2fcd75bf45
              \
 No newline at end of file
 5016   6412   
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
 5017   6413   
similarity index 100%
 5018   6414   
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
 5019   6415   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 5020   6416   
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
 5021   6417   
new file mode 100644
 5022   6418   
index 0000000..0468d80
 5023         -
-- /dev/null
        6419  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 5024   6420   
@@ -0,0 +1,12 @@
        6421  +
{
        6422  +
    "credentials": {
        6423  +
        "access_key_id": "AKIDEXAMPLE",
        6424  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6425  +
    },
        6426  +
    "expiration_in_seconds": 3600,
        6427  +
    "normalize": true,
        6428  +
    "region": "us-east-1",
        6429  +
    "service": "service",
        6430  +
    "sign_body": false,
        6431  +
    "timestamp": "2015-08-30T12:36:00Z"
        6432  +
}
              \
 No newline at end of file
 5025   6433   
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
 5026   6434   
similarity index 99%
 5027   6435   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 5028   6436   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 5029   6437   
index 816c862..cc4537a 100644
 5030         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
        6438  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 5031   6439   
@@ -1,9 +1,9 @@
 5032   6440   
GET
 5033   6441   
/
 5034   6442   
-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 5035   6443   
host:example.amazonaws.com
 5036   6444   
x-amz-date:20150830T123600Z
 5037   6445   
x-amz-region-set:us-east-1
 5038   6446   
 5039   6447   
host;x-amz-date;x-amz-region-set
 5040         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6448  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5041   6449   
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
 5042   6450   
new file mode 100644
 5043   6451   
index 0000000..70d38c1
 5044         -
-- /dev/null
        6452  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 5045   6453   
@@ -0,0 +1 @@
        6454  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 5046   6455   
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
 5047   6456   
new file mode 100644
 5048   6457   
index 0000000..0647eea
 5049         -
-- /dev/null
        6458  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 5050   6459   
@@ -0,0 +1,6 @@
        6460  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        6461  +
Host:example.amazonaws.com
        6462  +
X-Amz-Date:20150830T123600Z
        6463  +
X-Amz-Region-Set:us-east-1
        6464  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        6465  +
 5051   6466   
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
 5052   6467   
similarity index 99%
 5053   6468   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 5054   6469   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 5055   6470   
index 6129fc5..cc19d14 100644
 5056         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
        6471  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 5057   6472   
@@ -1,4 +1,4 @@
 5058   6473   
AWS4-ECDSA-P256-SHA256
 5059   6474   
20150830T123600Z
 5060   6475   
20150830/service/aws4_request
 5061         -
377b8a3e195894659b84cd1c475dc8a3663a663360a349430c0c3b82bd82b77b
        6476  +
377b8a3e195894659b84cd1c475dc8a3663a663360a349430c0c3b82bd82b77b
              \
 No newline at end of file
 5062   6477   
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
 5063   6478   
new file mode 100644
 5064   6479   
index 0000000..379dcb2
 5065         -
-- /dev/null
        6480  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 5066   6481   
@@ -0,0 +1,4 @@
        6482  +
{
        6483  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6484  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6485  +
}
 5067   6486   
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
 5068   6487   
similarity index 99%
 5069   6488   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 5070   6489   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 5071   6490   
index b77ee9f..ed6a10e 100644
 5072         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
        6491  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 5073   6492   
@@ -1,7 +1,7 @@
 5074   6493   
GET
 5075   6494   
/
 5076   6495   
-._~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
 5077   6496   
host:example.amazonaws.com
 5078   6497   
 5079   6498   
host
 5080         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6499  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5081   6500   
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
 5082   6501   
new file mode 100644
 5083   6502   
index 0000000..2ceba7b
 5084         -
-- /dev/null
        6503  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 5085   6504   
@@ -0,0 +1 @@
        6505  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 5086   6506   
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
 5087   6507   
new file mode 100644
 5088   6508   
index 0000000..0cd6d0a
 5089         -
-- /dev/null
        6509  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 5090   6510   
@@ -0,0 +1,3 @@
        6511  +
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
        6512  +
Host:example.amazonaws.com
        6513  +
 5091   6514   
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
 5092   6515   
similarity index 99%
 5093   6516   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 5094   6517   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 5095   6518   
index 1cfed7a..aad1421 100644
 5096         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
        6519  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 5097   6520   
@@ -1,4 +1,4 @@
 5098   6521   
AWS4-ECDSA-P256-SHA256
 5099   6522   
20150830T123600Z
 5100   6523   
20150830/service/aws4_request
 5101         -
5d8923c620c699f856a35a6eb8dd786fd4c8c6ab0a35c552caeb5b648989433f
        6524  +
5d8923c620c699f856a35a6eb8dd786fd4c8c6ab0a35c552caeb5b648989433f
              \
 No newline at end of file
 5102   6525   
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
 5103   6526   
similarity index 86%
 5104   6527   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 5105   6528   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 5106   6529   
index d2833b3..36b2fe3 100644
 5107         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        6530  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 5108   6531   
@@ -1,3 +1,2 @@
 5109   6532   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 5110   6533   
Host:example.amazonaws.com
 5111         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5112   6534   
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
 5113   6535   
new file mode 100644
 5114   6536   
index 0000000..0468d80
 5115         -
-- /dev/null
        6537  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 5116   6538   
@@ -0,0 +1,12 @@
        6539  +
{
        6540  +
    "credentials": {
        6541  +
        "access_key_id": "AKIDEXAMPLE",
        6542  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6543  +
    },
        6544  +
    "expiration_in_seconds": 3600,
        6545  +
    "normalize": true,
        6546  +
    "region": "us-east-1",
        6547  +
    "service": "service",
        6548  +
    "sign_body": false,
        6549  +
    "timestamp": "2015-08-30T12:36:00Z"
        6550  +
}
              \
 No newline at end of file
 5117   6551   
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
 5118   6552   
new file mode 100644
 5119   6553   
index 0000000..76db73d
 5120         -
-- /dev/null
        6554  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 5121   6555   
@@ -0,0 +1,9 @@
        6556  +
GET
        6557  +
/
        6558  +
        6559  +
host:example.amazonaws.com
        6560  +
x-amz-date:20150830T123600Z
        6561  +
x-amz-region-set:us-east-1
        6562  +
        6563  +
host;x-amz-date;x-amz-region-set
        6564  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5122   6565   
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
 5123   6566   
new file mode 100644
 5124   6567   
index 0000000..281cc62
 5125         -
-- /dev/null
        6568  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 5126   6569   
@@ -0,0 +1 @@
        6570  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 5127   6571   
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
 5128   6572   
new file mode 100644
 5129   6573   
index 0000000..cce9925
 5130         -
-- /dev/null
        6574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 5131   6575   
@@ -0,0 +1,6 @@
        6576  +
GET / HTTP/1.1
        6577  +
Host:example.amazonaws.com
        6578  +
X-Amz-Date:20150830T123600Z
        6579  +
X-Amz-Region-Set:us-east-1
        6580  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        6581  +
 5132   6582   
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
 5133   6583   
new file mode 100644
 5134   6584   
index 0000000..600f1d8
 5135         -
-- /dev/null
        6585  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 5136   6586   
@@ -0,0 +1,4 @@
        6587  +
AWS4-ECDSA-P256-SHA256
        6588  +
20150830T123600Z
        6589  +
20150830/service/aws4_request
        6590  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5137   6591   
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
 5138   6592   
new file mode 100644
 5139   6593   
index 0000000..379dcb2
 5140         -
-- /dev/null
        6594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 5141   6595   
@@ -0,0 +1,4 @@
        6596  +
{
        6597  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6598  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6599  +
}
 5142   6600   
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
 5143   6601   
new file mode 100644
 5144   6602   
index 0000000..779c51c
 5145         -
-- /dev/null
        6603  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 5146   6604   
@@ -0,0 +1,7 @@
        6605  +
GET
        6606  +
/
        6607  +
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
        6608  +
host:example.amazonaws.com
        6609  +
        6610  +
host
        6611  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5147   6612   
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
 5148   6613   
new file mode 100644
 5149   6614   
index 0000000..2979e5e
 5150         -
-- /dev/null
        6615  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 5151   6616   
@@ -0,0 +1 @@
        6617  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 5152   6618   
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
 5153   6619   
new file mode 100644
 5154   6620   
index 0000000..1b3179c
 5155         -
-- /dev/null
        6621  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 5156   6622   
@@ -0,0 +1,3 @@
        6623  +
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
        6624  +
Host:example.amazonaws.com
        6625  +
 5157   6626   
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
 5158   6627   
new file mode 100644
 5159   6628   
index 0000000..6e29a7e
 5160         -
-- /dev/null
        6629  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 5161   6630   
@@ -0,0 +1,4 @@
        6631  +
AWS4-ECDSA-P256-SHA256
        6632  +
20150830T123600Z
        6633  +
20150830/service/aws4_request
        6634  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 5162   6635   
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
 5163   6636   
similarity index 60%
 5164   6637   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 5165   6638   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 5166   6639   
index 0f7a9bf..e659c3b 100644
 5167         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        6640  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 5168   6641   
@@ -1,3 +1,2 @@
 5169   6642   
GET / HTTP/1.1
 5170   6643   
Host:example.amazonaws.com
 5171         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5172   6644   
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
 5173   6645   
new file mode 100644
 5174   6646   
index 0000000..0468d80
 5175         -
-- /dev/null
        6647  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 5176   6648   
@@ -0,0 +1,12 @@
        6649  +
{
        6650  +
    "credentials": {
        6651  +
        "access_key_id": "AKIDEXAMPLE",
        6652  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6653  +
    },
        6654  +
    "expiration_in_seconds": 3600,
        6655  +
    "normalize": true,
        6656  +
    "region": "us-east-1",
        6657  +
    "service": "service",
        6658  +
    "sign_body": false,
        6659  +
    "timestamp": "2015-08-30T12:36:00Z"
        6660  +
}
              \
 No newline at end of file
 5177   6661   
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
 5178   6662   
new file mode 100644
 5179   6663   
index 0000000..8841ddf
 5180         -
-- /dev/null
        6664  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 5181   6665   
@@ -0,0 +1,9 @@
        6666  +
GET
        6667  +
/
        6668  +
%E1%88%B4=bar
        6669  +
host:example.amazonaws.com
        6670  +
x-amz-date:20150830T123600Z
        6671  +
x-amz-region-set:us-east-1
        6672  +
        6673  +
host;x-amz-date;x-amz-region-set
        6674  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5182   6675   
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
 5183   6676   
new file mode 100644
 5184   6677   
index 0000000..1497add
 5185         -
-- /dev/null
        6678  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 5186   6679   
@@ -0,0 +1 @@
        6680  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 5187   6681   
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
 5188   6682   
new file mode 100644
 5189   6683   
index 0000000..961bc10
 5190         -
-- /dev/null
        6684  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 5191   6685   
@@ -0,0 +1,6 @@
        6686  +
GET /?ሴ=bar HTTP/1.1
        6687  +
Host:example.amazonaws.com
        6688  +
X-Amz-Date:20150830T123600Z
        6689  +
X-Amz-Region-Set:us-east-1
        6690  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        6691  +
 5192   6692   
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
 5193   6693   
new file mode 100644
 5194   6694   
index 0000000..e78ed70
 5195         -
-- /dev/null
        6695  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 5196   6696   
@@ -0,0 +1,4 @@
        6697  +
AWS4-ECDSA-P256-SHA256
        6698  +
20150830T123600Z
        6699  +
20150830/service/aws4_request
        6700  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 5197   6701   
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
 5198   6702   
new file mode 100644
 5199   6703   
index 0000000..379dcb2
 5200         -
-- /dev/null
        6704  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 5201   6705   
@@ -0,0 +1,4 @@
        6706  +
{
        6707  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6708  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6709  +
}
 5202   6710   
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
 5203   6711   
new file mode 100644
 5204   6712   
index 0000000..6d5ae93
 5205         -
-- /dev/null
        6713  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 5206   6714   
@@ -0,0 +1,7 @@
        6715  +
GET
        6716  +
/
        6717  +
%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
        6718  +
host:example.amazonaws.com
        6719  +
        6720  +
host
        6721  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5207   6722   
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
 5208   6723   
new file mode 100644
 5209   6724   
index 0000000..92107f2
 5210         -
-- /dev/null
        6725  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 5211   6726   
@@ -0,0 +1 @@
        6727  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 5212   6728   
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
 5213   6729   
new file mode 100644
 5214   6730   
index 0000000..bb8a75b
 5215         -
-- /dev/null
        6731  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 5216   6732   
@@ -0,0 +1,3 @@
        6733  +
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
        6734  +
Host:example.amazonaws.com
        6735  +
 5217   6736   
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
 5218   6737   
new file mode 100644
 5219   6738   
index 0000000..9fa94c7
 5220         -
-- /dev/null
        6739  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 5221   6740   
@@ -0,0 +1,4 @@
        6741  +
AWS4-ECDSA-P256-SHA256
        6742  +
20150830T123600Z
        6743  +
20150830/service/aws4_request
        6744  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 5222   6745   
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
 5223   6746   
new file mode 100644
 5224   6747   
index 0000000..aff333a
 5225         -
-- /dev/null
        6748  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 5226   6749   
@@ -0,0 +1,2 @@
        6750  +
GET /?ሴ=bar HTTP/1.1
        6751  +
Host:example.amazonaws.com
 5227   6752   
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
 5228   6753   
new file mode 100644
 5229   6754   
index 0000000..a334e18
 5230         -
-- /dev/null
        6755  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 5231   6756   
@@ -0,0 +1,13 @@
        6757  +
{
        6758  +
    "credentials": {
        6759  +
        "access_key_id": "AKIDEXAMPLE",
        6760  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6761  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        6762  +
    },
        6763  +
    "expiration_in_seconds": 3600,
        6764  +
    "normalize": true,
        6765  +
    "region": "us-east-1",
        6766  +
    "service": "service",
        6767  +
    "sign_body": false,
        6768  +
    "timestamp": "2015-08-30T12:36:00Z"
        6769  +
}
              \
 No newline at end of file
 5232   6770   
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
 5233   6771   
similarity index 99%
 5234   6772   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 5235   6773   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5236   6774   
index f14defd..0e9ad42 100644
 5237         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
        6775  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5238   6776   
@@ -1,10 +1,10 @@
 5239   6777   
GET
 5240   6778   
/
 5241   6779   
 5242   6780   
host:example.amazonaws.com
 5243   6781   
x-amz-date:20150830T123600Z
 5244   6782   
x-amz-region-set:us-east-1
 5245   6783   
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
 5246   6784   
 5247   6785   
host;x-amz-date;x-amz-region-set;x-amz-security-token
 5248         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6786  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5249   6787   
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
 5250   6788   
new file mode 100644
 5251   6789   
index 0000000..a7673b5
 5252         -
-- /dev/null
        6790  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 5253   6791   
@@ -0,0 +1 @@
        6792  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 5254   6793   
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
 5255   6794   
new file mode 100644
 5256   6795   
index 0000000..ed16e76
 5257         -
-- /dev/null
        6796  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 5258   6797   
@@ -0,0 +1,7 @@
        6798  +
GET / HTTP/1.1
        6799  +
Host:example.amazonaws.com
        6800  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        6801  +
X-Amz-Date:20150830T123600Z
        6802  +
X-Amz-Region-Set:us-east-1
        6803  +
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
        6804  +
 5259   6805   
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
 5260   6806   
similarity index 99%
 5261   6807   
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
 5262   6808   
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
 5263   6809   
index 4edece5..6c1ec65 100644
 5264         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-string-to-sign.txt
        6810  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-string-to-sign.txt
 5265   6811   
@@ -1,4 +1,4 @@
 5266   6812   
AWS4-ECDSA-P256-SHA256
 5267   6813   
20150830T123600Z
 5268   6814   
20150830/service/aws4_request
 5269         -
79893373104239a0547df489af395ec3c1b8873a8601f07f11ffd3f1ac557e7d
        6815  +
79893373104239a0547df489af395ec3c1b8873a8601f07f11ffd3f1ac557e7d
              \
 No newline at end of file
 5270   6816   
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
 5271   6817   
new file mode 100644
 5272   6818   
index 0000000..379dcb2
 5273         -
-- /dev/null
        6819  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 5274   6820   
@@ -0,0 +1,4 @@
        6821  +
{
        6822  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6823  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6824  +
}
 5275   6825   
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
 5276   6826   
similarity index 99%
 5277   6827   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 5278   6828   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5279   6829   
index 7c042af..1876b42 100644
 5280         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
        6830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5281   6831   
@@ -1,7 +1,7 @@
 5282   6832   
GET
 5283   6833   
/
 5284   6834   
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
 5285   6835   
host:example.amazonaws.com
 5286   6836   
 5287   6837   
host
 5288         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6838  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5289   6839   
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
 5290   6840   
new file mode 100644
 5291   6841   
index 0000000..903dfb4
 5292         -
-- /dev/null
        6842  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 5293   6843   
@@ -0,0 +1 @@
        6844  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 5294   6845   
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
 5295   6846   
new file mode 100644
 5296   6847   
index 0000000..bf1d246
 5297         -
-- /dev/null
        6848  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 5298   6849   
@@ -0,0 +1,3 @@
        6850  +
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
        6851  +
Host:example.amazonaws.com
        6852  +
 5299   6853   
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
 5300   6854   
similarity index 99%
 5301   6855   
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
 5302   6856   
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
 5303   6857   
index 0fd066a..f1b1790 100644
 5304         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-string-to-sign.txt
        6858  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-string-to-sign.txt
 5305   6859   
@@ -1,4 +1,4 @@
 5306   6860   
AWS4-ECDSA-P256-SHA256
 5307   6861   
20150830T123600Z
 5308   6862   
20150830/service/aws4_request
 5309         -
496062b4c2ed2175fe08ad084158783fa8d013c694542af721d49b25d1ebd390
        6863  +
496062b4c2ed2175fe08ad084158783fa8d013c694542af721d49b25d1ebd390
              \
 No newline at end of file
 5310   6864   
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
 5311   6865   
similarity index 60%
 5312   6866   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 5313   6867   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5314   6868   
index 0f7a9bf..e659c3b 100644
 5315         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        6869  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5316   6870   
@@ -1,3 +1,2 @@
 5317   6871   
GET / HTTP/1.1
 5318   6872   
Host:example.amazonaws.com
 5319         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5320   6873   
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
 5321   6874   
new file mode 100644
 5322   6875   
index 0000000..76db73d
 5323         -
-- /dev/null
        6876  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 5324   6877   
@@ -0,0 +1,9 @@
        6878  +
GET
        6879  +
/
        6880  +
        6881  +
host:example.amazonaws.com
        6882  +
x-amz-date:20150830T123600Z
        6883  +
x-amz-region-set:us-east-1
        6884  +
        6885  +
host;x-amz-date;x-amz-region-set
        6886  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5325   6887   
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
 5326   6888   
new file mode 100644
 5327   6889   
index 0000000..0468d80
 5328         -
-- /dev/null
        6890  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 5329   6891   
@@ -0,0 +1,12 @@
        6892  +
{
        6893  +
    "credentials": {
        6894  +
        "access_key_id": "AKIDEXAMPLE",
        6895  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6896  +
    },
        6897  +
    "expiration_in_seconds": 3600,
        6898  +
    "normalize": true,
        6899  +
    "region": "us-east-1",
        6900  +
    "service": "service",
        6901  +
    "sign_body": false,
        6902  +
    "timestamp": "2015-08-30T12:36:00Z"
        6903  +
}
              \
 No newline at end of file
 5330   6904   
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
 5331   6905   
new file mode 100644
 5332   6906   
index 0000000..76db73d
 5333         -
-- /dev/null
        6907  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 5334   6908   
@@ -0,0 +1,9 @@
        6909  +
GET
        6910  +
/
        6911  +
        6912  +
host:example.amazonaws.com
        6913  +
x-amz-date:20150830T123600Z
        6914  +
x-amz-region-set:us-east-1
        6915  +
        6916  +
host;x-amz-date;x-amz-region-set
        6917  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5335   6918   
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
 5336   6919   
new file mode 100644
 5337   6920   
index 0000000..a96ff24
 5338         -
-- /dev/null
        6921  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 5339   6922   
@@ -0,0 +1 @@
        6923  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 5340   6924   
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
 5341   6925   
new file mode 100644
 5342   6926   
index 0000000..689078b
 5343         -
-- /dev/null
        6927  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 5344   6928   
@@ -0,0 +1,6 @@
        6929  +
GET / HTTP/1.1
        6930  +
Host:example.amazonaws.com
        6931  +
X-Amz-Date:20150830T123600Z
        6932  +
X-Amz-Region-Set:us-east-1
        6933  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        6934  +
 5345   6935   
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
 5346   6936   
new file mode 100644
 5347   6937   
index 0000000..600f1d8
 5348         -
-- /dev/null
        6938  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 5349   6939   
@@ -0,0 +1,4 @@
        6940  +
AWS4-ECDSA-P256-SHA256
        6941  +
20150830T123600Z
        6942  +
20150830/service/aws4_request
        6943  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5350   6944   
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
 5351   6945   
new file mode 100644
 5352   6946   
index 0000000..379dcb2
 5353         -
-- /dev/null
        6947  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 5354   6948   
@@ -0,0 +1,4 @@
        6949  +
{
        6950  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6951  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6952  +
}
 5355   6953   
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
 5356   6954   
new file mode 100644
 5357   6955   
index 0000000..779c51c
 5358         -
-- /dev/null
        6956  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 5359   6957   
@@ -0,0 +1,7 @@
        6958  +
GET
        6959  +
/
        6960  +
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
        6961  +
host:example.amazonaws.com
        6962  +
        6963  +
host
        6964  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5360   6965   
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
 5361   6966   
new file mode 100644
 5362   6967   
index 0000000..cc42158
 5363         -
-- /dev/null
        6968  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 5364   6969   
@@ -0,0 +1 @@
        6970  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 5365   6971   
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
 5366   6972   
new file mode 100644
 5367   6973   
index 0000000..dc6d01d
 5368         -
-- /dev/null
        6974  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 5369   6975   
@@ -0,0 +1,3 @@
        6976  +
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
        6977  +
Host:example.amazonaws.com
        6978  +
 5370   6979   
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
 5371   6980   
new file mode 100644
 5372   6981   
index 0000000..6e29a7e
 5373         -
-- /dev/null
        6982  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 5374   6983   
@@ -0,0 +1,4 @@
        6984  +
AWS4-ECDSA-P256-SHA256
        6985  +
20150830T123600Z
        6986  +
20150830/service/aws4_request
        6987  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 5375   6988   
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
 5376   6989   
new file mode 100644
 5377   6990   
index 0000000..e659c3b
 5378         -
-- /dev/null
        6991  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 5379   6992   
@@ -0,0 +1,2 @@
        6993  +
GET / HTTP/1.1
        6994  +
Host:example.amazonaws.com
 5380   6995   
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
 5381   6996   
new file mode 100644
 5382   6997   
index 0000000..600f1d8
 5383         -
-- /dev/null
        6998  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 5384   6999   
@@ -0,0 +1,4 @@
        7000  +
AWS4-ECDSA-P256-SHA256
        7001  +
20150830T123600Z
        7002  +
20150830/service/aws4_request
        7003  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5385   7004   
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
 5386   7005   
new file mode 100644
 5387   7006   
index 0000000..0468d80
 5388         -
-- /dev/null
        7007  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 5389   7008   
@@ -0,0 +1,12 @@
        7009  +
{
        7010  +
    "credentials": {
        7011  +
        "access_key_id": "AKIDEXAMPLE",
        7012  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7013  +
    },
        7014  +
    "expiration_in_seconds": 3600,
        7015  +
    "normalize": true,
        7016  +
    "region": "us-east-1",
        7017  +
    "service": "service",
        7018  +
    "sign_body": false,
        7019  +
    "timestamp": "2015-08-30T12:36:00Z"
        7020  +
}
              \
 No newline at end of file
 5390   7021   
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
 5391   7022   
similarity index 99%
 5392   7023   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 5393   7024   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5394   7025   
index a6942c1..e881ac7 100644
 5395         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
        7026  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5396   7027   
@@ -1,9 +1,9 @@
 5397   7028   
POST
 5398   7029   
/
 5399   7030   
 5400   7031   
host:example.amazonaws.com
 5401   7032   
x-amz-date:20150830T123600Z
 5402   7033   
x-amz-region-set:us-east-1
 5403   7034   
 5404   7035   
host;x-amz-date;x-amz-region-set
 5405         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7036  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5406   7037   
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
 5407   7038   
new file mode 100644
 5408   7039   
index 0000000..4210210
 5409         -
-- /dev/null
        7040  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 5410   7041   
@@ -0,0 +1 @@
        7042  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 5411   7043   
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
 5412   7044   
new file mode 100644
 5413   7045   
index 0000000..257b110
 5414         -
-- /dev/null
        7046  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 5415   7047   
@@ -0,0 +1,6 @@
        7048  +
POST / HTTP/1.1
        7049  +
Host:example.amazonaws.com
        7050  +
X-Amz-Date:20150830T123600Z
        7051  +
X-Amz-Region-Set:us-east-1
        7052  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        7053  +
 5416   7054   
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
 5417   7055   
similarity index 99%
 5418   7056   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 5419   7057   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5420   7058   
index d5650cb..f8adf13 100644
 5421         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
        7059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5422   7060   
@@ -1,4 +1,4 @@
 5423   7061   
AWS4-ECDSA-P256-SHA256
 5424   7062   
20150830T123600Z
 5425   7063   
20150830/service/aws4_request
 5426         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7064  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5427   7065   
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
 5428   7066   
new file mode 100644
 5429   7067   
index 0000000..379dcb2
 5430         -
-- /dev/null
        7068  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 5431   7069   
@@ -0,0 +1,4 @@
        7070  +
{
        7071  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7072  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7073  +
}
 5432   7074   
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
 5433   7075   
similarity index 99%
 5434   7076   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 5435   7077   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5436   7078   
index e48ce07..5ea8e3c 100644
 5437         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
        7079  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5438   7080   
@@ -1,7 +1,7 @@
 5439   7081   
POST
 5440   7082   
/
 5441   7083   
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
 5442   7084   
host:example.amazonaws.com
 5443   7085   
 5444   7086   
host
 5445         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7087  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5446   7088   
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
 5447   7089   
new file mode 100644
 5448   7090   
index 0000000..9e2069e
 5449         -
-- /dev/null
        7091  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 5450   7092   
@@ -0,0 +1 @@
        7093  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 5451   7094   
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
 5452   7095   
new file mode 100644
 5453   7096   
index 0000000..67f5d29
 5454         -
-- /dev/null
        7097  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 5455   7098   
@@ -0,0 +1,3 @@
        7099  +
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
        7100  +
Host:example.amazonaws.com
        7101  +
 5456   7102   
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
 5457   7103   
similarity index 99%
 5458   7104   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 5459   7105   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5460   7106   
index 34e3382..711c162 100644
 5461         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
        7107  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5462   7108   
@@ -1,4 +1,4 @@
 5463   7109   
AWS4-ECDSA-P256-SHA256
 5464   7110   
20150830T123600Z
 5465   7111   
20150830/service/aws4_request
 5466         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7112  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5467   7113   
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
 5468   7114   
similarity index 61%
 5469   7115   
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
 5470   7116   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5471   7117   
index 3dc4179..3f0a82a 100644
 5472         -
-- 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
        7118  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5473   7119   
@@ -1,3 +1,2 @@
 5474   7120   
POST / HTTP/1.1
 5475   7121   
Host:example.amazonaws.com
 5476         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5477   7122   
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
 5478   7123   
new file mode 100644
 5479   7124   
index 0000000..0468d80
 5480         -
-- /dev/null
        7125  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 5481   7126   
@@ -0,0 +1,12 @@
        7127  +
{
        7128  +
    "credentials": {
        7129  +
        "access_key_id": "AKIDEXAMPLE",
        7130  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7131  +
    },
        7132  +
    "expiration_in_seconds": 3600,
        7133  +
    "normalize": true,
        7134  +
    "region": "us-east-1",
        7135  +
    "service": "service",
        7136  +
    "sign_body": false,
        7137  +
    "timestamp": "2015-08-30T12:36:00Z"
        7138  +
}
              \
 No newline at end of file
 5482   7139   
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
 5483   7140   
similarity index 99%
 5484   7141   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 5485   7142   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5486   7143   
index a8e1727..2883822 100644
 5487         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
        7144  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5488   7145   
@@ -1,10 +1,10 @@
 5489   7146   
POST
 5490   7147   
/
 5491   7148   
 5492   7149   
host:example.amazonaws.com
 5493   7150   
my-header1:value1
 5494   7151   
x-amz-date:20150830T123600Z
 5495   7152   
x-amz-region-set:us-east-1
 5496   7153   
 5497   7154   
host;my-header1;x-amz-date;x-amz-region-set
 5498         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7155  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5499   7156   
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
 5500   7157   
new file mode 100644
 5501   7158   
index 0000000..e3c2e6e
 5502         -
-- /dev/null
        7159  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 5503   7160   
@@ -0,0 +1 @@
        7161  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 5504   7162   
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
 5505   7163   
new file mode 100644
 5506   7164   
index 0000000..1d6e288
 5507         -
-- /dev/null
        7165  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 5508   7166   
@@ -0,0 +1,7 @@
        7167  +
POST / HTTP/1.1
        7168  +
Host:example.amazonaws.com
        7169  +
My-Header1:value1
        7170  +
X-Amz-Date:20150830T123600Z
        7171  +
X-Amz-Region-Set:us-east-1
        7172  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        7173  +
 5509   7174   
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
 5510   7175   
similarity index 99%
 5511   7176   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 5512   7177   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5513   7178   
index f6e3e9b..7c5236a 100644
 5514         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
        7179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5515   7180   
@@ -1,4 +1,4 @@
 5516   7181   
AWS4-ECDSA-P256-SHA256
 5517   7182   
20150830T123600Z
 5518   7183   
20150830/service/aws4_request
 5519         -
b92b1e85236a12f9d118f85fb6686c83b0e83fb3428f8d4da3cc9acb2851fcfa
        7184  +
b92b1e85236a12f9d118f85fb6686c83b0e83fb3428f8d4da3cc9acb2851fcfa
              \
 No newline at end of file
 5520   7185   
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
 5521   7186   
new file mode 100644
 5522   7187   
index 0000000..379dcb2
 5523         -
-- /dev/null
        7188  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 5524   7189   
@@ -0,0 +1,4 @@
        7190  +
{
        7191  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7192  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7193  +
}
 5525   7194   
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
 5526   7195   
similarity index 99%
 5527   7196   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 5528   7197   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5529   7198   
index 0ae73e1..2cf3f29 100644
 5530         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
        7199  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5531   7200   
@@ -1,8 +1,8 @@
 5532   7201   
POST
 5533   7202   
/
 5534   7203   
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
 5535   7204   
host:example.amazonaws.com
 5536   7205   
my-header1:value1
 5537   7206   
 5538   7207   
host;my-header1
 5539         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7208  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5540   7209   
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
 5541   7210   
new file mode 100644
 5542   7211   
index 0000000..2a08401
 5543         -
-- /dev/null
        7212  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 5544   7213   
@@ -0,0 +1 @@
        7214  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 5545   7215   
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
 5546   7216   
new file mode 100644
 5547   7217   
index 0000000..8d2343f
 5548         -
-- /dev/null
        7218  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 5549   7219   
@@ -0,0 +1,4 @@
        7220  +
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
        7221  +
Host:example.amazonaws.com
        7222  +
My-Header1:value1
        7223  +
 5550   7224   
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
 5551   7225   
similarity index 99%
 5552   7226   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 5553   7227   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5554   7228   
index 8cb96bf..2c4db7a 100644
 5555         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
        7229  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5556   7230   
@@ -1,4 +1,4 @@
 5557   7231   
AWS4-ECDSA-P256-SHA256
 5558   7232   
20150830T123600Z
 5559   7233   
20150830/service/aws4_request
 5560         -
336638ab840d4785edc7db35ab9c036bc15ffb2dc1a4e05b04f3a7cd7407593f
        7234  +
336638ab840d4785edc7db35ab9c036bc15ffb2dc1a4e05b04f3a7cd7407593f
              \
 No newline at end of file
 5561   7235   
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
 5562   7236   
similarity index 69%
 5563   7237   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 5564   7238   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5565   7239   
index 0253f19..917720e 100644
 5566         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        7240  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5567   7241   
@@ -1,4 +1,3 @@
 5568   7242   
POST / HTTP/1.1
 5569   7243   
Host:example.amazonaws.com
 5570   7244   
My-Header1:value1
 5571         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5572   7245   
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
 5573   7246   
new file mode 100644
 5574   7247   
index 0000000..0468d80
 5575         -
-- /dev/null
        7248  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 5576   7249   
@@ -0,0 +1,12 @@
        7250  +
{
        7251  +
    "credentials": {
        7252  +
        "access_key_id": "AKIDEXAMPLE",
        7253  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7254  +
    },
        7255  +
    "expiration_in_seconds": 3600,
        7256  +
    "normalize": true,
        7257  +
    "region": "us-east-1",
        7258  +
    "service": "service",
        7259  +
    "sign_body": false,
        7260  +
    "timestamp": "2015-08-30T12:36:00Z"
        7261  +
}
              \
 No newline at end of file
 5577   7262   
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
 5578   7263   
similarity index 99%
 5579   7264   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 5580   7265   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5581   7266   
index 1dc3ef8..164e65c 100644
 5582         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
        7267  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5583   7268   
@@ -1,10 +1,10 @@
 5584   7269   
POST
 5585   7270   
/
 5586   7271   
 5587   7272   
host:example.amazonaws.com
 5588   7273   
my-header1:VALUE1
 5589   7274   
x-amz-date:20150830T123600Z
 5590   7275   
x-amz-region-set:us-east-1
 5591   7276   
 5592   7277   
host;my-header1;x-amz-date;x-amz-region-set
 5593         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7278  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5594   7279   
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
 5595   7280   
new file mode 100644
 5596   7281   
index 0000000..7072b0e
 5597         -
-- /dev/null
        7282  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 5598   7283   
@@ -0,0 +1 @@
        7284  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 5599   7285   
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
 5600   7286   
new file mode 100644
 5601   7287   
index 0000000..17f5e3e
 5602         -
-- /dev/null
        7288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 5603   7289   
@@ -0,0 +1,7 @@
        7290  +
POST / HTTP/1.1
        7291  +
Host:example.amazonaws.com
        7292  +
My-Header1:VALUE1
        7293  +
X-Amz-Date:20150830T123600Z
        7294  +
X-Amz-Region-Set:us-east-1
        7295  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        7296  +
 5604   7297   
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
 5605   7298   
similarity index 99%
 5606   7299   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 5607   7300   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5608   7301   
index 59c7e45..620f54e 100644
 5609         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
        7302  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5610   7303   
@@ -1,4 +1,4 @@
 5611   7304   
AWS4-ECDSA-P256-SHA256
 5612   7305   
20150830T123600Z
 5613   7306   
20150830/service/aws4_request
 5614         -
7de5a74bc45fb5c8a90faada2ab9538e69e4a5eb7f330f62387715669cecd492
        7307  +
7de5a74bc45fb5c8a90faada2ab9538e69e4a5eb7f330f62387715669cecd492
              \
 No newline at end of file
 5615   7308   
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
 5616   7309   
new file mode 100644
 5617   7310   
index 0000000..379dcb2
 5618         -
-- /dev/null
        7311  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 5619   7312   
@@ -0,0 +1,4 @@
        7313  +
{
        7314  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7315  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7316  +
}
 5620   7317   
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
 5621   7318   
similarity index 99%
 5622   7319   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 5623   7320   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5624   7321   
index 377e6f3..23e0da3 100644
 5625         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
        7322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5626   7323   
@@ -1,8 +1,8 @@
 5627   7324   
POST
 5628   7325   
/
 5629   7326   
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
 5630   7327   
host:example.amazonaws.com
 5631   7328   
my-header1:VALUE1
 5632   7329   
 5633   7330   
host;my-header1
 5634         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7331  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5635   7332   
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
 5636   7333   
new file mode 100644
 5637   7334   
index 0000000..a18acb8
 5638         -
-- /dev/null
        7335  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 5639   7336   
@@ -0,0 +1 @@
        7337  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 5640   7338   
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
 5641   7339   
new file mode 100644
 5642   7340   
index 0000000..7cbdcfa
 5643         -
-- /dev/null
        7341  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 5644   7342   
@@ -0,0 +1,4 @@
        7343  +
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
        7344  +
Host:example.amazonaws.com
        7345  +
My-Header1:VALUE1
        7346  +
 5645   7347   
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
 5646   7348   
similarity index 99%
 5647   7349   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 5648   7350   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5649   7351   
index 84a7afd..0c90627 100644
 5650         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
        7352  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5651   7353   
@@ -1,4 +1,4 @@
 5652   7354   
AWS4-ECDSA-P256-SHA256
 5653   7355   
20150830T123600Z
 5654   7356   
20150830/service/aws4_request
 5655         -
949fb555e05d3289760ff0f0566ad73a69ed865000d9843b93a15b916dbc8b6f
        7357  +
949fb555e05d3289760ff0f0566ad73a69ed865000d9843b93a15b916dbc8b6f
              \
 No newline at end of file
 5656   7358   
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
 5657   7359   
similarity index 69%
 5658   7360   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 5659   7361   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5660   7362   
index 3f9987a..5f14c91 100644
 5661         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        7363  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5662   7364   
@@ -1,4 +1,3 @@
 5663   7365   
POST / HTTP/1.1
 5664   7366   
Host:example.amazonaws.com
 5665   7367   
My-Header1:VALUE1
 5666         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5667   7368   
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
 5668   7369   
new file mode 100644
 5669   7370   
index 0000000..8f1d5ce
 5670         -
-- /dev/null
        7371  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 5671   7372   
@@ -0,0 +1,14 @@
        7373  +
{
        7374  +
    "credentials": {
        7375  +
        "access_key_id": "AKIDEXAMPLE",
        7376  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        7377  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        7378  +
    },
        7379  +
    "expiration_in_seconds": 3600,
        7380  +
    "normalize": true,
        7381  +
    "region": "us-east-1",
        7382  +
    "service": "service",
        7383  +
    "sign_body": false,
        7384  +
    "timestamp": "2015-08-30T12:36:00Z",
        7385  +
    "omit_session_token": true
        7386  +
}
 5672   7387   
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
 5673   7388   
similarity index 99%
 5674   7389   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 5675   7390   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5676   7391   
index a6942c1..e881ac7 100644
 5677         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
        7392  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5678   7393   
@@ -1,9 +1,9 @@
 5679   7394   
POST
 5680   7395   
/
 5681   7396   
 5682   7397   
host:example.amazonaws.com
 5683   7398   
x-amz-date:20150830T123600Z
 5684   7399   
x-amz-region-set:us-east-1
 5685   7400   
 5686   7401   
host;x-amz-date;x-amz-region-set
 5687         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7402  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5688   7403   
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
 5689   7404   
new file mode 100644
 5690   7405   
index 0000000..9c5ecb9
 5691         -
-- /dev/null
        7406  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 5692   7407   
@@ -0,0 +1 @@
        7408  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 5693   7409   
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
 5694   7410   
similarity index 52%
 5695   7411   
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
 5696   7412   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5697   7413   
index 9d91775..61b6527 100644
 5698         -
-- 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
        7414  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5699   7415   
@@ -1,4 +1,7 @@
 5700   7416   
POST / HTTP/1.1
 5701   7417   
Host:example.amazonaws.com
        7418  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 5702   7419   
X-Amz-Date:20150830T123600Z
 5703         -
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
        7420  +
X-Amz-Region-Set:us-east-1
        7421  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        7422  +
 5704   7423   
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
 5705   7424   
similarity index 99%
 5706   7425   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 5707   7426   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5708   7427   
index d5650cb..f8adf13 100644
 5709         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
        7428  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5710   7429   
@@ -1,4 +1,4 @@
 5711   7430   
AWS4-ECDSA-P256-SHA256
 5712   7431   
20150830T123600Z
 5713   7432   
20150830/service/aws4_request
 5714         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7433  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5715   7434   
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
 5716   7435   
new file mode 100644
 5717   7436   
index 0000000..379dcb2
 5718         -
-- /dev/null
        7437  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 5719   7438   
@@ -0,0 +1,4 @@
        7439  +
{
        7440  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7441  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7442  +
}
 5720   7443   
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
 5721   7444   
similarity index 99%
 5722   7445   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 5723   7446   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5724   7447   
index e48ce07..5ea8e3c 100644
 5725         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
        7448  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5726   7449   
@@ -1,7 +1,7 @@
 5727   7450   
POST
 5728   7451   
/
 5729   7452   
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
 5730   7453   
host:example.amazonaws.com
 5731   7454   
 5732   7455   
host
 5733         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7456  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5734   7457   
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
 5735   7458   
new file mode 100644
 5736   7459   
index 0000000..ff8823a
 5737         -
-- /dev/null
        7460  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 5738   7461   
@@ -0,0 +1 @@
        7462  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 5739   7463   
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
 5740   7464   
new file mode 100644
 5741   7465   
index 0000000..cfac41b
 5742         -
-- /dev/null
        7466  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 5743   7467   
@@ -0,0 +1,3 @@
        7468  +
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
        7469  +
Host:example.amazonaws.com
        7470  +
 5744   7471   
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
 5745   7472   
similarity index 99%
 5746   7473   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 5747   7474   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5748   7475   
index 34e3382..711c162 100644
 5749         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
        7476  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5750   7477   
@@ -1,4 +1,4 @@
 5751   7478   
AWS4-ECDSA-P256-SHA256
 5752   7479   
20150830T123600Z
 5753   7480   
20150830/service/aws4_request
 5754         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7481  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5755   7482   
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
 5756   7483   
similarity index 61%
 5757   7484   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 5758   7485   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 5759   7486   
index 3dc4179..3f0a82a 100644
 5760         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        7487  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 5761   7488   
@@ -1,3 +1,2 @@
 5762   7489   
POST / HTTP/1.1
 5763   7490   
Host:example.amazonaws.com
 5764         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5765   7491   
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
 5766   7492   
new file mode 100644
 5767   7493   
index 0000000..5187392
 5768         -
-- /dev/null
        7494  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 5769   7495   
@@ -0,0 +1,14 @@
        7496  +
{
        7497  +
    "credentials": {
        7498  +
        "access_key_id": "AKIDEXAMPLE",
        7499  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        7500  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        7501  +
    },
        7502  +
    "expiration_in_seconds": 3600,
        7503  +
    "normalize": true,
        7504  +
    "region": "us-east-1",
        7505  +
    "service": "service",
        7506  +
    "sign_body": false,
        7507  +
    "timestamp": "2015-08-30T12:36:00Z",
        7508  +
    "omit_session_token": false
        7509  +
}
 5770   7510   
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
 5771   7511   
similarity index 99%
 5772   7512   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 5773   7513   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 5774   7514   
index dd408c8..e95924e 100644
 5775         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
        7515  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 5776   7516   
@@ -1,10 +1,10 @@
 5777   7517   
POST
 5778   7518   
/
 5779   7519   
 5780   7520   
host:example.amazonaws.com
 5781   7521   
x-amz-date:20150830T123600Z
 5782   7522   
x-amz-region-set:us-east-1
 5783   7523   
x-amz-security-token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 5784   7524   
 5785   7525   
host;x-amz-date;x-amz-region-set;x-amz-security-token
 5786         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7526  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5787   7527   
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
 5788   7528   
new file mode 100644
 5789   7529   
index 0000000..1573f07
 5790         -
-- /dev/null
        7530  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 5791   7531   
@@ -0,0 +1 @@
        7532  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 5792   7533   
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
 5793   7534   
new file mode 100644
 5794   7535   
index 0000000..6ef9a08
 5795         -
-- /dev/null
        7536  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 5796   7537   
@@ -0,0 +1,7 @@
        7538  +
POST / HTTP/1.1
        7539  +
Host:example.amazonaws.com
        7540  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        7541  +
X-Amz-Date:20150830T123600Z
        7542  +
X-Amz-Region-Set:us-east-1
        7543  +
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
        7544  +
 5797   7545   
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
 5798   7546   
similarity index 99%
 5799   7547   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 5800   7548   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 5801   7549   
index f352b54..3c3235f 100644
 5802         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
        7550  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 5803   7551   
@@ -1,4 +1,4 @@
 5804   7552   
AWS4-ECDSA-P256-SHA256
 5805   7553   
20150830T123600Z
 5806   7554   
20150830/service/aws4_request
 5807         -
964c15d46a67b327b877c02d680c81cb75df04e85144142e190da565ff0d029f
        7555  +
964c15d46a67b327b877c02d680c81cb75df04e85144142e190da565ff0d029f
              \
 No newline at end of file
 5808   7556   
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
 5809   7557   
new file mode 100644
 5810   7558   
index 0000000..379dcb2
 5811         -
-- /dev/null
        7559  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 5812   7560   
@@ -0,0 +1,4 @@
        7561  +
{
        7562  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7563  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7564  +
}
 5813   7565   
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
 5814   7566   
similarity index 99%
 5815   7567   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 5816   7568   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 5817   7569   
index 832cdc0..63b7de5 100644
 5818         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
        7570  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 5819   7571   
@@ -1,7 +1,7 @@
 5820   7572   
POST
 5821   7573   
/
 5822   7574   
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
 5823   7575   
host:example.amazonaws.com
 5824   7576   
 5825   7577   
host
 5826         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7578  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5827   7579   
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
 5828   7580   
new file mode 100644
 5829   7581   
index 0000000..713f57c
 5830         -
-- /dev/null
        7582  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 5831   7583   
@@ -0,0 +1 @@
        7584  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 5832   7585   
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
 5833   7586   
new file mode 100644
 5834   7587   
index 0000000..32c3bb3
 5835         -
-- /dev/null
        7588  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 5836   7589   
@@ -0,0 +1,3 @@
        7590  +
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
        7591  +
Host:example.amazonaws.com
        7592  +
 5837   7593   
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
 5838   7594   
similarity index 99%
 5839   7595   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 5840   7596   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 5841   7597   
index d7f3668..b46cd8c 100644
 5842         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
        7598  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 5843   7599   
@@ -1,4 +1,4 @@
 5844   7600   
AWS4-ECDSA-P256-SHA256
 5845   7601   
20150830T123600Z
 5846   7602   
20150830/service/aws4_request
 5847         -
c3a8ba26c461df46b5010b756fb8644fd922a2aea95d77b56295e5e4d3bb155f
        7603  +
c3a8ba26c461df46b5010b756fb8644fd922a2aea95d77b56295e5e4d3bb155f
              \
 No newline at end of file
 5848   7604   
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
 5849   7605   
similarity index 60%
 5850   7606   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 5851   7607   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5852   7608   
index 8b5efc8..3f0a82a 100644
 5853         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        7609  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5854   7610   
@@ -1,3 +1,2 @@
 5855   7611   
POST / HTTP/1.1
 5856   7612   
Host:example.amazonaws.com
 5857         -
X-Amz-Date:20150830T123600Z
 5858   7613   
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
 5859   7614   
new file mode 100644
 5860   7615   
index 0000000..0468d80
 5861         -
-- /dev/null
        7616  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 5862   7617   
@@ -0,0 +1,12 @@
        7618  +
{
        7619  +
    "credentials": {
        7620  +
        "access_key_id": "AKIDEXAMPLE",
        7621  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7622  +
    },
        7623  +
    "expiration_in_seconds": 3600,
        7624  +
    "normalize": true,
        7625  +
    "region": "us-east-1",
        7626  +
    "service": "service",
        7627  +
    "sign_body": false,
        7628  +
    "timestamp": "2015-08-30T12:36:00Z"
        7629  +
}
              \
 No newline at end of file
 5863   7630   
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
 5864   7631   
similarity index 99%
 5865   7632   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 5866   7633   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 5867   7634   
index 02af60f..34b8c11 100644
 5868         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
        7635  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 5869   7636   
@@ -1,9 +1,9 @@
 5870   7637   
POST
 5871   7638   
/
 5872   7639   
Param1=value1
 5873   7640   
host:example.amazonaws.com
 5874   7641   
x-amz-date:20150830T123600Z
 5875   7642   
x-amz-region-set:us-east-1
 5876   7643   
 5877   7644   
host;x-amz-date;x-amz-region-set
 5878         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7645  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5879   7646   
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
 5880   7647   
new file mode 100644
 5881   7648   
index 0000000..aac6427
 5882         -
-- /dev/null
        7649  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 5883   7650   
@@ -0,0 +1 @@
        7651  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 5884   7652   
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
 5885   7653   
new file mode 100644
 5886   7654   
index 0000000..a611436
 5887         -
-- /dev/null
        7655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 5888   7656   
@@ -0,0 +1,6 @@
        7657  +
POST /?Param1=value1 HTTP/1.1
        7658  +
Host:example.amazonaws.com
        7659  +
X-Amz-Date:20150830T123600Z
        7660  +
X-Amz-Region-Set:us-east-1
        7661  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        7662  +
 5889   7663   
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
 5890   7664   
similarity index 99%
 5891   7665   
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
 5892   7666   
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
 5893   7667   
index 4256b4f..ad88dff 100644
 5894         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-string-to-sign.txt
        7668  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-string-to-sign.txt
 5895   7669   
@@ -1,4 +1,4 @@
 5896   7670   
AWS4-ECDSA-P256-SHA256
 5897   7671   
20150830T123600Z
 5898   7672   
20150830/service/aws4_request
 5899         -
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
        7673  +
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
              \
 No newline at end of file
 5900   7674   
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
 5901   7675   
new file mode 100644
 5902   7676   
index 0000000..379dcb2
 5903         -
-- /dev/null
        7677  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 5904   7678   
@@ -0,0 +1,4 @@
        7679  +
{
        7680  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7681  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7682  +
}
 5905   7683   
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
 5906   7684   
similarity index 99%
 5907   7685   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 5908   7686   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 5909   7687   
index fa84bbd..76d5ad6 100644
 5910         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
        7688  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 5911   7689   
@@ -1,7 +1,7 @@
 5912   7690   
POST
 5913   7691   
/
 5914   7692   
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
 5915   7693   
host:example.amazonaws.com
 5916   7694   
 5917   7695   
host
 5918         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7696  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5919   7697   
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
 5920   7698   
new file mode 100644
 5921   7699   
index 0000000..4cb1c94
 5922         -
-- /dev/null
        7700  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 5923   7701   
@@ -0,0 +1 @@
        7702  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 5924   7703   
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
 5925   7704   
new file mode 100644
 5926   7705   
index 0000000..bd22b97
 5927         -
-- /dev/null
        7706  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 5928   7707   
@@ -0,0 +1,3 @@
        7708  +
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
        7709  +
Host:example.amazonaws.com
        7710  +
 5929   7711   
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
 5930   7712   
similarity index 99%
 5931   7713   
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
 5932   7714   
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
 5933   7715   
index de270ef..8c9d319 100644
 5934         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-string-to-sign.txt
        7716  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-string-to-sign.txt
 5935   7717   
@@ -1,4 +1,4 @@
 5936   7718   
AWS4-ECDSA-P256-SHA256
 5937   7719   
20150830T123600Z
 5938   7720   
20150830/service/aws4_request
 5939         -
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
        7721  +
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
              \
 No newline at end of file
 5940   7722   
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
 5941   7723   
similarity index 67%
 5942   7724   
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
 5943   7725   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 5944   7726   
index 9157bc7..c9d6e5d 100644
 5945         -
-- 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
        7727  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 5946   7728   
@@ -1,3 +1,2 @@
 5947   7729   
POST /?Param1=value1 HTTP/1.1
 5948   7730   
Host:example.amazonaws.com
 5949         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5950   7731   
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
 5951   7732   
new file mode 100644
 5952   7733   
index 0000000..0468d80
 5953         -
-- /dev/null
        7734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 5954   7735   
@@ -0,0 +1,12 @@
        7736  +
{
        7737  +
    "credentials": {
        7738  +
        "access_key_id": "AKIDEXAMPLE",
        7739  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7740  +
    },
        7741  +
    "expiration_in_seconds": 3600,
        7742  +
    "normalize": true,
        7743  +
    "region": "us-east-1",
        7744  +
    "service": "service",
        7745  +
    "sign_body": false,
        7746  +
    "timestamp": "2015-08-30T12:36:00Z"
        7747  +
}
              \
 No newline at end of file
 5955   7748   
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
 5956   7749   
similarity index 99%
 5957   7750   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 5958   7751   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 5959   7752   
index 02af60f..34b8c11 100644
 5960         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
        7753  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 5961   7754   
@@ -1,9 +1,9 @@
 5962   7755   
POST
 5963   7756   
/
 5964   7757   
Param1=value1
 5965   7758   
host:example.amazonaws.com
 5966   7759   
x-amz-date:20150830T123600Z
 5967   7760   
x-amz-region-set:us-east-1
 5968   7761   
 5969   7762   
host;x-amz-date;x-amz-region-set
 5970         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7763  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5971   7764   
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
 5972   7765   
new file mode 100644
 5973   7766   
index 0000000..34f75c8
 5974         -
-- /dev/null
        7767  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 5975   7768   
@@ -0,0 +1 @@
        7769  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 5976   7770   
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
 5977   7771   
new file mode 100644
 5978   7772   
index 0000000..c731408
 5979         -
-- /dev/null
        7773  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 5980   7774   
@@ -0,0 +1,6 @@
        7775  +
POST /?Param1=value1 HTTP/1.1
        7776  +
Host:example.amazonaws.com
        7777  +
X-Amz-Date:20150830T123600Z
        7778  +
X-Amz-Region-Set:us-east-1
        7779  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        7780  +
 5981   7781   
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
 5982   7782   
similarity index 99%
 5983   7783   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 5984   7784   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 5985   7785   
index 4256b4f..ad88dff 100644
 5986         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
        7786  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 5987   7787   
@@ -1,4 +1,4 @@
 5988   7788   
AWS4-ECDSA-P256-SHA256
 5989   7789   
20150830T123600Z
 5990   7790   
20150830/service/aws4_request
 5991         -
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
        7791  +
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
              \
 No newline at end of file
 5992   7792   
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
 5993   7793   
new file mode 100644
 5994   7794   
index 0000000..379dcb2
 5995         -
-- /dev/null
        7795  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 5996   7796   
@@ -0,0 +1,4 @@
        7797  +
{
        7798  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7799  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7800  +
}
 5997   7801   
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
 5998   7802   
similarity index 99%
 5999   7803   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 6000   7804   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 6001   7805   
index fa84bbd..76d5ad6 100644
 6002         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
        7806  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 6003   7807   
@@ -1,7 +1,7 @@
 6004   7808   
POST
 6005   7809   
/
 6006   7810   
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
 6007   7811   
host:example.amazonaws.com
 6008   7812   
 6009   7813   
host
 6010         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7814  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6011   7815   
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
 6012   7816   
new file mode 100644
 6013   7817   
index 0000000..ae000d6
 6014         -
-- /dev/null
        7818  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 6015   7819   
@@ -0,0 +1 @@
        7820  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 6016   7821   
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
 6017   7822   
new file mode 100644
 6018   7823   
index 0000000..a868f7d
 6019         -
-- /dev/null
        7824  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 6020   7825   
@@ -0,0 +1,3 @@
        7826  +
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
        7827  +
Host:example.amazonaws.com
        7828  +
 6021   7829   
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
 6022   7830   
similarity index 99%
 6023   7831   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 6024   7832   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 6025   7833   
index de270ef..8c9d319 100644
 6026         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
        7834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 6027   7835   
@@ -1,4 +1,4 @@
 6028   7836   
AWS4-ECDSA-P256-SHA256
 6029   7837   
20150830T123600Z
 6030   7838   
20150830/service/aws4_request
 6031         -
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
        7839  +
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
              \
 No newline at end of file
 6032   7840   
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
 6033   7841   
similarity index 67%
 6034   7842   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 6035   7843   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 6036   7844   
index 9157bc7..c9d6e5d 100644
 6037         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        7845  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 6038   7846   
@@ -1,3 +1,2 @@
 6039   7847   
POST /?Param1=value1 HTTP/1.1
 6040   7848   
Host:example.amazonaws.com
 6041         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 6042   7849   
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
 6043   7850   
new file mode 100644
 6044   7851   
index 0000000..0468d80
 6045         -
-- /dev/null
        7852  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 6046   7853   
@@ -0,0 +1,12 @@
        7854  +
{
        7855  +
    "credentials": {
        7856  +
        "access_key_id": "AKIDEXAMPLE",
        7857  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7858  +
    },
        7859  +
    "expiration_in_seconds": 3600,
        7860  +
    "normalize": true,
        7861  +
    "region": "us-east-1",
        7862  +
    "service": "service",
        7863  +
    "sign_body": false,
        7864  +
    "timestamp": "2015-08-30T12:36:00Z"
        7865  +
}
              \
 No newline at end of file
 6047   7866   
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
 6048   7867   
similarity index 99%
 6049   7868   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 6050   7869   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 6051   7870   
index a6942c1..e881ac7 100644
 6052         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
        7871  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 6053   7872   
@@ -1,9 +1,9 @@
 6054   7873   
POST
 6055   7874   
/
 6056   7875   
 6057   7876   
host:example.amazonaws.com
 6058   7877   
x-amz-date:20150830T123600Z
 6059   7878   
x-amz-region-set:us-east-1
 6060   7879   
 6061   7880   
host;x-amz-date;x-amz-region-set
 6062         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7881  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6063   7882   
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
 6064   7883   
new file mode 100644
 6065   7884   
index 0000000..7c5e47b
 6066         -
-- /dev/null
        7885  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 6067   7886   
@@ -0,0 +1 @@
        7887  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 6068   7888   
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
 6069   7889   
new file mode 100644
 6070   7890   
index 0000000..c0e50a0
 6071         -
-- /dev/null
        7891  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 6072   7892   
@@ -0,0 +1,6 @@
        7893  +
POST / HTTP/1.1
        7894  +
Host:example.amazonaws.com
        7895  +
X-Amz-Date:20150830T123600Z
        7896  +
X-Amz-Region-Set:us-east-1
        7897  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        7898  +
 6073   7899   
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
 6074   7900   
similarity index 99%
 6075   7901   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 6076   7902   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 6077   7903   
index d5650cb..f8adf13 100644
 6078         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
        7904  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 6079   7905   
@@ -1,4 +1,4 @@
 6080   7906   
AWS4-ECDSA-P256-SHA256
 6081   7907   
20150830T123600Z
 6082   7908   
20150830/service/aws4_request
 6083         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7909  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 6084   7910   
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
 6085   7911   
new file mode 100644
 6086   7912   
index 0000000..379dcb2
 6087         -
-- /dev/null
        7913  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 6088   7914   
@@ -0,0 +1,4 @@
        7915  +
{
        7916  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7917  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7918  +
}
 6089   7919   
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
 6090   7920   
similarity index 99%
 6091   7921   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 6092   7922   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 6093   7923   
index e48ce07..5ea8e3c 100644
 6094         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
        7924  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 6095   7925   
@@ -1,7 +1,7 @@
 6096   7926   
POST
 6097   7927   
/
 6098   7928   
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
 6099   7929   
host:example.amazonaws.com
 6100   7930   
 6101   7931   
host
 6102         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7932  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6103   7933   
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
 6104   7934   
new file mode 100644
 6105   7935   
index 0000000..ea8e3b4
 6106         -
-- /dev/null
        7936  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 6107   7937   
@@ -0,0 +1 @@
        7938  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 6108   7939   
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
 6109   7940   
new file mode 100644
 6110   7941   
index 0000000..616973f
 6111         -
-- /dev/null
        7942  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 6112   7943   
@@ -0,0 +1,3 @@
        7944  +
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
        7945  +
Host:example.amazonaws.com
        7946  +
 6113   7947   
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
 6114   7948   
similarity index 99%
 6115   7949   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 6116   7950   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 6117   7951   
index 34e3382..711c162 100644
 6118         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
        7952  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 6119   7953   
@@ -1,4 +1,4 @@
 6120   7954   
AWS4-ECDSA-P256-SHA256
 6121   7955   
20150830T123600Z
 6122   7956   
20150830/service/aws4_request
 6123         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7957  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 6124   7958   
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
 6125   7959   
new file mode 100644
 6126   7960   
index 0000000..3f0a82a
 6127         -
-- /dev/null
        7961  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 6128   7962   
@@ -0,0 +1,2 @@
        7963  +
POST / HTTP/1.1
        7964  +
Host:example.amazonaws.com
 6129   7965   
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
 6130   7966   
new file mode 100644
 6131   7967   
index 0000000..0db1df1
 6132         -
-- /dev/null
        7968  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 6133   7969   
@@ -0,0 +1,12 @@
        7970  +
{
        7971  +
    "credentials": {
        7972  +
        "access_key_id": "AKIDEXAMPLE",
        7973  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7974  +
    },
        7975  +
    "expiration_in_seconds": 3600,
        7976  +
    "normalize": true,
        7977  +
    "region": "us-east-1",
        7978  +
    "service": "service",
        7979  +
    "sign_body": true,
        7980  +
    "timestamp": "2015-08-30T12:36:00Z"
        7981  +
}
              \
 No newline at end of file
 6134   7982   
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
 6135   7983   
similarity index 62%
 6136   7984   
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
 6137   7985   
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
 6138   7986   
index 05ab787..62639b2 100644
 6139         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        7987  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 6140   7988   
@@ -1,12 +1,12 @@
 6141   7989   
POST
 6142   7990   
/
 6143   7991   
 6144   7992   
content-length:13
 6145   7993   
content-type:application/x-www-form-urlencoded; charset=utf-8
 6146   7994   
host:example.amazonaws.com
 6147         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7995  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 6148   7996   
x-amz-date:20150830T123600Z
 6149   7997   
x-amz-region-set:us-east-1
 6150   7998   
 6151   7999   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 6152         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8000  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6153   8001   
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
 6154   8002   
new file mode 100644
 6155   8003   
index 0000000..006ec2e
 6156         -
-- /dev/null
        8004  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 6157   8005   
@@ -0,0 +1 @@
        8006  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 6158   8007   
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
 6159   8008   
new file mode 100644
 6160   8009   
index 0000000..87a11f2
 6161         -
-- /dev/null
        8010  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 6162   8011   
@@ -0,0 +1,10 @@
        8012  +
POST / HTTP/1.1
        8013  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        8014  +
Host:example.amazonaws.com
        8015  +
Content-Length:13
        8016  +
X-Amz-Date:20150830T123600Z
        8017  +
X-Amz-Region-Set:us-east-1
        8018  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8019  +
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
        8020  +
        8021  +
Param1=value1
              \
 No newline at end of file
 6163   8022   
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
 6164   8023   
new file mode 100644
 6165   8024   
index 0000000..c047afb
 6166         -
-- /dev/null
        8025  +
++ 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
 6167   8026   
@@ -0,0 +1,4 @@
        8027  +
AWS4-ECDSA-P256-SHA256
        8028  +
20150830T123600Z
        8029  +
20150830/service/aws4_request
        8030  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 6168   8031   
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
 6169   8032   
new file mode 100644
 6170   8033   
index 0000000..379dcb2
 6171         -
-- /dev/null
        8034  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 6172   8035   
@@ -0,0 +1,4 @@
        8036  +
{
        8037  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        8038  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        8039  +
}
 6173   8040   
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
 6174   8041   
similarity index 85%
 6175   8042   
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
 6176   8043   
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
 6177   8044   
index fcc454f..6933a8c 100644
 6178         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        8045  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 6179   8046   
@@ -1,9 +1,9 @@
 6180   8047   
POST
 6181   8048   
/
 6182   8049   
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
 6183   8050   
content-length:13
 6184   8051   
content-type:application/x-www-form-urlencoded; charset=utf-8
 6185   8052   
host:example.amazonaws.com
 6186   8053   
 6187   8054   
content-length;content-type;host
 6188         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8055  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6189   8056   
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
 6190   8057   
new file mode 100644
 6191   8058   
index 0000000..34a2e12
 6192         -
-- /dev/null
        8059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 6193   8060   
@@ -0,0 +1 @@
        8061  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 6194   8062   
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
 6195   8063   
new file mode 100644
 6196   8064   
index 0000000..197b99e
 6197         -
-- /dev/null
        8065  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 6198   8066   
@@ -0,0 +1,6 @@
        8067  +
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
        8068  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        8069  +
Host:example.amazonaws.com
        8070  +
Content-Length:13
        8071  +
        8072  +
Param1=value1
              \
 No newline at end of file
 6199   8073   
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
 6200   8074   
new file mode 100644
 6201   8075   
index 0000000..9d2bc74
 6202         -
-- /dev/null
        8076  +
++ 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
 6203   8077   
@@ -0,0 +1,4 @@
        8078  +
AWS4-ECDSA-P256-SHA256
        8079  +
20150830T123600Z
        8080  +
20150830/service/aws4_request
        8081  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 6204   8082   
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
 6205   8083   
similarity index 80%
 6206   8084   
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
 6207   8085   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6208   8086   
index 36015f1..8289eaa 100644
 6209         -
-- 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
        8087  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6210   8088   
@@ -1,6 +1,6 @@
 6211   8089   
POST / HTTP/1.1
 6212   8090   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 6213   8091   
Host:example.amazonaws.com
 6214         -
X-Amz-Date:20150830T123600Z
        8092  +
Content-Length:13
 6215   8093   
 6216   8094   
Param1=value1
              \
 No newline at end of file
 6217   8095   
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
 6218   8096   
new file mode 100644
 6219   8097   
index 0000000..0db1df1
 6220         -
-- /dev/null
        8098  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 6221   8099   
@@ -0,0 +1,12 @@
        8100  +
{
        8101  +
    "credentials": {
        8102  +
        "access_key_id": "AKIDEXAMPLE",
        8103  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        8104  +
    },
        8105  +
    "expiration_in_seconds": 3600,
        8106  +
    "normalize": true,
        8107  +
    "region": "us-east-1",
        8108  +
    "service": "service",
        8109  +
    "sign_body": true,
        8110  +
    "timestamp": "2015-08-30T12:36:00Z"
        8111  +
}
              \
 No newline at end of file
 6222   8112   
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
 6223   8113   
similarity index 61%
 6224   8114   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 6225   8115   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6226   8116   
index 69009dc..797632b 100644
 6227         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        8117  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6228   8118   
@@ -1,12 +1,12 @@
 6229   8119   
POST
 6230   8120   
/
 6231   8121   
 6232   8122   
content-length:13
 6233   8123   
content-type:application/x-www-form-urlencoded
 6234   8124   
host:example.amazonaws.com
 6235         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8125  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 6236   8126   
x-amz-date:20150830T123600Z
 6237   8127   
x-amz-region-set:us-east-1
 6238   8128   
 6239   8129   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 6240         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8130  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6241   8131   
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
 6242   8132   
new file mode 100644
 6243   8133   
index 0000000..f5a641c
 6244         -
-- /dev/null
        8134  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 6245   8135   
@@ -0,0 +1 @@
        8136  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 6246   8137   
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
 6247   8138   
new file mode 100644
 6248   8139   
index 0000000..7bd94a7
 6249         -
-- /dev/null
        8140  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 6250   8141   
@@ -0,0 +1,10 @@
        8142  +
POST / HTTP/1.1
        8143  +
Content-Type:application/x-www-form-urlencoded
        8144  +
Host:example.amazonaws.com
        8145  +
Content-Length:13
        8146  +
X-Amz-Date:20150830T123600Z
        8147  +
X-Amz-Region-Set:us-east-1
        8148  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8149  +
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
        8150  +
        8151  +
Param1=value1
              \
 No newline at end of file
 6251   8152   
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
 6252   8153   
new file mode 100644
 6253   8154   
index 0000000..8d25ba9
 6254         -
-- /dev/null
        8155  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 6255   8156   
@@ -0,0 +1,4 @@
        8157  +
AWS4-ECDSA-P256-SHA256
        8158  +
20150830T123600Z
        8159  +
20150830/service/aws4_request
        8160  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 6256   8161   
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
 6257   8162   
new file mode 100644
 6258   8163   
index 0000000..379dcb2
 6259         -
-- /dev/null
        8164  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 6260   8165   
@@ -0,0 +1,4 @@
        8166  +
{
        8167  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        8168  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        8169  +
}
 6261   8170   
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
 6262   8171   
similarity index 99%
 6263   8172   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 6264   8173   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6265   8174   
index 9ed065b..563ff58 100644
 6266         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
        8175  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6267   8176   
@@ -1,9 +1,9 @@
 6268   8177   
POST
 6269   8178   
/
 6270   8179   
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
 6271   8180   
content-length:13
 6272   8181   
content-type:application/x-www-form-urlencoded
 6273   8182   
host:example.amazonaws.com
 6274   8183   
 6275   8184   
content-length;content-type;host
 6276         -
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8185  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6277   8186   
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
 6278   8187   
new file mode 100644
 6279   8188   
index 0000000..0c77daf
 6280         -
-- /dev/null
        8189  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 6281   8190   
@@ -0,0 +1 @@
        8191  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 6282   8192   
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
 6283   8193   
new file mode 100644
 6284   8194   
index 0000000..71d6de9
 6285         -
-- /dev/null
        8195  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 6286   8196   
@@ -0,0 +1,6 @@
        8197  +
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
        8198  +
Content-Type:application/x-www-form-urlencoded
        8199  +
Host:example.amazonaws.com
        8200  +
Content-Length:13
        8201  +
        8202  +
Param1=value1
              \
 No newline at end of file
 6287   8203   
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
 6288   8204   
similarity index 99%
 6289   8205   
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
 6290   8206   
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
 6291   8207   
index bef3143..cc7a224 100644
 6292         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-string-to-sign.txt
        8208  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-string-to-sign.txt
 6293   8209   
@@ -1,4 +1,4 @@
 6294   8210   
AWS4-ECDSA-P256-SHA256
 6295   8211   
20150830T123600Z
 6296   8212   
20150830/service/aws4_request
 6297         -
4e4122984d30d13170a298ece62cc30f8da12578fb3b482616b1f11036b13934
        8213  +
4e4122984d30d13170a298ece62cc30f8da12578fb3b482616b1f11036b13934
              \
 No newline at end of file
 6298   8214   
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
 6299   8215   
new file mode 100644
 6300   8216   
index 0000000..760b2d3
 6301         -
-- /dev/null
        8217  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 6302   8218   
@@ -0,0 +1,6 @@
        8219  +
POST / HTTP/1.1
        8220  +
Content-Type:application/x-www-form-urlencoded
        8221  +
Host:example.amazonaws.com
        8222  +
Content-Length:13
        8223  +
        8224  +
Param1=value1
              \
 No newline at end of file
 6303   8225   
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
 6304   8226   
index 9bd636f..b53f33f 100644
 6305         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        8227  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 6306   8228   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 6307   8229   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 6308   8230   
        }
 6309   8231   
 6310   8232   
        if let SignatureValues::QueryParams(values) = values {
 6311   8233   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 6312   8234   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 6313   8235   
 6314   8236   
            #[cfg(feature = "sigv4a")]
 6315   8237   
            if let Some(regions) = values.region_set {
 6316   8238   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 6317   8239   
            }
 6318   8240   
 6319   8241   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 6320   8242   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 6321   8243   
            add_param(
 6322   8244   
                &mut params,
 6323   8245   
                param::X_AMZ_SIGNED_HEADERS,
 6324   8246   
                values.signed_headers.as_str(),
 6325   8247   
            );
 6326   8248   
 6327   8249   
            if let Some(security_token) = values.security_token {
 6328   8250   
                add_param(
 6329   8251   
                    &mut params,
 6330   8252   
                    settings
 6331   8253   
                        .session_token_name_override
 6332   8254   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 6333   8255   
                    security_token,
 6334   8256   
                );
 6335   8257   
            }
 6336   8258   
        }
 6337         -
        // Sort by param name, and then by param value
        8259  +
        8260  +
        // Sort on the _encoded_ key/value pairs
        8261  +
        let mut params: Vec<(String, String)> = params
        8262  +
            .into_iter()
        8263  +
            .map(|x| {
        8264  +
                use aws_smithy_http::query::fmt_string;
        8265  +
                let enc_k = fmt_string(&x.0);
        8266  +
                let enc_v = fmt_string(&x.1);
        8267  +
                (enc_k, enc_v)
        8268  +
            })
        8269  +
            .collect();
        8270  +
 6338   8271   
        params.sort();
 6339   8272   
 6340   8273   
        let mut query = QueryWriter::new(uri);
 6341   8274   
        query.clear_params();
 6342   8275   
        for (key, value) in params {
 6343         -
            query.insert(&key, &value);
        8276  +
            query.insert_encoded(&key, &value);
 6344   8277   
        }
 6345   8278   
 6346   8279   
        let query = query.build_query();
 6347   8280   
        if query.is_empty() {
 6348   8281   
            None
 6349   8282   
        } else {
 6350   8283   
            Some(query)
 6351   8284   
        }
 6352   8285   
    }
 6353   8286   
 6354   8287   
    fn insert_host_header(
 6355   8288   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 6356   8289   
        uri: &Uri,
 6357   8290   
    ) -> HeaderValue {
 6358   8291   
        match canonical_headers.get(&HOST) {
 6359   8292   
            Some(header) => header.clone(),
 6360   8293   
            None => {
 6361   8294   
                let port = uri.port();
 6362   8295   
                let scheme = uri.scheme();
 6363   8296   
                let authority = uri
 6364   8297   
                    .authority()
 6365   8298   
                    .expect("request uri authority must be set for signing")
 6366   8299   
                    .as_str();
 6367   8300   
                let host = uri
 6368   8301   
                    .host()
 6369   8302   
                    .expect("request uri host must be set for signing");
 6370   8303   
 6371   8304   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 6372   8305   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 6373   8306   
                // sent in the Host header (and Hyper strips default ports if they are present)
 6374   8307   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 6375   8308   
            service,
 6376   8309   
            hashed_creq,
 6377   8310   
            signature_version: SignatureVersion::V4a,
 6378   8311   
        }
 6379   8312   
    }
 6380   8313   
}
 6381   8314   
 6382   8315   
impl fmt::Display for StringToSign<'_> {
 6383   8316   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 6384   8317   
        write!(
 6385   8318   
            f,
 6386   8319   
            "{}\n{}\n{}\n{}",
 6387   8320   
            self.algorithm,
 6388   8321   
            format_date_time(self.time),
 6389   8322   
            match self.signature_version {
 6390   8323   
                SignatureVersion::V4 => self.scope.to_string(),
 6391   8324   
                SignatureVersion::V4a => self.scope.v4a_display(),
 6392   8325   
            },
 6393   8326   
            self.hashed_creq
 6394   8327   
        )
 6395   8328   
    }
 6396   8329   
}
 6397   8330   
 6398   8331   
#[cfg(test)]
 6399   8332   
mod tests {
 6400   8333   
    use crate::date_time::test_parsers::parse_date_time;
 6401   8334   
    use crate::http_request::canonical_request::{
 6402   8335   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 6403   8336   
    };
 6404   8337   
    use crate::http_request::test;
        8338  +
    use crate::http_request::test::SigningSuiteTest;
 6405   8339   
    use crate::http_request::{
 6406   8340   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 6407   8341   
        SigningParams, SigningSettings,
 6408   8342   
    };
 6409   8343   
    use crate::sign::v4;
 6410   8344   
    use crate::sign::v4::sha256_hex_string;
 6411   8345   
    use aws_credential_types::Credentials;
 6412   8346   
    use aws_smithy_http::query_writer::QueryWriter;
 6413   8347   
    use aws_smithy_runtime_api::client::identity::Identity;
 6414   8348   
    use http0::{HeaderValue, Uri};
 6415   8349   
    use pretty_assertions::assert_eq;
 6416   8350   
    use proptest::{prelude::*, proptest};
 6417   8351   
    use std::borrow::Cow;
 6418   8352   
    use std::time::Duration;
 6419   8353   
 6420   8354   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 6421   8355   
        v4::signing_params::Builder::default()
 6422   8356   
            .identity(identity)
 6423   8357   
            .region("test-region")
 6424   8358   
            .name("testservicename")
 6425   8359   
            .time(parse_date_time("20210511T154045Z").unwrap())
 6426   8360   
            .settings(settings)
 6427   8361   
            .build()
 6428   8362   
            .unwrap()
 6429   8363   
            .into()
 6430   8364   
    }
 6431   8365   
 6432   8366   
    #[test]
 6433   8367   
    fn test_repeated_header() {
 6434         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8368  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8369  +
        let mut req = test.request();
 6435   8370   
        req.headers.push((
 6436   8371   
            "x-amz-object-attributes".to_string(),
 6437   8372   
            "Checksum".to_string(),
 6438   8373   
        ));
 6439   8374   
        req.headers.push((
 6440   8375   
            "x-amz-object-attributes".to_string(),
 6441   8376   
            "ObjectSize".to_string(),
 6442   8377   
        ));
 6443   8378   
        let req = SignableRequest::from(&req);
 6444   8379   
        let settings = SigningSettings {
 6445   8380   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6446   8381   
            session_token_mode: SessionTokenMode::Exclude,
 6447   8382   
            ..Default::default()
 6448   8383   
        };
 6449   8384   
        let identity = Credentials::for_tests().into();
 6450   8385   
        let signing_params = signing_params(&identity, settings);
 6451   8386   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6452   8387   
 6453   8388   
        assert_eq!(
 6454   8389   
            creq.values.signed_headers().to_string(),
 6455   8390   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 6456   8391   
        );
 6457   8392   
        assert_eq!(
 6458   8393   
            creq.header_values_for("x-amz-object-attributes"),
 6459   8394   
            "Checksum,ObjectSize",
 6460   8395   
        );
 6461   8396   
    }
 6462   8397   
 6463   8398   
    #[test]
 6464   8399   
    fn test_host_header_properly_handles_ports() {
 6465   8400   
        fn host_header_test_setup(endpoint: String) -> String {
 6466         -
            let mut req = test::v4::test_request("get-vanilla");
        8401  +
            let test = SigningSuiteTest::v4("get-vanilla");
        8402  +
            let mut req = test.request();
 6467   8403   
            req.uri = endpoint;
 6468   8404   
            let req = SignableRequest::from(&req);
 6469   8405   
            let settings = SigningSettings {
 6470   8406   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6471   8407   
                session_token_mode: SessionTokenMode::Exclude,
 6472   8408   
                ..Default::default()
 6473   8409   
            };
 6474   8410   
            let identity = Credentials::for_tests().into();
 6475   8411   
            let signing_params = signing_params(&identity, settings);
 6476   8412   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6477   8413   
            creq.header_values_for("host")
 6478   8414   
        }
 6479   8415   
 6480   8416   
        // HTTP request with 80 port should not be signed with that port
 6481   8417   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 6482   8418   
        assert_eq!(http_80_host_header, "localhost",);
 6483   8419   
 6484   8420   
        // HTTP request with non-80 port should be signed with that port
 6485   8421   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 6486   8422   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 6487   8423   
 6488   8424   
        // HTTPS request with 443 port should not be signed with that port
 6489   8425   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 6490   8426   
        assert_eq!(https_443_host_header, "localhost",);
 6491   8427   
 6492   8428   
        // HTTPS request with non-443 port should be signed with that port
 6493   8429   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 6494   8430   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 6495   8431   
    }
 6496   8432   
 6497   8433   
    #[test]
 6498   8434   
    fn test_set_xamz_sha_256() {
 6499         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        8435  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8436  +
        let req = test.request();
 6500   8437   
        let req = SignableRequest::from(&req);
 6501   8438   
        let settings = SigningSettings {
 6502   8439   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6503   8440   
            session_token_mode: SessionTokenMode::Exclude,
 6504   8441   
            ..Default::default()
 6505   8442   
        };
 6506   8443   
        let identity = Credentials::for_tests().into();
 6507   8444   
        let mut signing_params = signing_params(&identity, settings);
 6508   8445   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6509   8446   
        assert_eq!(
 6510   8447   
            creq.values.content_sha256(),
 6511   8448   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 6512   8449   
        );
 6513   8450   
        // assert that the sha256 header was added
 6514   8451   
        assert_eq!(
 6515   8452   
            creq.values.signed_headers().as_str(),
 6516   8453   
            "host;x-amz-content-sha256;x-amz-date"
 6517   8454   
        );
 6518   8455   
 6519   8456   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 6520   8457   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6521   8458   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 6522   8459   
    }
 6523   8460   
 6524   8461   
    #[test]
 6525   8462   
    fn test_unsigned_payload() {
 6526         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8463  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8464  +
        let mut req = test.request();
 6527   8465   
        req.set_body(SignableBody::UnsignedPayload);
 6528   8466   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 6529   8467   
 6530   8468   
        let settings = SigningSettings {
 6531   8469   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6532   8470   
            ..Default::default()
 6533   8471   
        };
 6534   8472   
        let identity = Credentials::for_tests().into();
 6535   8473   
        let signing_params = signing_params(&identity, settings);
 6536   8474   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6537   8475   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 6538   8476   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 6539   8477   
    }
 6540   8478   
 6541   8479   
    #[test]
 6542   8480   
    fn test_precomputed_payload() {
 6543   8481   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 6544         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8482  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8483  +
        let mut req = test.request();
 6545   8484   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 6546   8485   
        let req = SignableRequest::from(&req);
 6547   8486   
        let settings = SigningSettings {
 6548   8487   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6549   8488   
            ..Default::default()
 6550   8489   
        };
 6551   8490   
        let identity = Credentials::for_tests().into();
 6552   8491   
        let signing_params = signing_params(&identity, settings);
 6553   8492   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6554   8493   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 6555   8494   
        assert!(creq.to_string().ends_with(payload_hash));
 6556   8495   
    }
 6557   8496   
 6558   8497   
    #[test]
 6559   8498   
    fn test_generate_scope() {
 6560   8499   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 6561   8500   
        let scope = SigningScope {
 6562   8501   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6563   8502   
            region: "us-east-1",
 6564   8503   
            service: "iam",
 6565   8504   
        };
 6566   8505   
        assert_eq!(format!("{}\n", scope), expected);
 6567   8506   
    }
 6568   8507   
 6569   8508   
    #[test]
 6570   8509   
    fn test_string_to_sign() {
 6571   8510   
        let time = parse_date_time("20150830T123600Z").unwrap();
 6572         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 6573         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        8511  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8512  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        8513  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 6574   8514   
        let encoded = sha256_hex_string(creq.as_bytes());
 6575   8515   
 6576   8516   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 6577   8517   
        assert_eq!(expected_sts, actual.to_string());
 6578   8518   
    }
 6579   8519   
 6580   8520   
    #[test]
 6581   8521   
    fn test_digest_of_canonical_request() {
 6582         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        8522  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8523  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 6583   8524   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 6584   8525   
        let actual = sha256_hex_string(creq.as_bytes());
 6585   8526   
        assert_eq!(expected, actual);
 6586   8527   
    }
 6587   8528   
 6588   8529   
    #[test]
 6589   8530   
    fn test_double_url_encode_path() {
 6590         -
        let req = test::v4::test_request("double-encode-path");
        8531  +
        let test = SigningSuiteTest::v4("double-encode-path");
        8532  +
        let req = test.request();
 6591   8533   
        let req = SignableRequest::from(&req);
 6592   8534   
        let identity = Credentials::for_tests().into();
 6593   8535   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6594   8536   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6595   8537   
 6596         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        8538  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 6597   8539   
        let actual = format!("{}", creq);
 6598   8540   
        assert_eq!(actual, expected);
 6599   8541   
    }
 6600   8542   
 6601   8543   
    #[test]
 6602   8544   
    fn test_double_url_encode() {
 6603         -
        let req = test::v4::test_request("double-url-encode");
        8545  +
        let test = SigningSuiteTest::v4("double-url-encode");
        8546  +
        let req = test.request();
 6604   8547   
        let req = SignableRequest::from(&req);
 6605   8548   
        let identity = Credentials::for_tests().into();
 6606   8549   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6607   8550   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6608         -
 6609         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        8551  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 6610   8552   
        let actual = format!("{}", creq);
 6611   8553   
        assert_eq!(actual, expected);
 6612   8554   
    }
 6613   8555   
 6614   8556   
    #[test]
 6615   8557   
    fn test_tilde_in_uri() {
 6616   8558   
        let req = http0::Request::builder()
 6617   8559   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 6618   8560   
        let req = SignableRequest::from(&req);
 6619   8561   
        let identity = Credentials::for_tests().into();
 6620   8562   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6621   8563   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6622   8564   
        assert_eq!(
 6623   8565   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 6624   8566   
            creq.params.as_deref(),
 6625   8567   
        );
 6626   8568   
    }
 6627   8569   
 6628   8570   
    #[test]
 6629   8571   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 6630   8572   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 6631   8573   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 6632   8574   
 6633   8575   
        let mut query_writer = QueryWriter::new(&uri);
 6634   8576   
        query_writer.insert("list-type", "2");
 6635   8577   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 6636   8578   
 6637   8579   
        let req = http0::Request::builder()
 6638   8580   
            .uri(query_writer.build_uri())
 6639   8581   
            .body("")
 6640   8582   
            .unwrap()
 6641   8583   
            .into();
 6642   8584   
        let req = SignableRequest::from(&req);
 6643   8585   
        let identity = Credentials::for_tests().into();
 6644   8586   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6645   8587   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6646   8588   
 6647   8589   
        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~";
 6648   8590   
        let actual = creq.params.unwrap();
 6649   8591   
        assert_eq!(expected, actual);
 6650   8592   
    }
 6651   8593   
 6652   8594   
    #[test]
 6653   8595   
    fn test_omit_session_token() {
 6654         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        8596  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8597  +
        let req = test.request();
 6655   8598   
        let req = SignableRequest::from(&req);
 6656   8599   
        let settings = SigningSettings {
 6657   8600   
            session_token_mode: SessionTokenMode::Include,
 6658   8601   
            ..Default::default()
 6659   8602   
        };
 6660   8603   
        let identity = Credentials::for_tests_with_session_token().into();
 6661   8604   
        let mut signing_params = signing_params(&identity, settings);
 6662   8605   
 6663   8606   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6664   8607   
        assert_eq!(
 6665   8608   
            creq.values.signed_headers().as_str(),
 6666   8609   
            "host;x-amz-date;x-amz-security-token"
 6667   8610   
        );
 6668   8611   
        assert_eq!(
 6669   8612   
            creq.headers.get("x-amz-security-token").unwrap(),
 6670   8613   
            "notarealsessiontoken"
 6671   8614   
        );
 6672   8615   
 6673   8616   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 6674   8617   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6675   8618   
        assert_eq!(
 6676   8619   
            creq.headers.get("x-amz-security-token").unwrap(),
 6677   8620   
            "notarealsessiontoken"
 6678   8621   
        );
 6679   8622   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 6680   8623   
    }
 6681   8624   
 6682   8625   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 6683   8626   
    #[test]
 6684   8627   
    fn non_presigning_header_exclusion() {
 6685   8628   
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
 6686   8629   
index c4bbbee..363fc2c 100644
 6687         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        8630  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 6688   8631   
@@ -6,60 +6,62 @@
 6689   8632   
use super::error::SigningError;
 6690   8633   
use super::{PayloadChecksumKind, SignatureLocation};
 6691   8634   
use crate::http_request::canonical_request::header;
 6692   8635   
use crate::http_request::canonical_request::param;
 6693   8636   
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 6694   8637   
use crate::http_request::error::CanonicalRequestError;
 6695   8638   
use crate::http_request::SigningParams;
 6696   8639   
use crate::sign::v4;
 6697   8640   
#[cfg(feature = "sigv4a")]
 6698   8641   
use crate::sign::v4a;
 6699   8642   
use crate::{SignatureVersion, SigningOutput};
 6700   8643   
use http0::Uri;
 6701   8644   
use std::borrow::Cow;
 6702   8645   
use std::fmt::{Debug, Formatter};
 6703   8646   
use std::str;
 6704   8647   
 6705   8648   
const LOG_SIGNABLE_BODY: &str = "LOG_SIGNABLE_BODY";
 6706   8649   
 6707   8650   
/// Represents all of the information necessary to sign an HTTP request.
 6708   8651   
#[derive(Debug)]
 6709   8652   
#[non_exhaustive]
 6710   8653   
pub struct SignableRequest<'a> {
 6711   8654   
    method: &'a str,
 6712   8655   
    uri: Uri,
 6713   8656   
    headers: Vec<(&'a str, &'a str)>,
 6714   8657   
    body: SignableBody<'a>,
 6715   8658   
}
 6716   8659   
 6717   8660   
impl<'a> SignableRequest<'a> {
 6718   8661   
    /// Creates a new `SignableRequest`.
        8662  +
    ///
        8663  +
    /// NOTE: The `uri` is expected to already in encoded form.
 6719   8664   
    pub fn new(
 6720   8665   
        method: &'a str,
 6721   8666   
        uri: impl Into<Cow<'a, str>>,
 6722   8667   
        headers: impl Iterator<Item = (&'a str, &'a str)>,
 6723   8668   
        body: SignableBody<'a>,
 6724   8669   
    ) -> Result<Self, SigningError> {
 6725   8670   
        let uri = uri
 6726   8671   
            .into()
 6727   8672   
            .parse()
 6728   8673   
            .map_err(|e| SigningError::from(CanonicalRequestError::from(e)))?;
 6729   8674   
        let headers = headers.collect();
 6730   8675   
        Ok(Self {
 6731   8676   
            method,
 6732   8677   
            uri,
 6733   8678   
            headers,
 6734   8679   
            body,
 6735   8680   
        })
 6736   8681   
    }
 6737   8682   
 6738   8683   
    /// Returns the signable URI
 6739   8684   
    pub(crate) fn uri(&self) -> &Uri {
 6740   8685   
        &self.uri
 6741   8686   
    }
 6742   8687   
 6743   8688   
    /// Returns the signable HTTP method
 6744   8689   
    pub(crate) fn method(&self) -> &str {
 6745   8690   
        self.method
 6746   8691   
    }
 6747   8692   
 6748   8693   
    /// Returns the request headers
 6749   8694   
@@ -478,436 +480,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 6750   8695   
        sensitive,
 6751   8696   
    });
 6752   8697   
}
 6753   8698   
 6754   8699   
// add signature to authorization header
 6755   8700   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 6756   8701   
fn build_authorization_header(
 6757   8702   
    access_key: &str,
 6758   8703   
    creq: &CanonicalRequest<'_>,
 6759   8704   
    sts: StringToSign<'_>,
 6760   8705   
    signature: &str,
 6761   8706   
    signature_version: SignatureVersion,
 6762   8707   
) -> String {
 6763   8708   
    let scope = match signature_version {
 6764   8709   
        SignatureVersion::V4 => sts.scope.to_string(),
 6765   8710   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 6766   8711   
    };
 6767   8712   
    format!(
 6768   8713   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 6769   8714   
        sts.algorithm,
 6770   8715   
        access_key,
 6771   8716   
        scope,
 6772   8717   
        creq.values.signed_headers().as_str(),
 6773   8718   
        signature
 6774   8719   
    )
 6775   8720   
}
 6776   8721   
#[cfg(test)]
 6777   8722   
mod tests {
 6778   8723   
    use crate::date_time::test_parsers::parse_date_time;
 6779   8724   
    use crate::http_request::sign::{add_header, SignableRequest};
        8725  +
    use crate::http_request::test::SigningSuiteTest;
 6780   8726   
    use crate::http_request::{
 6781         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        8727  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 6782   8728   
        SigningSettings,
 6783   8729   
    };
 6784   8730   
    use crate::sign::v4;
 6785   8731   
    use aws_credential_types::Credentials;
 6786   8732   
    use http0::{HeaderValue, Request};
 6787   8733   
    use pretty_assertions::assert_eq;
 6788   8734   
    use proptest::proptest;
 6789   8735   
    use std::borrow::Cow;
 6790   8736   
    use std::iter;
 6791         -
    use std::time::Duration;
 6792   8737   
 6793   8738   
    macro_rules! assert_req_eq {
 6794   8739   
        (http: $expected:expr, $actual:expr) => {
 6795   8740   
            let mut expected = ($expected).map(|_b|"body");
 6796   8741   
            let mut actual = ($actual).map(|_b|"body");
 6797   8742   
            make_headers_comparable(&mut expected);
 6798   8743   
            make_headers_comparable(&mut actual);
 6799   8744   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 6800   8745   
        };
 6801   8746   
        ($expected:tt, $actual:tt) => {
 6802   8747   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 6803   8748   
        };
 6804   8749   
    }
 6805   8750   
 6806   8751   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 6807   8752   
        for (_name, value) in request.headers_mut() {
 6808   8753   
            value.set_sensitive(false);
 6809   8754   
        }
 6810   8755   
    }
 6811   8756   
 6812         -
    #[test]
 6813         -
    fn test_sign_vanilla_with_headers() {
 6814         -
        let settings = SigningSettings::default();
 6815         -
        let identity = &Credentials::for_tests().into();
 6816         -
        let params = v4::SigningParams {
 6817         -
            identity,
 6818         -
            region: "us-east-1",
 6819         -
            name: "service",
 6820         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 6821         -
            settings,
 6822         -
        }
 6823         -
        .into();
 6824         -
 6825         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 6826         -
        let signable = SignableRequest::from(&original);
 6827         -
        let out = sign(signable, &params).unwrap();
 6828         -
        assert_eq!(
 6829         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 6830         -
            out.signature
 6831         -
        );
 6832         -
 6833         -
        let mut signed = original.as_http_request();
 6834         -
        out.output.apply_to_request_http0x(&mut signed);
 6835         -
 6836         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 6837         -
        assert_req_eq!(expected, signed);
 6838         -
    }
 6839         -
        8757  +
    // Sigv4A suite tests
 6840   8758   
    #[cfg(feature = "sigv4a")]
 6841         -
    mod sigv4a_tests {
 6842         -
        use super::*;
 6843         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 6844         -
        use crate::http_request::{sign, test, SigningParams};
 6845         -
        use crate::sign::v4a;
 6846         -
        use p256::ecdsa::signature::{Signature, Verifier};
 6847         -
        use p256::ecdsa::{DerSignature, SigningKey};
 6848         -
        use pretty_assertions::assert_eq;
 6849         -
 6850         -
        fn new_v4a_signing_params_from_context(
 6851         -
            test_context: &'_ test::v4a::TestContext,
 6852         -
            signature_location: SignatureLocation,
 6853         -
        ) -> SigningParams<'_> {
 6854         -
            let mut params = v4a::SigningParams::from(test_context);
 6855         -
            params.settings.signature_location = signature_location;
 6856         -
 6857         -
            params.into()
 6858         -
        }
 6859         -
 6860         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 6861         -
            let tc = test::v4a::test_context(test_name);
 6862         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 6863         -
 6864         -
            let req = test::v4a::test_request(test_name);
 6865         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 6866         -
            let signable_req = SignableRequest::from(&req);
 6867         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
 6868         -
 6869         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
 6870         -
 6871         -
            let expected_string_to_sign =
 6872         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 6873         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 6874         -
            let actual_string_to_sign = StringToSign::new_v4a(
 6875         -
                *params.time(),
 6876         -
                params.region_set().unwrap(),
 6877         -
                params.name(),
 6878         -
                hashed_creq,
 6879         -
            )
 6880         -
            .to_string();
        8759  +
    mod v4a_suite {
        8760  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 6881   8761   
 6882         -
            assert_eq!(
 6883         -
                expected_string_to_sign, actual_string_to_sign,
 6884         -
                "'string to sign' didn't match"
 6885         -
            );
 6886         -
 6887         -
            let out = sign(signable_req, &params).unwrap();
 6888         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 6889         -
            out.output
 6890         -
                .apply_to_request_http0x(&mut req.as_http_request());
 6891         -
 6892         -
            let creds = params.credentials().unwrap();
 6893         -
            let signing_key =
 6894         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 6895         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 6896         -
            let sig = sig
 6897         -
                .try_into()
 6898         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 6899         -
 6900         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 6901         -
            let peer_public_key = signing_key.verifying_key();
 6902         -
            let sts = actual_string_to_sign.as_bytes();
 6903         -
            peer_public_key.verify(sts, &sig).unwrap();
        8762  +
        #[test]
        8763  +
        fn test_get_header_key_duplicate() {
        8764  +
            run_test_suite_v4a("get-header-key-duplicate")
 6904   8765   
        }
 6905   8766   
 6906   8767   
        #[test]
 6907         -
        fn test_get_header_key_duplicate() {
 6908         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        8768  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        8769  +
        fn test_get_header_value_multiline() {
        8770  +
            run_test_suite_v4a("get-header-value-multiline")
 6909   8771   
        }
 6910   8772   
 6911   8773   
        #[test]
 6912   8774   
        fn test_get_header_value_order() {
 6913         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        8775  +
            run_test_suite_v4a("get-header-value-order")
 6914   8776   
        }
 6915   8777   
 6916   8778   
        #[test]
 6917   8779   
        fn test_get_header_value_trim() {
 6918         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        8780  +
            run_test_suite_v4a("get-header-value-trim");
 6919   8781   
        }
 6920   8782   
 6921   8783   
        #[test]
 6922   8784   
        fn test_get_relative_normalized() {
 6923         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        8785  +
            run_test_suite_v4a("get-relative-normalized");
 6924   8786   
        }
 6925   8787   
 6926   8788   
        #[test]
 6927   8789   
        fn test_get_relative_relative_normalized() {
 6928         -
            run_v4a_test_suite(
 6929         -
                "get-relative-relative-normalized",
 6930         -
                SignatureLocation::Headers,
 6931         -
            );
        8790  +
            run_test_suite_v4a("get-relative-relative-normalized");
 6932   8791   
        }
 6933   8792   
 6934   8793   
        #[test]
 6935   8794   
        fn test_get_relative_relative_unnormalized() {
 6936         -
            run_v4a_test_suite(
 6937         -
                "get-relative-relative-unnormalized",
 6938         -
                SignatureLocation::Headers,
 6939         -
            );
        8795  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 6940   8796   
        }
 6941   8797   
 6942   8798   
        #[test]
 6943   8799   
        fn test_get_relative_unnormalized() {
 6944         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        8800  +
            run_test_suite_v4a("get-relative-unnormalized");
 6945   8801   
        }
 6946   8802   
 6947   8803   
        #[test]
 6948   8804   
        fn test_get_slash_dot_slash_normalized() {
 6949         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        8805  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 6950   8806   
        }
 6951   8807   
 6952   8808   
        #[test]
 6953   8809   
        fn test_get_slash_dot_slash_unnormalized() {
 6954         -
            run_v4a_test_suite(
 6955         -
                "get-slash-dot-slash-unnormalized",
 6956         -
                SignatureLocation::Headers,
 6957         -
            );
        8810  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 6958   8811   
        }
 6959   8812   
 6960   8813   
        #[test]
 6961   8814   
        fn test_get_slash_normalized() {
 6962         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        8815  +
            run_test_suite_v4a("get-slash-normalized");
 6963   8816   
        }
 6964   8817   
 6965   8818   
        #[test]
 6966   8819   
        fn test_get_slash_pointless_dot_normalized() {
 6967         -
            run_v4a_test_suite(
 6968         -
                "get-slash-pointless-dot-normalized",
 6969         -
                SignatureLocation::Headers,
 6970         -
            );
        8820  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 6971   8821   
        }
 6972   8822   
 6973   8823   
        #[test]
 6974   8824   
        fn test_get_slash_pointless_dot_unnormalized() {
 6975         -
            run_v4a_test_suite(
 6976         -
                "get-slash-pointless-dot-unnormalized",
 6977         -
                SignatureLocation::Headers,
 6978         -
            );
        8825  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 6979   8826   
        }
 6980   8827   
 6981   8828   
        #[test]
 6982   8829   
        fn test_get_slash_unnormalized() {
 6983         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        8830  +
            run_test_suite_v4a("get-slash-unnormalized");
 6984   8831   
        }
 6985   8832   
 6986   8833   
        #[test]
 6987   8834   
        fn test_get_slashes_normalized() {
 6988         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        8835  +
            run_test_suite_v4a("get-slashes-normalized");
 6989   8836   
        }
 6990   8837   
 6991   8838   
        #[test]
 6992   8839   
        fn test_get_slashes_unnormalized() {
 6993         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        8840  +
            run_test_suite_v4a("get-slashes-unnormalized");
        8841  +
        }
        8842  +
        8843  +
        #[test]
        8844  +
        #[ignore = "relies on single encode of path segments"]
        8845  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        8846  +
        // skipped until we add control over double_uri_encode in context.json
        8847  +
        fn test_get_space_normalized() {
        8848  +
            run_test_suite_v4a("get-space-normalized");
        8849  +
        }
        8850  +
        8851  +
        #[test]
        8852  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        8853  +
        // the input request has unencoded space ' ' in the path which fails to parse
        8854  +
        fn test_get_space_unnormalized() {
        8855  +
            run_test_suite_v4a("get-space-unnormalized");
 6994   8856   
        }
 6995   8857   
 6996   8858   
        #[test]
 6997   8859   
        fn test_get_unreserved() {
 6998         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        8860  +
            run_test_suite_v4a("get-unreserved");
        8861  +
        }
        8862  +
        8863  +
        #[test]
        8864  +
        #[ignore = "httparse fails on invalid uri character"]
        8865  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8866  +
        fn test_get_utf8() {
        8867  +
            run_test_suite_v4a("get-utf8");
 6999   8868   
        }
 7000   8869   
 7001   8870   
        #[test]
 7002   8871   
        fn test_get_vanilla() {
 7003         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        8872  +
            run_test_suite_v4a("get-vanilla");
 7004   8873   
        }
 7005   8874   
 7006   8875   
        #[test]
 7007   8876   
        fn test_get_vanilla_empty_query_key() {
 7008         -
            run_v4a_test_suite(
 7009         -
                "get-vanilla-empty-query-key",
 7010         -
                SignatureLocation::QueryParams,
 7011         -
            );
        8877  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 7012   8878   
        }
 7013   8879   
 7014   8880   
        #[test]
 7015   8881   
        fn test_get_vanilla_query() {
 7016         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        8882  +
            run_test_suite_v4a("get-vanilla-query");
        8883  +
        }
        8884  +
        8885  +
        #[test]
        8886  +
        fn test_get_vanilla_query_order_encoded() {
        8887  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 7017   8888   
        }
 7018   8889   
 7019   8890   
        #[test]
 7020   8891   
        fn test_get_vanilla_query_order_key_case() {
 7021         -
            run_v4a_test_suite(
 7022         -
                "get-vanilla-query-order-key-case",
 7023         -
                SignatureLocation::QueryParams,
 7024         -
            );
        8892  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 7025   8893   
        }
 7026   8894   
 7027   8895   
        #[test]
 7028   8896   
        fn test_get_vanilla_query_unreserved() {
 7029         -
            run_v4a_test_suite(
 7030         -
                "get-vanilla-query-unreserved",
 7031         -
                SignatureLocation::QueryParams,
 7032         -
            );
        8897  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        8898  +
        }
        8899  +
        8900  +
        #[test]
        8901  +
        #[ignore = "httparse fails on invalid uri character"]
        8902  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8903  +
        fn test_get_vanilla_utf8_query() {
        8904  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 7033   8905   
        }
 7034   8906   
 7035   8907   
        #[test]
 7036   8908   
        fn test_get_vanilla_with_session_token() {
 7037         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        8909  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 7038   8910   
        }
 7039   8911   
 7040   8912   
        #[test]
 7041   8913   
        fn test_post_header_key_case() {
 7042         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        8914  +
            run_test_suite_v4a("post-header-key-case");
 7043   8915   
        }
 7044   8916   
 7045   8917   
        #[test]
 7046   8918   
        fn test_post_header_key_sort() {
 7047         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        8919  +
            run_test_suite_v4a("post-header-key-sort");
 7048   8920   
        }
 7049   8921   
 7050   8922   
        #[test]
 7051   8923   
        fn test_post_header_value_case() {
 7052         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        8924  +
            run_test_suite_v4a("post-header-value-case");
 7053   8925   
        }
 7054   8926   
 7055   8927   
        #[test]
 7056   8928   
        fn test_post_sts_header_after() {
 7057         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        8929  +
            run_test_suite_v4a("post-sts-header-after");
 7058   8930   
        }
 7059   8931   
 7060   8932   
        #[test]
 7061   8933   
        fn test_post_sts_header_before() {
 7062         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        8934  +
            run_test_suite_v4a("post-sts-header-before");
 7063   8935   
        }
 7064   8936   
 7065   8937   
        #[test]
 7066   8938   
        fn test_post_vanilla() {
 7067         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        8939  +
            run_test_suite_v4a("post-vanilla");
 7068   8940   
        }
 7069   8941   
 7070   8942   
        #[test]
 7071   8943   
        fn test_post_vanilla_empty_query_value() {
 7072         -
            run_v4a_test_suite(
 7073         -
                "post-vanilla-empty-query-value",
 7074         -
                SignatureLocation::QueryParams,
 7075         -
            );
        8944  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 7076   8945   
        }
 7077   8946   
 7078   8947   
        #[test]
 7079   8948   
        fn test_post_vanilla_query() {
 7080         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        8949  +
            run_test_suite_v4a("post-vanilla-query");
 7081   8950   
        }
 7082   8951   
 7083   8952   
        #[test]
 7084   8953   
        fn test_post_x_www_form_urlencoded() {
 7085         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        8954  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 7086   8955   
        }
 7087   8956   
 7088   8957   
        #[test]
 7089   8958   
        fn test_post_x_www_form_urlencoded_parameters() {
 7090         -
            run_v4a_test_suite(
 7091         -
                "post-x-www-form-urlencoded-parameters",
 7092         -
                SignatureLocation::QueryParams,
 7093         -
            );
        8959  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 7094   8960   
        }
 7095   8961   
    }
 7096   8962   
 7097   8963   
    #[test]
 7098   8964   
    fn test_sign_url_escape() {
 7099         -
        let test = "double-encode-path";
        8965  +
        let test = SigningSuiteTest::v4("double-encode-path");
 7100   8966   
        let settings = SigningSettings::default();
 7101   8967   
        let identity = &Credentials::for_tests().into();
 7102   8968   
        let params = v4::SigningParams {
 7103   8969   
            identity,
 7104   8970   
            region: "us-east-1",
 7105   8971   
            name: "service",
 7106   8972   
            time: parse_date_time("20150830T123600Z").unwrap(),
 7107   8973   
            settings,
 7108   8974   
        }
 7109   8975   
        .into();
 7110   8976   
 7111         -
        let original = test::v4::test_request(test);
        8977  +
        let original = test.request();
 7112   8978   
        let signable = SignableRequest::from(&original);
 7113   8979   
        let out = sign(signable, &params).unwrap();
 7114   8980   
        assert_eq!(
 7115   8981   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 7116   8982   
            out.signature
 7117   8983   
        );
 7118   8984   
 7119   8985   
        let mut signed = original.as_http_request();
 7120   8986   
        out.output.apply_to_request_http0x(&mut signed);
 7121   8987   
 7122         -
        let expected = test::v4::test_signed_request(test);
 7123         -
        assert_req_eq!(expected, signed);
 7124         -
    }
 7125         -
 7126         -
    #[test]
 7127         -
    fn test_sign_vanilla_with_query_params() {
 7128         -
        let settings = SigningSettings {
 7129         -
            signature_location: SignatureLocation::QueryParams,
 7130         -
            expires_in: Some(Duration::from_secs(35)),
 7131         -
            ..Default::default()
 7132         -
        };
 7133         -
        let identity = &Credentials::for_tests().into();
 7134         -
        let params = v4::SigningParams {
 7135         -
            identity,
 7136         -
            region: "us-east-1",
 7137         -
            name: "service",
 7138         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 7139         -
            settings,
 7140         -
        }
 7141         -
        .into();
 7142         -
 7143         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 7144         -
        let signable = SignableRequest::from(&original);
 7145         -
        let out = sign(signable, &params).unwrap();
 7146         -
        assert_eq!(
 7147         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 7148         -
            out.signature
 7149         -
        );
 7150         -
 7151         -
        let mut signed = original.as_http_request();
 7152         -
        out.output.apply_to_request_http0x(&mut signed);
 7153         -
 7154         -
        let expected =
 7155         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        8988  +
        let expected = test.signed_request(SignatureLocation::Headers);
 7156   8989   
        assert_req_eq!(expected, signed);
 7157   8990   
    }
 7158   8991   
 7159   8992   
    #[test]
 7160   8993   
    fn test_sign_headers_utf8() {
 7161   8994   
        let settings = SigningSettings::default();
 7162   8995   
        let identity = &Credentials::for_tests().into();
 7163   8996   
        let params = v4::SigningParams {
 7164   8997   
            identity,
 7165   8998   
            region: "us-east-1",
 7166   8999   
            name: "service",
 7167   9000   
            time: parse_date_time("20150830T123600Z").unwrap(),
 7168   9001   
            settings,
 7169   9002   
        }
 7170   9003   
        .into();
 7171   9004   
 7172   9005   
        let original = http0::Request::builder()
 7173   9006   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 7174   9007   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 7175   9008   
            .body("")
 7176   9009   
            .unwrap()
 7177   9010   
            .into();
 7178   9011   
        let signable = SignableRequest::from(&original);
 7179   9012   
        let out = sign(signable, &params).unwrap();
 7180   9013   
        assert_eq!(
 7181   9014   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 7182   9015   
            out.signature
 7183   9016   
        );
 7184   9017   
 7185   9018   
        let mut signed = original.as_http_request();
 7186   9019   
@@ -1138,31 +1028,236 @@ mod tests {
 7187   9020   
        let mut request = http::Request::builder()
 7188   9021   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 7189   9022   
            .body("")
 7190   9023   
            .unwrap();
 7191   9024   
 7192   9025   
        instructions.apply_to_request_http1x(&mut request);
 7193   9026   
 7194   9027   
        assert_eq!(
 7195   9028   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 7196   9029   
            request.uri().path_and_query().unwrap().to_string()
 7197   9030   
        );
 7198   9031   
    }
 7199   9032   
 7200   9033   
    #[test]
 7201   9034   
    fn test_debug_signable_body() {
 7202   9035   
        let sut = SignableBody::Bytes(b"hello signable body");
 7203   9036   
        assert_eq!(
 7204   9037   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 7205   9038   
            format!("{sut:?}")
 7206   9039   
        );
 7207   9040   
 7208   9041   
        let sut = SignableBody::UnsignedPayload;
 7209   9042   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 7210   9043   
 7211   9044   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 7212   9045   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 7213   9046   
 7214   9047   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 7215   9048   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 7216   9049   
    }
        9050  +
        9051  +
    // v4 test suite
        9052  +
    mod v4_suite {
        9053  +
        use crate::http_request::test::run_test_suite_v4;
        9054  +
        9055  +
        #[test]
        9056  +
        fn test_get_header_key_duplicate() {
        9057  +
            run_test_suite_v4("get-header-key-duplicate");
        9058  +
        }
        9059  +
        9060  +
        #[test]
        9061  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        9062  +
        fn test_get_header_value_multiline() {
        9063  +
            run_test_suite_v4("get-header-value-multiline");
        9064  +
        }
        9065  +
        9066  +
        #[test]
        9067  +
        fn test_get_header_value_order() {
        9068  +
            run_test_suite_v4("get-header-value-order");
        9069  +
        }
        9070  +
        9071  +
        #[test]
        9072  +
        fn test_get_header_value_trim() {
        9073  +
            run_test_suite_v4("get-header-value-trim");
        9074  +
        }
        9075  +
        9076  +
        #[test]
        9077  +
        fn test_get_relative_normalized() {
        9078  +
            run_test_suite_v4("get-relative-normalized");
        9079  +
        }
        9080  +
        9081  +
        #[test]
        9082  +
        fn test_get_relative_relative_normalized() {
        9083  +
            run_test_suite_v4("get-relative-relative-normalized");
        9084  +
        }
        9085  +
        9086  +
        #[test]
        9087  +
        fn test_get_relative_relative_unnormalized() {
        9088  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        9089  +
        }
        9090  +
        9091  +
        #[test]
        9092  +
        fn test_get_relative_unnormalized() {
        9093  +
            run_test_suite_v4("get-relative-unnormalized");
        9094  +
        }
        9095  +
        9096  +
        #[test]
        9097  +
        fn test_get_slash_dot_slash_normalized() {
        9098  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        9099  +
        }
        9100  +
        9101  +
        #[test]
        9102  +
        fn test_get_slash_dot_slash_unnormalized() {
        9103  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        9104  +
        }
        9105  +
        9106  +
        #[test]
        9107  +
        fn test_get_slash_normalized() {
        9108  +
            run_test_suite_v4("get-slash-normalized");
        9109  +
        }
        9110  +
        9111  +
        #[test]
        9112  +
        fn test_get_slash_pointless_dot_normalized() {
        9113  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        9114  +
        }
        9115  +
        9116  +
        #[test]
        9117  +
        fn test_get_slash_pointless_dot_unnormalized() {
        9118  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        9119  +
        }
        9120  +
        9121  +
        #[test]
        9122  +
        fn test_get_slash_unnormalized() {
        9123  +
            run_test_suite_v4("get-slash-unnormalized");
        9124  +
        }
        9125  +
        9126  +
        #[test]
        9127  +
        fn test_get_slashes_normalized() {
        9128  +
            run_test_suite_v4("get-slashes-normalized");
        9129  +
        }
        9130  +
        9131  +
        #[test]
        9132  +
        fn test_get_slashes_unnormalized() {
        9133  +
            run_test_suite_v4("get-slashes-unnormalized");
        9134  +
        }
        9135  +
        9136  +
        #[test]
        9137  +
        #[ignore = "relies on single encode of path segments"]
        9138  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        9139  +
        // skipped until we add control over double_uri_encode in context.json
        9140  +
        fn test_get_space_normalized() {
        9141  +
            run_test_suite_v4("get-space-normalized");
        9142  +
        }
        9143  +
        9144  +
        #[test]
        9145  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        9146  +
        // the input request has unencoded space ' ' in the path which fails to parse
        9147  +
        fn test_get_space_unnormalized() {
        9148  +
            run_test_suite_v4("get-space-unnormalized");
        9149  +
        }
        9150  +
        9151  +
        #[test]
        9152  +
        fn test_get_unreserved() {
        9153  +
            run_test_suite_v4("get-unreserved");
        9154  +
        }
        9155  +
        9156  +
        #[test]
        9157  +
        #[ignore = "httparse fails on invalid uri character"]
        9158  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9159  +
        fn test_get_utf8() {
        9160  +
            run_test_suite_v4("get-utf8");
        9161  +
        }
        9162  +
        9163  +
        #[test]
        9164  +
        fn test_get_vanilla() {
        9165  +
            run_test_suite_v4("get-vanilla");
        9166  +
        }
        9167  +
        9168  +
        #[test]
        9169  +
        fn test_get_vanilla_empty_query_key() {
        9170  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        9171  +
        }
        9172  +
        9173  +
        #[test]
        9174  +
        fn test_get_vanilla_query() {
        9175  +
            run_test_suite_v4("get-vanilla-query");
        9176  +
        }
        9177  +
        9178  +
        #[test]
        9179  +
        fn test_get_vanilla_query_order_encoded() {
        9180  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        9181  +
        }
        9182  +
        9183  +
        #[test]
        9184  +
        fn test_get_vanilla_query_order_key_case() {
        9185  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        9186  +
        }
        9187  +
        9188  +
        #[test]
        9189  +
        fn test_get_vanilla_query_unreserved() {
        9190  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        9191  +
        }
        9192  +
        9193  +
        #[test]
        9194  +
        #[ignore = "httparse fails on invalid uri character"]
        9195  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9196  +
        fn test_get_vanilla_utf8_query() {
        9197  +
            run_test_suite_v4("get-vanilla-utf8-query");
        9198  +
        }
        9199  +
        9200  +
        #[test]
        9201  +
        fn test_get_vanilla_with_session_token() {
        9202  +
            run_test_suite_v4("get-vanilla-with-session-token");
        9203  +
        }
        9204  +
        9205  +
        #[test]
        9206  +
        fn test_post_header_key_case() {
        9207  +
            run_test_suite_v4("post-header-key-case");
        9208  +
        }
        9209  +
        9210  +
        #[test]
        9211  +
        fn test_post_header_key_sort() {
        9212  +
            run_test_suite_v4("post-header-key-sort");
        9213  +
        }
        9214  +
        9215  +
        #[test]
        9216  +
        fn test_post_header_value_case() {
        9217  +
            run_test_suite_v4("post-header-value-case");
        9218  +
        }
        9219  +
        9220  +
        #[test]
        9221  +
        fn test_post_sts_header_after() {
        9222  +
            run_test_suite_v4("post-sts-header-after");
        9223  +
        }
        9224  +
        9225  +
        #[test]
        9226  +
        fn test_post_sts_header_before() {
        9227  +
            run_test_suite_v4("post-sts-header-before");
        9228  +
        }
        9229  +
        9230  +
        #[test]
        9231  +
        fn test_post_vanilla() {
        9232  +
            run_test_suite_v4("post-vanilla");
        9233  +
        }
        9234  +
        9235  +
        #[test]
        9236  +
        fn test_post_vanilla_empty_query_value() {
        9237  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        9238  +
        }
        9239  +
        9240  +
        #[test]
        9241  +
        fn test_post_vanilla_query() {
        9242  +
            run_test_suite_v4("post-vanilla-query");
        9243  +
        }
        9244  +
        9245  +
        #[test]
        9246  +
        fn test_post_x_www_form_urlencoded() {
        9247  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        9248  +
        }
        9249  +
        9250  +
        #[test]
        9251  +
        fn test_post_x_www_form_urlencoded_parameters() {
        9252  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        9253  +
        }
        9254  +
    }
 7217   9255   
}
 7218   9256   
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
 7219   9257   
index be6c496..86eec20 100644
 7220         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        9258  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 7221   9259   
@@ -1,242 +1,453 @@
 7222   9260   
/*
 7223   9261   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 7224   9262   
 * SPDX-License-Identifier: Apache-2.0
 7225   9263   
 */
 7226   9264   
 7227   9265   
//! Functions shared between the tests of several modules.
 7228   9266   
 7229         -
use crate::http_request::{SignableBody, SignableRequest};
        9267  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        9268  +
use crate::http_request::{
        9269  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        9270  +
    SigningSettings,
        9271  +
};
        9272  +
use aws_credential_types::Credentials;
        9273  +
use aws_smithy_runtime_api::client::identity::Identity;
 7230   9274   
use http0::{Method, Uri};
        9275  +
use std::borrow::Cow;
 7231   9276   
use std::error::Error as StdError;
        9277  +
use std::time::{Duration, SystemTime};
        9278  +
use time::format_description::well_known::Rfc3339;
        9279  +
use time::OffsetDateTime;
        9280  +
        9281  +
/// Common test suite collection
        9282  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        9283  +
enum Collection {
        9284  +
    V4,
        9285  +
    V4A,
        9286  +
}
 7232   9287   
 7233         -
pub(crate) mod v4 {
 7234         -
    use super::*;
        9288  +
/// A test from the common CRT test suite
        9289  +
#[derive(Debug, Clone)]
        9290  +
pub(crate) struct SigningSuiteTest {
        9291  +
    test_name: &'static str,
        9292  +
    collection: Collection,
        9293  +
}
 7235   9294   
 7236         -
    fn path(name: &str, ext: &str) -> String {
 7237         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        9295  +
impl SigningSuiteTest {
        9296  +
    /// Create a new test from the V4 test suite
        9297  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        9298  +
        Self {
        9299  +
            test_name,
        9300  +
            collection: Collection::V4,
        9301  +
        }
 7238   9302   
    }
 7239   9303   
 7240         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 7241         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 7242         -
        read(&path(name, "creq")).trim().to_string()
        9304  +
    /// Create a new test from the V4a test suite
        9305  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        9306  +
        Self {
        9307  +
            test_name,
        9308  +
            collection: Collection::V4A,
        9309  +
        }
 7243   9310   
    }
 7244   9311   
 7245         -
    pub(crate) fn test_sts(name: &str) -> String {
 7246         -
        read(&path(name, "sts"))
        9312  +
    /// Get the path to a file in this test suite directory
        9313  +
    fn path(&self, filename: &str) -> String {
        9314  +
        let dir = match self.collection {
        9315  +
            Collection::V4 => "v4",
        9316  +
            Collection::V4A => "v4a",
        9317  +
        };
        9318  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 7247   9319   
    }
 7248   9320   
 7249         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 7250         -
        test_parsed_request(name, "req")
        9321  +
    /// Get the HTTP request for the test
        9322  +
    pub(crate) fn request(&self) -> TestRequest {
        9323  +
        test_parsed_request(&self.path("request.txt"))
 7251   9324   
    }
 7252   9325   
 7253         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 7254         -
        test_parsed_request(name, "sreq")
        9326  +
    /// Get the signed HTTP request for the test
        9327  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        9328  +
        match signature_location {
        9329  +
            SignatureLocation::QueryParams => {
        9330  +
                test_parsed_request(&self.path("query-signed-request.txt"))
        9331  +
            }
        9332  +
            SignatureLocation::Headers => {
        9333  +
                test_parsed_request(&self.path("header-signed-request.txt"))
        9334  +
            }
        9335  +
        }
 7255   9336   
    }
 7256   9337   
 7257         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 7258         -
        test_parsed_request(name, "qpsreq")
        9338  +
    /// Get the canonical request for the test
        9339  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        9340  +
        match signature_location {
        9341  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        9342  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
        9343  +
        }
 7259   9344   
    }
 7260   9345   
 7261         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 7262         -
        let path = path(name, ext);
 7263         -
        match parse_request(read(&path).as_bytes()) {
 7264         -
            Ok(parsed) => parsed,
 7265         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        9346  +
    /// Get the string to sign for the test
        9347  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
        9348  +
        match signature_location {
        9349  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        9350  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 7266   9351   
        }
 7267   9352   
    }
 7268   9353   
 7269         -
    #[test]
 7270         -
    fn test_parse() {
 7271         -
        test_request("post-header-key-case");
        9354  +
    /// Get the signature for the test
        9355  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
        9356  +
        match signature_location {
        9357  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        9358  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        9359  +
        }
 7272   9360   
    }
 7273   9361   
 7274         -
    #[test]
 7275         -
    fn test_read_query_params() {
 7276         -
        test_request("get-vanilla-query-order-key-case");
        9362  +
    /// Get the test context for the test
        9363  +
    pub(crate) fn context(&self) -> TestContext {
        9364  +
        let context = read(&self.path("context.json"));
        9365  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        9366  +
        tc_builder.build()
 7277   9367   
    }
 7278   9368   
}
 7279   9369   
 7280         -
#[cfg(feature = "sigv4a")]
 7281         -
pub(crate) mod v4a {
 7282         -
    use super::*;
 7283         -
    use crate::http_request::{
 7284         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 7285         -
    };
 7286         -
    use aws_credential_types::Credentials;
 7287         -
    use aws_smithy_runtime_api::client::identity::Identity;
 7288         -
    use serde_derive::Deserialize;
 7289         -
    use std::time::{Duration, SystemTime};
 7290         -
    use time::format_description::well_known::Rfc3339;
 7291         -
    use time::OffsetDateTime;
 7292         -
 7293         -
    fn path(test_name: &str, definition_name: &str) -> String {
 7294         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        9370  +
fn test_parsed_request(path: &str) -> TestRequest {
        9371  +
    match parse_request(read(path).as_bytes()) {
        9372  +
        Ok(parsed) => parsed,
        9373  +
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 7295   9374   
    }
        9375  +
}
 7296   9376   
 7297         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 7298         -
        test_parsed_request(&path(name, "request"))
 7299         -
    }
        9377  +
fn new_v4_signing_params_from_context(
        9378  +
    test_context: &'_ TestContext,
        9379  +
    signature_location: SignatureLocation,
        9380  +
) -> crate::http_request::SigningParams<'_> {
        9381  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        9382  +
    params.settings.signature_location = signature_location;
        9383  +
    params.into()
        9384  +
}
 7300   9385   
 7301         -
    pub(crate) fn test_canonical_request(
 7302         -
        name: &str,
 7303         -
        signature_location: SignatureLocation,
 7304         -
    ) -> String {
 7305         -
        match signature_location {
 7306         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 7307         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        9386  +
/// Run the given test from the v4 suite for both header and query
        9387  +
/// signature locations
        9388  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        9389  +
    run_v4_test(test_name, SignatureLocation::Headers);
        9390  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        9391  +
}
        9392  +
        9393  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        9394  +
    assert_eq!(expected.scheme(), actual.scheme());
        9395  +
    assert_eq!(expected.authority(), actual.authority());
        9396  +
    assert_eq!(expected.path(), actual.path());
        9397  +
        9398  +
    // query params may be out of order
        9399  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        9400  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        9401  +
    expected_params.sort();
        9402  +
        9403  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        9404  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        9405  +
    actual_params.sort();
        9406  +
        9407  +
    assert_eq!(expected_params, actual_params);
        9408  +
}
        9409  +
        9410  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        9411  +
    let expected = expected.as_http_request();
        9412  +
    let actual = actual;
        9413  +
    assert_eq!(expected.method(), actual.method());
        9414  +
    assert_eq!(
        9415  +
        expected.headers().len(),
        9416  +
        actual.headers().len(),
        9417  +
        "extra or missing headers"
        9418  +
    );
        9419  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        9420  +
    assert_uri_eq(expected.uri(), actual.uri());
        9421  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        9422  +
}
        9423  +
        9424  +
/// Run the given test from the v4 suite for the given signature location
        9425  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        9426  +
    let test = SigningSuiteTest::v4(test_name);
        9427  +
    let tc = test.context();
        9428  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        9429  +
        9430  +
    let req = test.request();
        9431  +
    let expected_creq = test.canonical_request(signature_location);
        9432  +
    let signable_req = SignableRequest::from(&req);
        9433  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        9434  +
        9435  +
    // check canonical request
        9436  +
    assert_eq!(
        9437  +
        expected_creq,
        9438  +
        actual_creq.to_string(),
        9439  +
        "canonical request didn't match (signature location: {signature_location:?})"
        9440  +
    );
        9441  +
        9442  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        9443  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        9444  +
    let actual_string_to_sign = StringToSign::new_v4(
        9445  +
        *params.time(),
        9446  +
        params.region().unwrap(),
        9447  +
        params.name(),
        9448  +
        hashed_creq,
        9449  +
    )
        9450  +
    .to_string();
        9451  +
        9452  +
    // check string to sign
        9453  +
    assert_eq!(
        9454  +
        expected_string_to_sign, actual_string_to_sign,
        9455  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        9456  +
    );
        9457  +
        9458  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        9459  +
    let mut signed = req.as_http_request();
        9460  +
    out.output.apply_to_request_http0x(&mut signed);
        9461  +
        9462  +
    // check signature
        9463  +
    assert_eq!(
        9464  +
        test.signature(signature_location),
        9465  +
        out.signature,
        9466  +
        "signature didn't match (signature location: {signature_location:?})"
        9467  +
    );
        9468  +
        9469  +
    let expected = test.signed_request(signature_location);
        9470  +
    assert_requests_eq(expected, signed);
        9471  +
}
        9472  +
        9473  +
/// Test suite context.json
        9474  +
pub(crate) struct TestContext {
        9475  +
    pub(crate) identity: Identity,
        9476  +
    pub(crate) expiration_in_seconds: u64,
        9477  +
    pub(crate) normalize: bool,
        9478  +
    pub(crate) region: String,
        9479  +
    pub(crate) service: String,
        9480  +
    pub(crate) timestamp: String,
        9481  +
    pub(crate) omit_session_token: bool,
        9482  +
    pub(crate) sign_body: bool,
        9483  +
}
        9484  +
        9485  +
// Serde has limitations requiring this odd workaround.
        9486  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        9487  +
fn return_true() -> bool {
        9488  +
    true
        9489  +
}
        9490  +
        9491  +
#[derive(serde_derive::Deserialize)]
        9492  +
pub(crate) struct TestContextBuilder {
        9493  +
    credentials: TestContextCreds,
        9494  +
    expiration_in_seconds: u64,
        9495  +
    normalize: bool,
        9496  +
    region: String,
        9497  +
    service: String,
        9498  +
    timestamp: String,
        9499  +
    #[serde(default)]
        9500  +
    omit_session_token: bool,
        9501  +
    #[serde(default = "return_true")]
        9502  +
    sign_body: bool,
        9503  +
}
        9504  +
        9505  +
impl TestContextBuilder {
        9506  +
    pub(crate) fn build(self) -> TestContext {
        9507  +
        let identity = Identity::new(
        9508  +
            Credentials::from_keys(
        9509  +
                &self.credentials.access_key_id,
        9510  +
                &self.credentials.secret_access_key,
        9511  +
                self.credentials.token.clone(),
        9512  +
            ),
        9513  +
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
        9514  +
        );
        9515  +
        9516  +
        TestContext {
        9517  +
            identity,
        9518  +
            expiration_in_seconds: self.expiration_in_seconds,
        9519  +
            normalize: self.normalize,
        9520  +
            region: self.region,
        9521  +
            service: self.service,
        9522  +
            timestamp: self.timestamp,
        9523  +
            omit_session_token: self.omit_session_token,
        9524  +
            sign_body: self.sign_body,
 7308   9525   
        }
 7309   9526   
    }
        9527  +
}
 7310   9528   
 7311         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
 7312         -
        match signature_location {
 7313         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 7314         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        9529  +
#[derive(serde_derive::Deserialize)]
        9530  +
pub(crate) struct TestContextCreds {
        9531  +
    access_key_id: String,
        9532  +
    secret_access_key: String,
        9533  +
    token: Option<String>,
        9534  +
}
        9535  +
        9536  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        9537  +
    fn from(tc: &'a TestContext) -> Self {
        9538  +
        crate::sign::v4::SigningParams {
        9539  +
            identity: &tc.identity,
        9540  +
            region: &tc.region,
        9541  +
            name: &tc.service,
        9542  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        9543  +
                .unwrap()
        9544  +
                .into(),
        9545  +
            settings: SigningSettings {
        9546  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        9547  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        9548  +
                uri_path_normalization_mode: tc.normalize.into(),
        9549  +
                session_token_mode: if tc.omit_session_token {
        9550  +
                    SessionTokenMode::Exclude
        9551  +
                } else {
        9552  +
                    SessionTokenMode::Include
        9553  +
                },
        9554  +
                payload_checksum_kind: if tc.sign_body {
        9555  +
                    PayloadChecksumKind::XAmzSha256
        9556  +
                } else {
        9557  +
                    PayloadChecksumKind::NoHeader
        9558  +
                },
        9559  +
                ..Default::default()
        9560  +
            },
 7315   9561   
        }
 7316   9562   
    }
        9563  +
}
 7317   9564   
 7318         -
    fn test_parsed_request(path: &str) -> TestRequest {
 7319         -
        match parse_request(read(path).as_bytes()) {
 7320         -
            Ok(parsed) => parsed,
 7321         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
 7322         -
        }
        9565  +
#[cfg(feature = "sigv4a")]
        9566  +
pub(crate) mod v4a {
        9567  +
    use super::*;
        9568  +
    use crate::http_request::{
        9569  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        9570  +
    };
        9571  +
    use crate::sign::v4a;
        9572  +
    use p256::ecdsa::signature::{Signature, Verifier};
        9573  +
    use p256::ecdsa::{DerSignature, SigningKey};
        9574  +
    use std::time::Duration;
        9575  +
    use time::format_description::well_known::Rfc3339;
        9576  +
    use time::OffsetDateTime;
        9577  +
        9578  +
    fn new_v4a_signing_params_from_context(
        9579  +
        test_context: &'_ TestContext,
        9580  +
        signature_location: SignatureLocation,
        9581  +
    ) -> crate::http_request::SigningParams<'_> {
        9582  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        9583  +
        params.settings.signature_location = signature_location;
        9584  +
        params.into()
 7323   9585   
    }
 7324   9586   
 7325         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 7326         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 7327         -
        let context = read(&path);
 7328         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 7329         -
        tc_builder.build()
        9587  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        9588  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        9589  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
 7330   9590   
    }
 7331   9591   
 7332         -
    pub(crate) struct TestContext {
 7333         -
        pub(crate) identity: Identity,
 7334         -
        pub(crate) expiration_in_seconds: u64,
 7335         -
        pub(crate) normalize: bool,
 7336         -
        pub(crate) region: String,
 7337         -
        pub(crate) service: String,
 7338         -
        pub(crate) timestamp: String,
 7339         -
        pub(crate) omit_session_token: bool,
 7340         -
        pub(crate) sign_body: bool,
        9592  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        9593  +
        let test = SigningSuiteTest::v4a(test_name);
        9594  +
        let tc = test.context();
        9595  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        9596  +
        9597  +
        let req = test.request();
        9598  +
        let expected_creq = test.canonical_request(signature_location);
        9599  +
        let signable_req = SignableRequest::from(&req);
        9600  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        9601  +
        9602  +
        assert_eq!(
        9603  +
            expected_creq,
        9604  +
            actual_creq.to_string(),
        9605  +
            "canonical request didn't match (signature location: {signature_location:?})"
        9606  +
        );
        9607  +
        9608  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        9609  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        9610  +
        let actual_string_to_sign = StringToSign::new_v4a(
        9611  +
            *params.time(),
        9612  +
            params.region_set().unwrap(),
        9613  +
            params.name(),
        9614  +
            hashed_creq,
        9615  +
        )
        9616  +
        .to_string();
        9617  +
        9618  +
        assert_eq!(
        9619  +
            expected_string_to_sign, actual_string_to_sign,
        9620  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        9621  +
        );
        9622  +
        9623  +
        let out = sign(signable_req, &params).unwrap();
        9624  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        9625  +
        out.output
        9626  +
            .apply_to_request_http0x(&mut req.as_http_request());
        9627  +
        9628  +
        let creds = params.credentials().unwrap();
        9629  +
        let signing_key =
        9630  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        9631  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        9632  +
        let sig = sig
        9633  +
            .try_into()
        9634  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        9635  +
        9636  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        9637  +
        let peer_public_key = signing_key.verifying_key();
        9638  +
        let sts = actual_string_to_sign.as_bytes();
        9639  +
        peer_public_key.verify(sts, &sig).unwrap();
        9640  +
        // TODO(sigv4a) - use public.key.json as verifying key?
 7341   9641   
    }
 7342   9642   
 7343   9643   
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 7344   9644   
        fn from(tc: &'a TestContext) -> Self {
 7345   9645   
            crate::sign::v4a::SigningParams {
 7346   9646   
                identity: &tc.identity,
 7347   9647   
                region_set: &tc.region,
 7348   9648   
                name: &tc.service,
 7349   9649   
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 7350   9650   
                    .unwrap()
 7351   9651   
                    .into(),
 7352   9652   
                settings: SigningSettings {
 7353   9653   
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 7354   9654   
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 7355   9655   
                    uri_path_normalization_mode: tc.normalize.into(),
 7356   9656   
                    session_token_mode: if tc.omit_session_token {
 7357   9657   
                        SessionTokenMode::Exclude
 7358   9658   
                    } else {
 7359   9659   
                        SessionTokenMode::Include
 7360   9660   
                    },
 7361   9661   
                    payload_checksum_kind: if tc.sign_body {
 7362   9662   
                        PayloadChecksumKind::XAmzSha256
 7363   9663   
                    } else {
 7364   9664   
                        PayloadChecksumKind::NoHeader
 7365   9665   
                    },
 7366   9666   
                    ..Default::default()
 7367   9667   
                },
 7368   9668   
            }
 7369   9669   
        }
 7370   9670   
    }
 7371   9671   
 7372         -
    // Serde has limitations requiring this odd workaround.
 7373         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 7374         -
    fn return_true() -> bool {
 7375         -
        true
 7376         -
    }
 7377         -
 7378         -
    #[derive(Deserialize)]
 7379         -
    pub(crate) struct TestContextBuilder {
 7380         -
        credentials: TestContextCreds,
 7381         -
        expiration_in_seconds: u64,
 7382         -
        normalize: bool,
 7383         -
        region: String,
 7384         -
        service: String,
 7385         -
        timestamp: String,
 7386         -
        #[serde(default)]
 7387         -
        omit_session_token: bool,
 7388         -
        #[serde(default = "return_true")]
 7389         -
        sign_body: bool,
 7390         -
    }
 7391         -
 7392         -
    impl TestContextBuilder {
 7393         -
        pub(crate) fn build(self) -> TestContext {
 7394         -
            let identity = Identity::new(
 7395         -
                Credentials::from_keys(
 7396         -
                    &self.credentials.access_key_id,
 7397         -
                    &self.credentials.secret_access_key,
 7398         -
                    self.credentials.token.clone(),
 7399         -
                ),
 7400         -
                Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 7401         -
            );
 7402         -
 7403         -
            TestContext {
 7404         -
                identity,
 7405         -
                expiration_in_seconds: self.expiration_in_seconds,
 7406         -
                normalize: self.normalize,
 7407         -
                region: self.region,
 7408         -
                service: self.service,
 7409         -
                timestamp: self.timestamp,
 7410         -
                omit_session_token: self.omit_session_token,
 7411         -
                sign_body: self.sign_body,
 7412         -
            }
 7413         -
        }
 7414         -
    }
 7415         -
 7416         -
    #[derive(Deserialize)]
 7417         -
    pub(crate) struct TestContextCreds {
 7418         -
        access_key_id: String,
 7419         -
        secret_access_key: String,
 7420         -
        token: Option<String>,
 7421         -
    }
 7422         -
 7423   9672   
    #[test]
 7424   9673   
    fn test_parse() {
 7425         -
        let req = test_request("post-header-key-case");
        9674  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 7426   9675   
        assert_eq!(req.method, "POST");
 7427   9676   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 7428   9677   
        assert!(req.headers.is_empty());
 7429   9678   
    }
 7430   9679   
 7431   9680   
    #[test]
 7432   9681   
    fn test_read_query_params() {
 7433         -
        let req = test_request("get-header-value-trim");
        9682  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 7434   9683   
        assert_eq!(req.method, "GET");
 7435   9684   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 7436   9685   
        assert!(!req.headers.is_empty());
 7437   9686   
    }
 7438   9687   
}
 7439   9688   
 7440   9689   
fn read(path: &str) -> String {
 7441   9690   
    println!("Loading `{}` for test case...", path);
 7442   9691   
    let v = {
 7443   9692   
        match std::fs::read_to_string(path) {
 7444   9693   
            // This replacement is necessary for tests to pass on Windows, as reading the
 7445   9694   
            // test snapshots from the file system results in CRLF line endings being inserted.
 7446   9695   
            Ok(value) => value.replace("\r\n", "\n"),
 7447   9696   
            Err(err) => {
 7448   9697   
                panic!("failed to load test case `{}`: {}", path, err);
 7449   9698   
            }
 7450   9699   
        }
 7451   9700   
    };
 7452   9701   
 7453   9702   
    v.trim().to_string()
 7454   9703   
}
 7455   9704   
 7456   9705   
pub(crate) struct TestRequest {
 7457   9706   
    pub(crate) uri: String,
 7458   9707   
    pub(crate) method: String,
 7459   9708   
    pub(crate) headers: Vec<(String, String)>,
 7460   9709   
    pub(crate) body: TestSignedBody,
 7461   9710   
}
 7462   9711   
 7463   9712   
pub(crate) enum TestSignedBody {
 7464   9713   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 7465   9714   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 7466   9715   
                    )
 7467   9716   
                })
 7468   9717   
                .collect::<Vec<_>>(),
 7469   9718   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 7470   9719   
        }
 7471   9720   
    }
 7472   9721   
}
 7473   9722   
 7474   9723   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 7475   9724   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 7476   9725   
        SignableRequest::new(
 7477   9726   
            &request.method,
 7478   9727   
            &request.uri,
 7479   9728   
            request
 7480   9729   
                .headers
 7481   9730   
                .iter()
 7482   9731   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 7483   9732   
            request.body.as_signable_body(),
 7484   9733   
        )
 7485   9734   
        .expect("URI MUST be valid")
 7486   9735   
    }
 7487   9736   
}
 7488   9737   
 7489   9738   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 7490   9739   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 7491   9740   
    // httparse 1.5 requires two trailing newlines to head the header section.
 7492   9741   
    let mut with_newline = Vec::from(s);
 7493   9742   
    with_newline.push(b'\n');
 7494   9743   
    let mut req = httparse::Request::new(&mut headers);
 7495         -
    let _ = req.parse(&with_newline).unwrap();
        9744  +
    let status = req.parse(&with_newline).unwrap();
        9745  +
        9746  +
    let body = if status.is_complete() {
        9747  +
        let body_offset = status.unwrap();
        9748  +
        // ignore the newline we added, take from original
        9749  +
        &s[body_offset..]
        9750  +
    } else {
        9751  +
        &[]
        9752  +
    };
 7496   9753   
 7497   9754   
    let mut uri_builder = Uri::builder().scheme("https");
 7498   9755   
    if let Some(path) = req.path {
 7499   9756   
        uri_builder = uri_builder.path_and_query(path);
 7500   9757   
    }
 7501   9758   
 7502   9759   
    let mut headers = vec![];
 7503   9760   
    for header in req.headers {
 7504   9761   
        let name = header.name.to_lowercase();
 7505   9762   
        if name == "host" {
 7506   9763   
            uri_builder = uri_builder.authority(header.value);
 7507   9764   
        } else if !name.is_empty() {
 7508   9765   
            headers.push((
 7509   9766   
                header.name.to_string(),
 7510   9767   
                std::str::from_utf8(header.value)?.to_string(),
 7511   9768   
            ));
 7512   9769   
        }
 7513   9770   
    }
 7514   9771   
 7515   9772   
    Ok(TestRequest {
 7516   9773   
        uri: uri_builder.build()?.to_string(),
 7517   9774   
        method: req.method.unwrap().to_string(),
 7518   9775   
        headers,
 7519         -
        body: TestSignedBody::Bytes(vec![]),
        9776  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 7520   9777   
    })
 7521   9778   
}
 7522   9779   
 7523   9780   
#[test]
 7524   9781   
fn test_parse_headers() {
 7525   9782   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 7526   9783   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 7527   9784   
    assert_eq!(
 7528   9785   
        httparse::parse_headers(buf, &mut headers),
 7529   9786   
        Ok(httparse::Status::Complete((
 7530   9787   
            56,
 7531   9788   
            &[
 7532   9789   
                httparse::Header {
 7533   9790   
                    name: "Host",
 7534   9791   
                    value: b"example.amazonaws.com",
 7535   9792   
                },
 7536   9793   
                httparse::Header {
 7537   9794   
                    name: "X-Amz-Date",
 7538   9795   
                    value: b"20150830T123600Z",
 7539   9796   
                }
 7540   9797   
            ][..]
 7541   9798   
        )))
 7542   9799   
    );
 7543   9800   
}
 7544   9801   
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
 7545   9802   
index a208453..fc00249 100644
 7546         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        9803  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 7547   9804   
@@ -168,52 +168,54 @@ pub mod signing_params {
 7548   9805   
        );
 7549   9806   
 7550   9807   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 7551   9808   
        /// a required argument was not given.
 7552   9809   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 7553   9810   
            Ok(SigningParams {
 7554   9811   
                identity: self
 7555   9812   
                    .identity
 7556   9813   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 7557   9814   
                region: self
 7558   9815   
                    .region
 7559   9816   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 7560   9817   
                name: self
 7561   9818   
                    .name
 7562   9819   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 7563   9820   
                time: self
 7564   9821   
                    .time
 7565   9822   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 7566   9823   
                settings: self
 7567   9824   
                    .settings
 7568   9825   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 7569   9826   
            })
 7570   9827   
        }
 7571   9828   
    }
 7572   9829   
}
 7573   9830   
 7574   9831   
#[cfg(test)]
 7575   9832   
mod tests {
 7576   9833   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 7577   9834   
    use crate::date_time::test_parsers::parse_date_time;
 7578         -
    use crate::http_request::test;
 7579   9835   
 7580   9836   
    #[test]
 7581   9837   
    fn test_signature_calculation() {
 7582   9838   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 7583         -
        let creq = test::v4::test_canonical_request("iam");
        9839  +
        let creq = r#"AWS4-HMAC-SHA256
        9840  +
20150830T123600Z
        9841  +
20150830/us-east-1/iam/aws4_request
        9842  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 7584   9843   
        let time = parse_date_time("20150830T123600Z").unwrap();
 7585   9844   
 7586   9845   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 7587   9846   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 7588   9847   
 7589   9848   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 7590   9849   
        assert_eq!(expected, &signature);
 7591   9850   
    }
 7592   9851   
 7593   9852   
    #[test]
 7594   9853   
    fn sign_payload_empty_string() {
 7595   9854   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 7596   9855   
        let actual = sha256_hex_string([]);
 7597   9856   
        assert_eq!(expected, actual);
 7598   9857   
    }
 7599   9858   
}
 7600   9859   
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
 7601   9860   
index ce78c38..8c2f591 100644
 7602         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
        9861  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 7603   9862   
@@ -1,43 +1,43 @@
 7604   9863   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7605   9864   
[package]
 7606   9865   
name = "aws-smithy-checksums"
 7607   9866   
version = "0.63.5"
 7608   9867   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 7609   9868   
description = "Checksum calculation and verification callbacks"
 7610   9869   
edition = "2021"
 7611   9870   
license = "Apache-2.0"
 7612   9871   
repository = "https://github.com/smithy-lang/smithy-rs"
 7613   9872   
[package.metadata.docs.rs]
 7614   9873   
all-features = true
 7615   9874   
targets = ["x86_64-unknown-linux-gnu"]
 7616   9875   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7617   9876   
rustdoc-args = ["--cfg", "docsrs"]
 7618   9877   
 7619   9878   
[dependencies]
 7620   9879   
bytes = "1.10.0"
 7621   9880   
crc-fast = "1.3.0"
 7622   9881   
hex = "0.4.3"
 7623   9882   
http = "0.2.9"
 7624   9883   
http-body = "0.4.5"
 7625   9884   
md-5 = "0.10"
 7626   9885   
pin-project-lite = "0.2.14"
 7627   9886   
sha1 = "0.10"
 7628   9887   
sha2 = "0.10"
 7629   9888   
tracing = "0.1.40"
 7630   9889   
 7631   9890   
[dependencies.aws-smithy-http]
 7632   9891   
path = "../aws-smithy-http"
 7633         -
version = "0.62.2"
        9892  +
version = "0.62.3"
 7634   9893   
 7635   9894   
[dependencies.aws-smithy-types]
 7636   9895   
path = "../aws-smithy-types"
 7637   9896   
version = "1.3.2"
 7638   9897   
 7639   9898   
[dev-dependencies]
 7640   9899   
bytes-utils = "0.1.2"
 7641   9900   
pretty_assertions = "1.3"
 7642   9901   
tracing-test = "0.2.1"
 7643   9902   
 7644   9903   
[dev-dependencies.tokio]
 7645   9904   
version = "1.23.1"
 7646   9905   
features = ["macros", "rt"]
 7647   9906   
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
 7648   9907   
index 970c99e..d3c7a49 100644
 7649         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
        9908  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 7650   9909   
@@ -1,34 +1,34 @@
 7651   9910   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7652   9911   
[package]
 7653   9912   
name = "aws-smithy-http"
 7654         -
version = "0.62.2"
        9913  +
version = "0.62.3"
 7655   9914   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7656   9915   
description = "Smithy HTTP logic for smithy-rs."
 7657   9916   
edition = "2021"
 7658   9917   
license = "Apache-2.0"
 7659   9918   
repository = "https://github.com/smithy-lang/smithy-rs"
 7660   9919   
[package.metadata.docs.rs]
 7661   9920   
all-features = true
 7662   9921   
targets = ["x86_64-unknown-linux-gnu"]
 7663   9922   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7664   9923   
rustdoc-args = ["--cfg", "docsrs"]
 7665   9924   
 7666   9925   
[features]
 7667   9926   
event-stream = ["aws-smithy-eventstream"]
 7668   9927   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 7669   9928   
 7670   9929   
[dependencies]
 7671   9930   
bytes = "1.10.0"
 7672   9931   
bytes-utils = "0.1"
 7673   9932   
percent-encoding = "2.3.1"
 7674   9933   
pin-project-lite = "0.2.14"
 7675   9934   
pin-utils = "0.1.0"
 7676   9935   
tracing = "0.1.40"
 7677   9936   
futures-core = "0.3.31"
 7678   9937   
 7679   9938   
[dependencies.aws-smithy-eventstream]
 7680   9939   
path = "../aws-smithy-eventstream"
 7681   9940   
optional = true
 7682   9941   
version = "0.60.10"
 7683   9942   
 7684   9943   
[dependencies.aws-smithy-runtime-api]
 7685   9944   
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
 7686   9945   
index 508f7a2..361545e 100644
 7687         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
        9946  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 7688   9947   
@@ -1,27 +1,27 @@
 7689   9948   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7690   9949   
[[bin]]
 7691   9950   
name = "read_many_from_str"
 7692   9951   
path = "fuzz_targets/read_many_from_str.rs"
 7693   9952   
test = false
 7694   9953   
doc = false
 7695   9954   
 7696   9955   
[package]
 7697   9956   
name = "aws-smithy-http-fuzz"
 7698   9957   
version = "0.0.0"
 7699   9958   
authors = ["Automatically generated"]
 7700   9959   
publish = false
 7701   9960   
edition = "2021"
 7702   9961   
 7703   9962   
[package.metadata]
 7704   9963   
cargo-fuzz = true
 7705   9964   
 7706   9965   
[dependencies]
 7707   9966   
libfuzzer-sys = "=0.4.7"
 7708   9967   
http = "0.2.3"
 7709   9968   
 7710   9969   
[dependencies.aws-smithy-http]
 7711   9970   
path = ".."
 7712         -
version = "0.62.2"
        9971  +
version = "0.62.3"
 7713   9972   
 7714   9973   
[workspace]
 7715   9974   
members = ["."]
 7716   9975   
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
 7717   9976   
index fef41d0..7694da6 100644
 7718         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
        9977  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 7719   9978   
@@ -25,68 +25,73 @@ impl QueryWriter {
 7720   9979   
    pub fn new(uri: &Uri) -> Self {
 7721   9980   
        let new_path_and_query = uri
 7722   9981   
            .path_and_query()
 7723   9982   
            .map(|pq| pq.to_string())
 7724   9983   
            .unwrap_or_default();
 7725   9984   
        let prefix = if uri.query().is_none() {
 7726   9985   
            Some('?')
 7727   9986   
        } else if !uri.query().unwrap_or_default().is_empty() {
 7728   9987   
            Some('&')
 7729   9988   
        } else {
 7730   9989   
            None
 7731   9990   
        };
 7732   9991   
        QueryWriter {
 7733   9992   
            base_uri: uri.clone(),
 7734   9993   
            new_path_and_query,
 7735   9994   
            prefix,
 7736   9995   
        }
 7737   9996   
    }
 7738   9997   
 7739   9998   
    /// Clears all query parameters.
 7740   9999   
    pub fn clear_params(&mut self) {
 7741  10000   
        if let Some(index) = self.new_path_and_query.find('?') {
 7742  10001   
            self.new_path_and_query.truncate(index);
 7743  10002   
            self.prefix = Some('?');
 7744  10003   
        }
 7745  10004   
    }
 7746  10005   
 7747  10006   
    /// Inserts a new query parameter. The key and value are percent encoded
 7748  10007   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 7749  10008   
    pub fn insert(&mut self, k: &str, v: &str) {
       10009  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
       10010  +
    }
       10011  +
       10012  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
       10013  +
    /// as is.
       10014  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 7750  10015   
        if let Some(prefix) = self.prefix {
 7751  10016   
            self.new_path_and_query.push(prefix);
 7752  10017   
        }
 7753  10018   
        self.prefix = Some('&');
 7754         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
       10019  +
        self.new_path_and_query.push_str(encoded_k);
 7755  10020   
        self.new_path_and_query.push('=');
 7756         -
 7757         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
       10021  +
        self.new_path_and_query.push_str(encoded_v)
 7758  10022   
    }
 7759  10023   
 7760  10024   
    /// Returns just the built query string.
 7761  10025   
    pub fn build_query(self) -> String {
 7762  10026   
        self.build_uri().query().unwrap_or_default().to_string()
 7763  10027   
    }
 7764  10028   
 7765  10029   
    /// Returns a full [`Uri`] with the query string updated.
 7766  10030   
    pub fn build_uri(self) -> Uri {
 7767  10031   
        let mut parts = self.base_uri.into_parts();
 7768  10032   
        parts.path_and_query = Some(
 7769  10033   
            self.new_path_and_query
 7770  10034   
                .parse()
 7771  10035   
                .expect("adding query should not invalidate URI"),
 7772  10036   
        );
 7773  10037   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 7774  10038   
    }
 7775  10039   
}
 7776  10040   
 7777  10041   
#[cfg(test)]
 7778  10042   
mod test {
 7779  10043   
    use super::QueryWriter;
 7780  10044   
    use http_02x::Uri;
 7781  10045   
 7782  10046   
    #[test]
 7783  10047   
    fn empty_uri() {
 7784  10048   
        let uri = Uri::from_static("http://www.example.com");
 7785  10049   
        let mut query_writer = QueryWriter::new(&uri);
 7786  10050   
        query_writer.insert("key", "val%ue");
 7787  10051   
        query_writer.insert("another", "value");
 7788  10052   
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
 7789  10053   
index f108978..df7a9fe 100644
 7790         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
       10054  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 7791  10055   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 7792  10056   
 7793  10057   
[package.metadata.smithy-rs-release-tooling]
 7794  10058   
stable = true
 7795  10059   
[package.metadata.cargo-udeps.ignore]
 7796  10060   
normal = ["aws-smithy-http"]
 7797  10061   
 7798  10062   
[features]
 7799  10063   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 7800  10064   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 7801  10065   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 7802  10066   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 7803  10067   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 7804  10068   
rt-tokio = ["tokio/rt"]
 7805  10069   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 7806  10070   
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"]
 7807  10071   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 7808  10072   
 7809  10073   
[dependencies]
 7810  10074   
bytes = "1.10.0"
 7811  10075   
fastrand = "2.3.0"
 7812  10076   
pin-project-lite = "0.2.14"
 7813  10077   
pin-utils = "0.1.0"
 7814  10078   
tracing = "0.1.40"
 7815  10079   
 7816  10080   
[dependencies.aws-smithy-async]
 7817  10081   
path = "../aws-smithy-async"
 7818  10082   
version = "1.2.5"
 7819  10083   
 7820  10084   
[dependencies.aws-smithy-http]
 7821  10085   
path = "../aws-smithy-http"
 7822         -
version = "0.62.2"
       10086  +
version = "0.62.3"
 7823  10087   
 7824  10088   
[dependencies.aws-smithy-observability]
 7825  10089   
path = "../aws-smithy-observability"
 7826  10090   
version = "0.1.3"
 7827  10091   
 7828  10092   
[dependencies.aws-smithy-runtime-api]
 7829  10093   
path = "../aws-smithy-runtime-api"
 7830  10094   
version = "1.8.5"
 7831  10095   
 7832  10096   
[dependencies.aws-smithy-types]
 7833  10097   
path = "../aws-smithy-types"
 7834  10098   
features = ["http-body-0-4-x"]
 7835  10099   
version = "1.3.2"
 7836  10100   
 7837  10101   
[dependencies.aws-smithy-http-client]
 7838  10102   
path = "../aws-smithy-http-client"
 7839  10103   
optional = true
 7840  10104   
version = "1.0.6"
 7841  10105   
 7842  10106   
[dependencies.http-02x]
 7843  10107   
package = "http"
 7844  10108   
version = "0.2.9"
 7845  10109   
 7846  10110   
[dependencies.http-1x]
 7847  10111   
package = "http"
 7848  10112   
version = "1"
 7849  10113   
 7850  10114   
[dependencies.http-body-04x]
 7851  10115   
package = "http-body"
 7852  10116   
version = "0.4.5"
 7853  10117   
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
 7854  10118   
index 4e050c6..f58eb1c 100644
 7855         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
       10119  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 7856  10120   
@@ -1,33 +1,33 @@
 7857  10121   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7858  10122   
[package]
 7859  10123   
name = "aws-smithy-wasm"
 7860  10124   
version = "0.1.4"
 7861  10125   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 7862  10126   
description = "Smithy WebAssembly configuration for smithy-rs."
 7863  10127   
edition = "2021"
 7864  10128   
license = "Apache-2.0"
 7865  10129   
repository = "https://github.com/awslabs/smithy-rs"
 7866  10130   
[package.metadata.docs.rs]
 7867  10131   
all-features = true
 7868  10132   
targets = ["x86_64-unknown-linux-gnu"]
 7869  10133   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7870  10134   
rustdoc-args = ["--cfg", "docsrs"]
 7871  10135   
 7872  10136   
[dependencies]
 7873  10137   
bytes = "1.10.0"
 7874  10138   
http = "1.0.0"
 7875  10139   
tracing = "0.1.40"
 7876  10140   
wasi = "0.12.1"
 7877  10141   
 7878  10142   
[dependencies.aws-smithy-runtime-api]
 7879  10143   
path = "../aws-smithy-runtime-api"
 7880  10144   
features = ["http-1x"]
 7881  10145   
version = "1.8.5"
 7882  10146   
 7883  10147   
[dependencies.aws-smithy-http]
 7884  10148   
path = "../aws-smithy-http"
 7885         -
version = "0.62.2"
       10149  +
version = "0.62.3"
 7886  10150   
 7887  10151   
[dependencies.aws-smithy-types]
 7888  10152   
path = "../aws-smithy-types"
 7889  10153   
version = "1.3.2"
 7890  10154   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 7891  10155   
index a880648..139e808 100644
 7892         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
       10156  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 7893  10157   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 7894  10158   
edition = "2021"
 7895  10159   
license = "Apache-2.0"
 7896  10160   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7897  10161   
rust-version = "1.86.0"
 7898  10162   
readme = "README.md"
 7899  10163   
[package.metadata.smithy]
 7900  10164   
codegen-version = "ci"
 7901  10165   
[package.metadata.docs.rs]
 7902  10166   
all-features = true
 7903  10167   
targets = ["x86_64-unknown-linux-gnu"]
 7904  10168   
[dependencies.aws-credential-types]
 7905  10169   
path = "../aws-credential-types"
 7906  10170   
version = "1.2.4"
 7907  10171   
 7908  10172   
[dependencies.aws-runtime]
 7909  10173   
path = "../aws-runtime"
 7910  10174   
features = ["event-stream"]
 7911  10175   
version = "1.5.9"
 7912  10176   
 7913  10177   
[dependencies.aws-smithy-async]
 7914  10178   
path = "../aws-smithy-async"
 7915  10179   
version = "1.2.5"
 7916  10180   
 7917  10181   
[dependencies.aws-smithy-eventstream]
 7918  10182   
path = "../aws-smithy-eventstream"
 7919  10183   
version = "0.60.10"
 7920  10184   
 7921  10185   
[dependencies.aws-smithy-http]
 7922  10186   
path = "../aws-smithy-http"
 7923  10187   
features = ["event-stream"]
 7924         -
version = "0.62.2"
       10188  +
version = "0.62.3"
 7925  10189   
 7926  10190   
[dependencies.aws-smithy-json]
 7927  10191   
path = "../aws-smithy-json"
 7928  10192   
version = "0.61.4"
 7929  10193   
 7930  10194   
[dependencies.aws-smithy-runtime]
 7931  10195   
path = "../aws-smithy-runtime"
 7932  10196   
features = ["client"]
 7933  10197   
version = "1.8.5"
 7934  10198   
 7935  10199   
[dependencies.aws-smithy-runtime-api]
 7936  10200   
path = "../aws-smithy-runtime-api"
 7937  10201   
features = ["client", "http-02x"]
 7938  10202   
version = "1.8.5"
 7939  10203   
 7940  10204   
[dependencies.aws-smithy-types]
 7941  10205   
path = "../aws-smithy-types"
 7942  10206   
version = "1.3.2"
 7943  10207   
 7944  10208   
[dependencies.aws-types]
 7945  10209   
path = "../aws-types"
 7946  10210   
version = "1.3.8"
 7947  10211   
 7948  10212   
[dependencies.bytes]
 7949  10213   
version = "1.4.0"
 7950  10214   
 7951  10215   
[dependencies.fastrand]
 7952  10216   
version = "2.0.0"
 7953  10217   
 7954  10218   
[dependencies.http]
 7955  10219   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 7956  10220   
index 415ecc9..667d12b 100644
 7957         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
       10221  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 7958  10222   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 7959  10223   
edition = "2021"
 7960  10224   
license = "Apache-2.0"
 7961  10225   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7962  10226   
rust-version = "1.86.0"
 7963  10227   
readme = "README.md"
 7964  10228   
[package.metadata.smithy]
 7965  10229   
codegen-version = "ci"
 7966  10230   
[package.metadata.docs.rs]
 7967  10231   
all-features = true
 7968  10232   
targets = ["x86_64-unknown-linux-gnu"]
 7969  10233   
[dependencies.aws-credential-types]
 7970  10234   
path = "../aws-credential-types"
 7971  10235   
version = "1.2.4"
 7972  10236   
 7973  10237   
[dependencies.aws-runtime]
 7974  10238   
path = "../aws-runtime"
 7975  10239   
features = ["event-stream"]
 7976  10240   
version = "1.5.9"
 7977  10241   
 7978  10242   
[dependencies.aws-smithy-async]
 7979  10243   
path = "../aws-smithy-async"
 7980  10244   
version = "1.2.5"
 7981  10245   
 7982  10246   
[dependencies.aws-smithy-eventstream]
 7983  10247   
path = "../aws-smithy-eventstream"
 7984  10248   
version = "0.60.10"
 7985  10249   
 7986  10250   
[dependencies.aws-smithy-http]
 7987  10251   
path = "../aws-smithy-http"
 7988  10252   
features = ["event-stream"]
 7989         -
version = "0.62.2"
       10253  +
version = "0.62.3"
 7990  10254   
 7991  10255   
[dependencies.aws-smithy-json]
 7992  10256   
path = "../aws-smithy-json"
 7993  10257   
version = "0.61.4"
 7994  10258   
 7995  10259   
[dependencies.aws-smithy-runtime]
 7996  10260   
path = "../aws-smithy-runtime"
 7997  10261   
features = ["client"]
 7998  10262   
version = "1.8.5"
 7999  10263   
 8000  10264   
[dependencies.aws-smithy-runtime-api]
 8001  10265   
path = "../aws-smithy-runtime-api"
 8002  10266   
features = ["client", "http-02x"]
 8003  10267   
version = "1.8.5"
 8004  10268   
 8005  10269   
[dependencies.aws-smithy-types]
 8006  10270   
path = "../aws-smithy-types"
 8007  10271   
version = "1.3.2"
 8008  10272   
 8009  10273   
[dependencies.aws-types]
 8010  10274   
path = "../aws-types"
 8011  10275   
version = "1.3.8"
 8012  10276   
 8013  10277   
[dependencies.bytes]
 8014  10278   
version = "1.4.0"
 8015  10279   
 8016  10280   
[dependencies.fastrand]
 8017  10281   
version = "2.0.0"
 8018  10282   
 8019  10283   
[dependencies.http]
 8020  10284   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 8021  10285   
index 8871cab..ed88de6 100644
 8022         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
       10286  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 8023  10287   
@@ -1,61 +1,61 @@
 8024  10288   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8025  10289   
[package]
 8026  10290   
name = "aws-sdk-codecatalyst"
 8027  10291   
version = "0.0.0-local"
 8028  10292   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8029  10293   
description = "AWS SDK for Amazon CodeCatalyst"
 8030  10294   
edition = "2021"
 8031  10295   
license = "Apache-2.0"
 8032  10296   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8033  10297   
rust-version = "1.86.0"
 8034  10298   
readme = "README.md"
 8035  10299   
[package.metadata.smithy]
 8036  10300   
codegen-version = "ci"
 8037  10301   
[package.metadata.docs.rs]
 8038  10302   
all-features = true
 8039  10303   
targets = ["x86_64-unknown-linux-gnu"]
 8040  10304   
[dependencies.aws-credential-types]
 8041  10305   
path = "../aws-credential-types"
 8042  10306   
version = "1.2.4"
 8043  10307   
 8044  10308   
[dependencies.aws-runtime]
 8045  10309   
path = "../aws-runtime"
 8046  10310   
version = "1.5.9"
 8047  10311   
 8048  10312   
[dependencies.aws-smithy-async]
 8049  10313   
path = "../aws-smithy-async"
 8050  10314   
version = "1.2.5"
 8051  10315   
 8052  10316   
[dependencies.aws-smithy-http]
 8053  10317   
path = "../aws-smithy-http"
 8054         -
version = "0.62.2"
       10318  +
version = "0.62.3"
 8055  10319   
 8056  10320   
[dependencies.aws-smithy-json]
 8057  10321   
path = "../aws-smithy-json"
 8058  10322   
version = "0.61.4"
 8059  10323   
 8060  10324   
[dependencies.aws-smithy-runtime]
 8061  10325   
path = "../aws-smithy-runtime"
 8062  10326   
features = ["client", "http-auth"]
 8063  10327   
version = "1.8.5"
 8064  10328   
 8065  10329   
[dependencies.aws-smithy-runtime-api]
 8066  10330   
path = "../aws-smithy-runtime-api"
 8067  10331   
features = ["client", "http-02x", "http-auth"]
 8068  10332   
version = "1.8.5"
 8069  10333   
 8070  10334   
[dependencies.aws-smithy-types]
 8071  10335   
path = "../aws-smithy-types"
 8072  10336   
version = "1.3.2"
 8073  10337   
 8074  10338   
[dependencies.aws-types]
 8075  10339   
path = "../aws-types"
 8076  10340   
version = "1.3.8"
 8077  10341   
 8078  10342   
[dependencies.bytes]
 8079  10343   
version = "1.4.0"
 8080  10344   
 8081  10345   
[dependencies.fastrand]
 8082  10346   
version = "2.0.0"
 8083  10347   
 8084  10348   
[dependencies.http]
 8085  10349   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 8086  10350   
index 89573ff..05238af 100644
 8087         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
       10351  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 8088  10352   
@@ -1,61 +1,61 @@
 8089  10353   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8090  10354   
[package]
 8091  10355   
name = "aws-sdk-config"
 8092  10356   
version = "0.0.0-local"
 8093  10357   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8094  10358   
description = "AWS SDK for AWS Config"
 8095  10359   
edition = "2021"
 8096  10360   
license = "Apache-2.0"
 8097  10361   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8098  10362   
rust-version = "1.86.0"
 8099  10363   
readme = "README.md"
 8100  10364   
[package.metadata.smithy]
 8101  10365   
codegen-version = "ci"
 8102  10366   
[package.metadata.docs.rs]
 8103  10367   
all-features = true
 8104  10368   
targets = ["x86_64-unknown-linux-gnu"]
 8105  10369   
[dependencies.aws-credential-types]
 8106  10370   
path = "../aws-credential-types"
 8107  10371   
version = "1.2.4"
 8108  10372   
 8109  10373   
[dependencies.aws-runtime]
 8110  10374   
path = "../aws-runtime"
 8111  10375   
version = "1.5.9"
 8112  10376   
 8113  10377   
[dependencies.aws-smithy-async]
 8114  10378   
path = "../aws-smithy-async"
 8115  10379   
version = "1.2.5"
 8116  10380   
 8117  10381   
[dependencies.aws-smithy-http]
 8118  10382   
path = "../aws-smithy-http"
 8119         -
version = "0.62.2"
       10383  +
version = "0.62.3"
 8120  10384   
 8121  10385   
[dependencies.aws-smithy-json]
 8122  10386   
path = "../aws-smithy-json"
 8123  10387   
version = "0.61.4"
 8124  10388   
 8125  10389   
[dependencies.aws-smithy-runtime]
 8126  10390   
path = "../aws-smithy-runtime"
 8127  10391   
features = ["client"]
 8128  10392   
version = "1.8.5"
 8129  10393   
 8130  10394   
[dependencies.aws-smithy-runtime-api]
 8131  10395   
path = "../aws-smithy-runtime-api"
 8132  10396   
features = ["client", "http-02x"]
 8133  10397   
version = "1.8.5"
 8134  10398   
 8135  10399   
[dependencies.aws-smithy-types]
 8136  10400   
path = "../aws-smithy-types"
 8137  10401   
version = "1.3.2"
 8138  10402   
 8139  10403   
[dependencies.aws-types]
 8140  10404   
path = "../aws-types"
 8141  10405   
version = "1.3.8"
 8142  10406   
 8143  10407   
[dependencies.bytes]
 8144  10408   
version = "1.4.0"
 8145  10409   
 8146  10410   
[dependencies.fastrand]
 8147  10411   
version = "2.0.0"
 8148  10412   
 8149  10413   
[dependencies.http]
 8150  10414   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 8151  10415   
index d397c58..2c1062b 100644
 8152         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
       10416  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 8153  10417   
@@ -1,61 +1,61 @@
 8154  10418   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8155  10419   
[package]
 8156  10420   
name = "aws-sdk-dynamodb"
 8157  10421   
version = "0.0.0-local"
 8158  10422   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8159  10423   
description = "AWS SDK for Amazon DynamoDB"
 8160  10424   
edition = "2021"
 8161  10425   
license = "Apache-2.0"
 8162  10426   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8163  10427   
rust-version = "1.86.0"
 8164  10428   
readme = "README.md"
 8165  10429   
[package.metadata.smithy]
 8166  10430   
codegen-version = "ci"
 8167  10431   
[package.metadata.docs.rs]
 8168  10432   
all-features = true
 8169  10433   
targets = ["x86_64-unknown-linux-gnu"]
 8170  10434   
[dependencies.aws-credential-types]
 8171  10435   
path = "../aws-credential-types"
 8172  10436   
version = "1.2.4"
 8173  10437   
 8174  10438   
[dependencies.aws-runtime]
 8175  10439   
path = "../aws-runtime"
 8176  10440   
version = "1.5.9"
 8177  10441   
 8178  10442   
[dependencies.aws-smithy-async]
 8179  10443   
path = "../aws-smithy-async"
 8180  10444   
version = "1.2.5"
 8181  10445   
 8182  10446   
[dependencies.aws-smithy-http]
 8183  10447   
path = "../aws-smithy-http"
 8184         -
version = "0.62.2"
       10448  +
version = "0.62.3"
 8185  10449   
 8186  10450   
[dependencies.aws-smithy-json]
 8187  10451   
path = "../aws-smithy-json"
 8188  10452   
version = "0.61.4"
 8189  10453   
 8190  10454   
[dependencies.aws-smithy-runtime]
 8191  10455   
path = "../aws-smithy-runtime"
 8192  10456   
features = ["client"]
 8193  10457   
version = "1.8.5"
 8194  10458   
 8195  10459   
[dependencies.aws-smithy-runtime-api]
 8196  10460   
path = "../aws-smithy-runtime-api"
 8197  10461   
features = ["client", "http-02x"]
 8198  10462   
version = "1.8.5"
 8199  10463   
 8200  10464   
[dependencies.aws-smithy-types]
 8201  10465   
path = "../aws-smithy-types"
 8202  10466   
version = "1.3.2"
 8203  10467   
 8204  10468   
[dependencies.aws-types]
 8205  10469   
path = "../aws-types"
 8206  10470   
version = "1.3.8"
 8207  10471   
 8208  10472   
[dependencies.bytes]
 8209  10473   
version = "1.4.0"
 8210  10474   
 8211  10475   
[dependencies.fastrand]
 8212  10476   
version = "2.0.0"
 8213  10477   
 8214  10478   
[dependencies.http]
 8215  10479   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 8216  10480   
index c0ba315..46168af 100644
 8217         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
       10481  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 8218  10482   
@@ -1,61 +1,61 @@
 8219  10483   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8220  10484   
[package]
 8221  10485   
name = "aws-sdk-ec2"
 8222  10486   
version = "0.0.0-local"
 8223  10487   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8224  10488   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 8225  10489   
edition = "2021"
 8226  10490   
license = "Apache-2.0"
 8227  10491   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8228  10492   
rust-version = "1.86.0"
 8229  10493   
readme = "README.md"
 8230  10494   
[package.metadata.smithy]
 8231  10495   
codegen-version = "ci"
 8232  10496   
[package.metadata.docs.rs]
 8233  10497   
all-features = true
 8234  10498   
targets = ["x86_64-unknown-linux-gnu"]
 8235  10499   
[dependencies.aws-credential-types]
 8236  10500   
path = "../aws-credential-types"
 8237  10501   
version = "1.2.4"
 8238  10502   
 8239  10503   
[dependencies.aws-runtime]
 8240  10504   
path = "../aws-runtime"
 8241  10505   
version = "1.5.9"
 8242  10506   
 8243  10507   
[dependencies.aws-smithy-async]
 8244  10508   
path = "../aws-smithy-async"
 8245  10509   
version = "1.2.5"
 8246  10510   
 8247  10511   
[dependencies.aws-smithy-http]
 8248  10512   
path = "../aws-smithy-http"
 8249         -
version = "0.62.2"
       10513  +
version = "0.62.3"
 8250  10514   
 8251  10515   
[dependencies.aws-smithy-json]
 8252  10516   
path = "../aws-smithy-json"
 8253  10517   
version = "0.61.4"
 8254  10518   
 8255  10519   
[dependencies.aws-smithy-query]
 8256  10520   
path = "../aws-smithy-query"
 8257  10521   
version = "0.60.7"
 8258  10522   
 8259  10523   
[dependencies.aws-smithy-runtime]
 8260  10524   
path = "../aws-smithy-runtime"
 8261  10525   
features = ["client"]
 8262  10526   
version = "1.8.5"
 8263  10527   
 8264  10528   
[dependencies.aws-smithy-runtime-api]
 8265  10529   
path = "../aws-smithy-runtime-api"
 8266  10530   
features = ["client", "http-02x"]
 8267  10531   
version = "1.8.5"
 8268  10532   
 8269  10533   
[dependencies.aws-smithy-types]
 8270  10534   
path = "../aws-smithy-types"
 8271  10535   
version = "1.3.2"
 8272  10536   
 8273  10537   
[dependencies.aws-smithy-xml]
 8274  10538   
path = "../aws-smithy-xml"
 8275  10539   
version = "0.60.10"
 8276  10540   
 8277  10541   
[dependencies.aws-types]
 8278  10542   
path = "../aws-types"
 8279  10543   
version = "1.3.8"
 8280  10544   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 8281  10545   
index 4474d17..095d40e 100644
 8282         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
       10546  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 8283  10547   
@@ -1,61 +1,61 @@
 8284  10548   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8285  10549   
[package]
 8286  10550   
name = "aws-sdk-ecs"
 8287  10551   
version = "0.0.0-local"
 8288  10552   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8289  10553   
description = "AWS SDK for Amazon EC2 Container Service"
 8290  10554   
edition = "2021"
 8291  10555   
license = "Apache-2.0"
 8292  10556   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8293  10557   
rust-version = "1.86.0"
 8294  10558   
readme = "README.md"
 8295  10559   
[package.metadata.smithy]
 8296  10560   
codegen-version = "ci"
 8297  10561   
[package.metadata.docs.rs]
 8298  10562   
all-features = true
 8299  10563   
targets = ["x86_64-unknown-linux-gnu"]
 8300  10564   
[dependencies.aws-credential-types]
 8301  10565   
path = "../aws-credential-types"
 8302  10566   
version = "1.2.4"
 8303  10567   
 8304  10568   
[dependencies.aws-runtime]
 8305  10569   
path = "../aws-runtime"
 8306  10570   
version = "1.5.9"
 8307  10571   
 8308  10572   
[dependencies.aws-smithy-async]
 8309  10573   
path = "../aws-smithy-async"
 8310  10574   
version = "1.2.5"
 8311  10575   
 8312  10576   
[dependencies.aws-smithy-http]
 8313  10577   
path = "../aws-smithy-http"
 8314         -
version = "0.62.2"
       10578  +
version = "0.62.3"
 8315  10579   
 8316  10580   
[dependencies.aws-smithy-json]
 8317  10581   
path = "../aws-smithy-json"
 8318  10582   
version = "0.61.4"
 8319  10583   
 8320  10584   
[dependencies.aws-smithy-runtime]
 8321  10585   
path = "../aws-smithy-runtime"
 8322  10586   
features = ["client"]
 8323  10587   
version = "1.8.5"
 8324  10588   
 8325  10589   
[dependencies.aws-smithy-runtime-api]
 8326  10590   
path = "../aws-smithy-runtime-api"
 8327  10591   
features = ["client", "http-02x"]
 8328  10592   
version = "1.8.5"
 8329  10593   
 8330  10594   
[dependencies.aws-smithy-types]
 8331  10595   
path = "../aws-smithy-types"
 8332  10596   
version = "1.3.2"
 8333  10597   
 8334  10598   
[dependencies.aws-types]
 8335  10599   
path = "../aws-types"
 8336  10600   
version = "1.3.8"
 8337  10601   
 8338  10602   
[dependencies.bytes]
 8339  10603   
version = "1.4.0"
 8340  10604   
 8341  10605   
[dependencies.fastrand]
 8342  10606   
version = "2.0.0"
 8343  10607   
 8344  10608   
[dependencies.http]
 8345  10609   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 8346  10610   
index 15b1d77..16d7d89 100644
 8347         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
       10611  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 8348  10612   
@@ -1,65 +1,65 @@
 8349  10613   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8350  10614   
[package]
 8351  10615   
name = "aws-sdk-glacier"
 8352  10616   
version = "0.0.0-local"
 8353  10617   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8354  10618   
description = "AWS SDK for Amazon Glacier"
 8355  10619   
edition = "2021"
 8356  10620   
license = "Apache-2.0"
 8357  10621   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8358  10622   
rust-version = "1.86.0"
 8359  10623   
readme = "README.md"
 8360  10624   
[package.metadata.smithy]
 8361  10625   
codegen-version = "ci"
 8362  10626   
[package.metadata.docs.rs]
 8363  10627   
all-features = true
 8364  10628   
targets = ["x86_64-unknown-linux-gnu"]
 8365  10629   
[dependencies.aws-credential-types]
 8366  10630   
path = "../aws-credential-types"
 8367  10631   
version = "1.2.4"
 8368  10632   
 8369  10633   
[dependencies.aws-runtime]
 8370  10634   
path = "../aws-runtime"
 8371  10635   
version = "1.5.9"
 8372  10636   
 8373  10637   
[dependencies.aws-sigv4]
 8374  10638   
path = "../aws-sigv4"
 8375         -
version = "1.3.3"
       10639  +
version = "1.3.4"
 8376  10640   
 8377  10641   
[dependencies.aws-smithy-async]
 8378  10642   
path = "../aws-smithy-async"
 8379  10643   
version = "1.2.5"
 8380  10644   
 8381  10645   
[dependencies.aws-smithy-http]
 8382  10646   
path = "../aws-smithy-http"
 8383         -
version = "0.62.2"
       10647  +
version = "0.62.3"
 8384  10648   
 8385  10649   
[dependencies.aws-smithy-json]
 8386  10650   
path = "../aws-smithy-json"
 8387  10651   
version = "0.61.4"
 8388  10652   
 8389  10653   
[dependencies.aws-smithy-runtime]
 8390  10654   
path = "../aws-smithy-runtime"
 8391  10655   
features = ["client"]
 8392  10656   
version = "1.8.5"
 8393  10657   
 8394  10658   
[dependencies.aws-smithy-runtime-api]
 8395  10659   
path = "../aws-smithy-runtime-api"
 8396  10660   
features = ["client", "http-02x"]
 8397  10661   
version = "1.8.5"
 8398  10662   
 8399  10663   
[dependencies.aws-smithy-types]
 8400  10664   
path = "../aws-smithy-types"
 8401  10665   
version = "1.3.2"
 8402  10666   
 8403  10667   
[dependencies.aws-types]
 8404  10668   
path = "../aws-types"
 8405  10669   
version = "1.3.8"
 8406  10670   
 8407  10671   
[dependencies.bytes]
 8408  10672   
version = "1.4.0"
 8409  10673   
 8410  10674   
[dependencies.fastrand]
 8411  10675   
version = "2.0.0"
 8412  10676   
 8413  10677   
[dependencies.hex]
 8414  10678   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 8415  10679   
index d718a3a..65e6f24 100644
 8416         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
       10680  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 8417  10681   
@@ -1,61 +1,61 @@
 8418  10682   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8419  10683   
[package]
 8420  10684   
name = "aws-sdk-iam"
 8421  10685   
version = "0.0.0-local"
 8422  10686   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8423  10687   
description = "AWS SDK for AWS Identity and Access Management"
 8424  10688   
edition = "2021"
 8425  10689   
license = "Apache-2.0"
 8426  10690   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8427  10691   
rust-version = "1.86.0"
 8428  10692   
readme = "README.md"
 8429  10693   
[package.metadata.smithy]
 8430  10694   
codegen-version = "ci"
 8431  10695   
[package.metadata.docs.rs]
 8432  10696   
all-features = true
 8433  10697   
targets = ["x86_64-unknown-linux-gnu"]
 8434  10698   
[dependencies.aws-credential-types]
 8435  10699   
path = "../aws-credential-types"
 8436  10700   
version = "1.2.4"
 8437  10701   
 8438  10702   
[dependencies.aws-runtime]
 8439  10703   
path = "../aws-runtime"
 8440  10704   
version = "1.5.9"
 8441  10705   
 8442  10706   
[dependencies.aws-smithy-async]
 8443  10707   
path = "../aws-smithy-async"
 8444  10708   
version = "1.2.5"
 8445  10709   
 8446  10710   
[dependencies.aws-smithy-http]
 8447  10711   
path = "../aws-smithy-http"
 8448         -
version = "0.62.2"
       10712  +
version = "0.62.3"
 8449  10713   
 8450  10714   
[dependencies.aws-smithy-json]
 8451  10715   
path = "../aws-smithy-json"
 8452  10716   
version = "0.61.4"
 8453  10717   
 8454  10718   
[dependencies.aws-smithy-query]
 8455  10719   
path = "../aws-smithy-query"
 8456  10720   
version = "0.60.7"
 8457  10721   
 8458  10722   
[dependencies.aws-smithy-runtime]
 8459  10723   
path = "../aws-smithy-runtime"
 8460  10724   
features = ["client"]
 8461  10725   
version = "1.8.5"
 8462  10726   
 8463  10727   
[dependencies.aws-smithy-runtime-api]
 8464  10728   
path = "../aws-smithy-runtime-api"
 8465  10729   
features = ["client", "http-02x"]
 8466  10730   
version = "1.8.5"
 8467  10731   
 8468  10732   
[dependencies.aws-smithy-types]
 8469  10733   
path = "../aws-smithy-types"
 8470  10734   
version = "1.3.2"
 8471  10735   
 8472  10736   
[dependencies.aws-smithy-xml]
 8473  10737   
path = "../aws-smithy-xml"
 8474  10738   
version = "0.60.10"
 8475  10739   
 8476  10740   
[dependencies.aws-types]
 8477  10741   
path = "../aws-types"
 8478  10742   
version = "1.3.8"
 8479  10743   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 8480  10744   
index 0ed4302..3d828a5 100644
 8481         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
       10745  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 8482  10746   
@@ -1,61 +1,61 @@
 8483  10747   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8484  10748   
[package]
 8485  10749   
name = "aws-sdk-kms"
 8486  10750   
version = "0.0.0-local"
 8487  10751   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8488  10752   
description = "AWS SDK for AWS Key Management Service"
 8489  10753   
edition = "2021"
 8490  10754   
license = "Apache-2.0"
 8491  10755   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8492  10756   
rust-version = "1.86.0"
 8493  10757   
readme = "README.md"
 8494  10758   
[package.metadata.smithy]
 8495  10759   
codegen-version = "ci"
 8496  10760   
[package.metadata.docs.rs]
 8497  10761   
all-features = true
 8498  10762   
targets = ["x86_64-unknown-linux-gnu"]
 8499  10763   
[dependencies.aws-credential-types]
 8500  10764   
path = "../aws-credential-types"
 8501  10765   
version = "1.2.4"
 8502  10766   
 8503  10767   
[dependencies.aws-runtime]
 8504  10768   
path = "../aws-runtime"
 8505  10769   
version = "1.5.9"
 8506  10770   
 8507  10771   
[dependencies.aws-smithy-async]
 8508  10772   
path = "../aws-smithy-async"
 8509  10773   
version = "1.2.5"
 8510  10774   
 8511  10775   
[dependencies.aws-smithy-http]
 8512  10776   
path = "../aws-smithy-http"
 8513         -
version = "0.62.2"
       10777  +
version = "0.62.3"
 8514  10778   
 8515  10779   
[dependencies.aws-smithy-json]
 8516  10780   
path = "../aws-smithy-json"
 8517  10781   
version = "0.61.4"
 8518  10782   
 8519  10783   
[dependencies.aws-smithy-runtime]
 8520  10784   
path = "../aws-smithy-runtime"
 8521  10785   
features = ["client"]
 8522  10786   
version = "1.8.5"
 8523  10787   
 8524  10788   
[dependencies.aws-smithy-runtime-api]
 8525  10789   
path = "../aws-smithy-runtime-api"
 8526  10790   
features = ["client", "http-02x"]
 8527  10791   
version = "1.8.5"
 8528  10792   
 8529  10793   
[dependencies.aws-smithy-types]
 8530  10794   
path = "../aws-smithy-types"
 8531  10795   
version = "1.3.2"
 8532  10796   
 8533  10797   
[dependencies.aws-types]
 8534  10798   
path = "../aws-types"
 8535  10799   
version = "1.3.8"
 8536  10800   
 8537  10801   
[dependencies.bytes]
 8538  10802   
version = "1.4.0"
 8539  10803   
 8540  10804   
[dependencies.fastrand]
 8541  10805   
version = "2.0.0"
 8542  10806   
 8543  10807   
[dependencies.http]
 8544  10808   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 8545  10809   
index 6518dfc..6b94752 100644
 8546         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
       10810  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 8547  10811   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 8548  10812   
edition = "2021"
 8549  10813   
license = "Apache-2.0"
 8550  10814   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8551  10815   
rust-version = "1.86.0"
 8552  10816   
readme = "README.md"
 8553  10817   
[package.metadata.smithy]
 8554  10818   
codegen-version = "ci"
 8555  10819   
[package.metadata.docs.rs]
 8556  10820   
all-features = true
 8557  10821   
targets = ["x86_64-unknown-linux-gnu"]
 8558  10822   
[dependencies.aws-credential-types]
 8559  10823   
path = "../aws-credential-types"
 8560  10824   
version = "1.2.4"
 8561  10825   
 8562  10826   
[dependencies.aws-runtime]
 8563  10827   
path = "../aws-runtime"
 8564  10828   
features = ["event-stream"]
 8565  10829   
version = "1.5.9"
 8566  10830   
 8567  10831   
[dependencies.aws-smithy-async]
 8568  10832   
path = "../aws-smithy-async"
 8569  10833   
version = "1.2.5"
 8570  10834   
 8571  10835   
[dependencies.aws-smithy-eventstream]
 8572  10836   
path = "../aws-smithy-eventstream"
 8573  10837   
version = "0.60.10"
 8574  10838   
 8575  10839   
[dependencies.aws-smithy-http]
 8576  10840   
path = "../aws-smithy-http"
 8577  10841   
features = ["event-stream"]
 8578         -
version = "0.62.2"
       10842  +
version = "0.62.3"
 8579  10843   
 8580  10844   
[dependencies.aws-smithy-json]
 8581  10845   
path = "../aws-smithy-json"
 8582  10846   
version = "0.61.4"
 8583  10847   
 8584  10848   
[dependencies.aws-smithy-runtime]
 8585  10849   
path = "../aws-smithy-runtime"
 8586  10850   
features = ["client"]
 8587  10851   
version = "1.8.5"
 8588  10852   
 8589  10853   
[dependencies.aws-smithy-runtime-api]
 8590  10854   
path = "../aws-smithy-runtime-api"
 8591  10855   
features = ["client", "http-02x"]
 8592  10856   
version = "1.8.5"
 8593  10857   
 8594  10858   
[dependencies.aws-smithy-types]
 8595  10859   
path = "../aws-smithy-types"
 8596  10860   
version = "1.3.2"
 8597  10861   
 8598  10862   
[dependencies.aws-types]
 8599  10863   
path = "../aws-types"
 8600  10864   
version = "1.3.8"
 8601  10865   
 8602  10866   
[dependencies.bytes]
 8603  10867   
version = "1.4.0"
 8604  10868   
 8605  10869   
[dependencies.fastrand]
 8606  10870   
version = "2.0.0"
 8607  10871   
 8608  10872   
[dependencies.http]
 8609  10873   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 8610  10874   
index dabb0e0..34cbc15 100644
 8611         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
       10875  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 8612  10876   
@@ -1,65 +1,65 @@
 8613  10877   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8614  10878   
[package]
 8615  10879   
name = "aws-sdk-polly"
 8616  10880   
version = "0.0.0-local"
 8617  10881   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8618  10882   
description = "AWS SDK for Amazon Polly"
 8619  10883   
edition = "2021"
 8620  10884   
license = "Apache-2.0"
 8621  10885   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8622  10886   
rust-version = "1.86.0"
 8623  10887   
readme = "README.md"
 8624  10888   
[package.metadata.smithy]
 8625  10889   
codegen-version = "ci"
 8626  10890   
[package.metadata.docs.rs]
 8627  10891   
all-features = true
 8628  10892   
targets = ["x86_64-unknown-linux-gnu"]
 8629  10893   
[dependencies.aws-credential-types]
 8630  10894   
path = "../aws-credential-types"
 8631  10895   
version = "1.2.4"
 8632  10896   
 8633  10897   
[dependencies.aws-runtime]
 8634  10898   
path = "../aws-runtime"
 8635  10899   
version = "1.5.9"
 8636  10900   
 8637  10901   
[dependencies.aws-sigv4]
 8638  10902   
path = "../aws-sigv4"
 8639         -
version = "1.3.3"
       10903  +
version = "1.3.4"
 8640  10904   
 8641  10905   
[dependencies.aws-smithy-async]
 8642  10906   
path = "../aws-smithy-async"
 8643  10907   
version = "1.2.5"
 8644  10908   
 8645  10909   
[dependencies.aws-smithy-http]
 8646  10910   
path = "../aws-smithy-http"
 8647         -
version = "0.62.2"
       10911  +
version = "0.62.3"
 8648  10912   
 8649  10913   
[dependencies.aws-smithy-json]
 8650  10914   
path = "../aws-smithy-json"
 8651  10915   
version = "0.61.4"
 8652  10916   
 8653  10917   
[dependencies.aws-smithy-runtime]
 8654  10918   
path = "../aws-smithy-runtime"
 8655  10919   
features = ["client"]
 8656  10920   
version = "1.8.5"
 8657  10921   
 8658  10922   
[dependencies.aws-smithy-runtime-api]
 8659  10923   
path = "../aws-smithy-runtime-api"
 8660  10924   
features = ["client", "http-02x"]
 8661  10925   
version = "1.8.5"
 8662  10926   
 8663  10927   
[dependencies.aws-smithy-types]
 8664  10928   
path = "../aws-smithy-types"
 8665  10929   
version = "1.3.2"
 8666  10930   
 8667  10931   
[dependencies.aws-types]
 8668  10932   
path = "../aws-types"
 8669  10933   
version = "1.3.8"
 8670  10934   
 8671  10935   
[dependencies.bytes]
 8672  10936   
version = "1.4.0"
 8673  10937   
 8674  10938   
[dependencies.fastrand]
 8675  10939   
version = "2.0.0"
 8676  10940   
 8677  10941   
[dependencies.http]
 8678  10942   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 8679  10943   
index a884716..f3d8713 100644
 8680         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
       10944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 8681  10945   
@@ -1,61 +1,61 @@
 8682  10946   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8683  10947   
[package]
 8684  10948   
name = "aws-sdk-qldbsession"
 8685  10949   
version = "0.0.0-local"
 8686  10950   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8687  10951   
description = "AWS SDK for Amazon QLDB Session"
 8688  10952   
edition = "2021"
 8689  10953   
license = "Apache-2.0"
 8690  10954   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8691  10955   
rust-version = "1.86.0"
 8692  10956   
readme = "README.md"
 8693  10957   
[package.metadata.smithy]
 8694  10958   
codegen-version = "ci"
 8695  10959   
[package.metadata.docs.rs]
 8696  10960   
all-features = true
 8697  10961   
targets = ["x86_64-unknown-linux-gnu"]
 8698  10962   
[dependencies.aws-credential-types]
 8699  10963   
path = "../aws-credential-types"
 8700  10964   
version = "1.2.4"
 8701  10965   
 8702  10966   
[dependencies.aws-runtime]
 8703  10967   
path = "../aws-runtime"
 8704  10968   
version = "1.5.9"
 8705  10969   
 8706  10970   
[dependencies.aws-smithy-async]
 8707  10971   
path = "../aws-smithy-async"
 8708  10972   
version = "1.2.5"
 8709  10973   
 8710  10974   
[dependencies.aws-smithy-http]
 8711  10975   
path = "../aws-smithy-http"
 8712         -
version = "0.62.2"
       10976  +
version = "0.62.3"
 8713  10977   
 8714  10978   
[dependencies.aws-smithy-json]
 8715  10979   
path = "../aws-smithy-json"
 8716  10980   
version = "0.61.4"
 8717  10981   
 8718  10982   
[dependencies.aws-smithy-runtime]
 8719  10983   
path = "../aws-smithy-runtime"
 8720  10984   
features = ["client"]
 8721  10985   
version = "1.8.5"
 8722  10986   
 8723  10987   
[dependencies.aws-smithy-runtime-api]
 8724  10988   
path = "../aws-smithy-runtime-api"
 8725  10989   
features = ["client", "http-02x"]
 8726  10990   
version = "1.8.5"
 8727  10991   
 8728  10992   
[dependencies.aws-smithy-types]
 8729  10993   
path = "../aws-smithy-types"
 8730  10994   
version = "1.3.2"
 8731  10995   
 8732  10996   
[dependencies.aws-types]
 8733  10997   
path = "../aws-types"
 8734  10998   
version = "1.3.8"
 8735  10999   
 8736  11000   
[dependencies.bytes]
 8737  11001   
version = "1.4.0"
 8738  11002   
 8739  11003   
[dependencies.fastrand]
 8740  11004   
version = "2.0.0"
 8741  11005   
 8742  11006   
[dependencies.http]
 8743  11007   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 8744  11008   
index 32a7dc9..a2c752d 100644
 8745         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
       11009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 8746  11010   
@@ -1,61 +1,61 @@
 8747  11011   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8748  11012   
[package]
 8749  11013   
name = "aws-sdk-route53"
 8750  11014   
version = "0.0.0-local"
 8751  11015   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8752  11016   
description = "AWS SDK for Amazon Route 53"
 8753  11017   
edition = "2021"
 8754  11018   
license = "Apache-2.0"
 8755  11019   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8756  11020   
rust-version = "1.86.0"
 8757  11021   
readme = "README.md"
 8758  11022   
[package.metadata.smithy]
 8759  11023   
codegen-version = "ci"
 8760  11024   
[package.metadata.docs.rs]
 8761  11025   
all-features = true
 8762  11026   
targets = ["x86_64-unknown-linux-gnu"]
 8763  11027   
[dependencies.aws-credential-types]
 8764  11028   
path = "../aws-credential-types"
 8765  11029   
version = "1.2.4"
 8766  11030   
 8767  11031   
[dependencies.aws-runtime]
 8768  11032   
path = "../aws-runtime"
 8769  11033   
version = "1.5.9"
 8770  11034   
 8771  11035   
[dependencies.aws-smithy-async]
 8772  11036   
path = "../aws-smithy-async"
 8773  11037   
version = "1.2.5"
 8774  11038   
 8775  11039   
[dependencies.aws-smithy-http]
 8776  11040   
path = "../aws-smithy-http"
 8777         -
version = "0.62.2"
       11041  +
version = "0.62.3"
 8778  11042   
 8779  11043   
[dependencies.aws-smithy-json]
 8780  11044   
path = "../aws-smithy-json"
 8781  11045   
version = "0.61.4"
 8782  11046   
 8783  11047   
[dependencies.aws-smithy-runtime]
 8784  11048   
path = "../aws-smithy-runtime"
 8785  11049   
features = ["client"]
 8786  11050   
version = "1.8.5"
 8787  11051   
 8788  11052   
[dependencies.aws-smithy-runtime-api]
 8789  11053   
path = "../aws-smithy-runtime-api"
 8790  11054   
features = ["client", "http-02x"]
 8791  11055   
version = "1.8.5"
 8792  11056   
 8793  11057   
[dependencies.aws-smithy-types]
 8794  11058   
path = "../aws-smithy-types"
 8795  11059   
version = "1.3.2"
 8796  11060   
 8797  11061   
[dependencies.aws-smithy-xml]
 8798  11062   
path = "../aws-smithy-xml"
 8799  11063   
version = "0.60.10"
 8800  11064   
 8801  11065   
[dependencies.aws-types]
 8802  11066   
path = "../aws-types"
 8803  11067   
version = "1.3.8"
 8804  11068   
 8805  11069   
[dependencies.fastrand]
 8806  11070   
version = "2.0.0"
 8807  11071   
 8808  11072   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 8809  11073   
index f65e261..2f6bec0 100644
 8810         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
       11074  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 8811  11075   
@@ -1,75 +1,75 @@
 8812  11076   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8813  11077   
[package]
 8814  11078   
name = "aws-sdk-s3"
 8815  11079   
version = "0.0.0-local"
 8816  11080   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8817  11081   
description = "AWS SDK for Amazon Simple Storage Service"
 8818  11082   
edition = "2021"
 8819  11083   
license = "Apache-2.0"
 8820  11084   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8821  11085   
rust-version = "1.86.0"
 8822  11086   
readme = "README.md"
 8823  11087   
[package.metadata.smithy]
 8824  11088   
codegen-version = "ci"
 8825  11089   
[package.metadata.docs.rs]
 8826  11090   
all-features = true
 8827  11091   
targets = ["x86_64-unknown-linux-gnu"]
 8828  11092   
[dependencies.aws-credential-types]
 8829  11093   
path = "../aws-credential-types"
 8830  11094   
version = "1.2.4"
 8831  11095   
 8832  11096   
[dependencies.aws-runtime]
 8833  11097   
path = "../aws-runtime"
 8834  11098   
features = ["event-stream", "http-02x"]
 8835  11099   
version = "1.5.9"
 8836  11100   
 8837  11101   
[dependencies.aws-sigv4]
 8838  11102   
path = "../aws-sigv4"
 8839         -
version = "1.3.3"
       11103  +
version = "1.3.4"
 8840  11104   
 8841  11105   
[dependencies.aws-smithy-async]
 8842  11106   
path = "../aws-smithy-async"
 8843  11107   
version = "1.2.5"
 8844  11108   
 8845  11109   
[dependencies.aws-smithy-checksums]
 8846  11110   
path = "../aws-smithy-checksums"
 8847  11111   
version = "0.63.5"
 8848  11112   
 8849  11113   
[dependencies.aws-smithy-eventstream]
 8850  11114   
path = "../aws-smithy-eventstream"
 8851  11115   
version = "0.60.10"
 8852  11116   
 8853  11117   
[dependencies.aws-smithy-http]
 8854  11118   
path = "../aws-smithy-http"
 8855  11119   
features = ["event-stream"]
 8856         -
version = "0.62.2"
       11120  +
version = "0.62.3"
 8857  11121   
 8858  11122   
[dependencies.aws-smithy-json]
 8859  11123   
path = "../aws-smithy-json"
 8860  11124   
version = "0.61.4"
 8861  11125   
 8862  11126   
[dependencies.aws-smithy-runtime]
 8863  11127   
path = "../aws-smithy-runtime"
 8864  11128   
features = ["client"]
 8865  11129   
version = "1.8.5"
 8866  11130   
 8867  11131   
[dependencies.aws-smithy-runtime-api]
 8868  11132   
path = "../aws-smithy-runtime-api"
 8869  11133   
features = ["client", "http-02x"]
 8870  11134   
version = "1.8.5"
 8871  11135   
 8872  11136   
[dependencies.aws-smithy-types]
 8873  11137   
path = "../aws-smithy-types"
 8874  11138   
version = "1.3.2"
 8875  11139   
 8876  11140   
[dependencies.aws-smithy-xml]
 8877  11141   
path = "../aws-smithy-xml"
 8878  11142   
version = "0.60.10"
 8879  11143   
 8880  11144   
[dependencies.aws-types]
 8881  11145   
path = "../aws-types"
 8882  11146   
version = "1.3.8"
 8883  11147   
 8884  11148   
[dependencies.bytes]
 8885  11149   
version = "1.4.0"
 8886  11150   
 8887  11151   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 8888  11152   
index b4d1cdd..861c0cc 100644
 8889         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
       11153  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 8890  11154   
@@ -1,61 +1,61 @@
 8891  11155   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8892  11156   
[package]
 8893  11157   
name = "aws-sdk-s3control"
 8894  11158   
version = "0.0.0-local"
 8895  11159   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8896  11160   
description = "AWS SDK for AWS S3 Control"
 8897  11161   
edition = "2021"
 8898  11162   
license = "Apache-2.0"
 8899  11163   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8900  11164   
rust-version = "1.86.0"
 8901  11165   
readme = "README.md"
 8902  11166   
[package.metadata.smithy]
 8903  11167   
codegen-version = "ci"
 8904  11168   
[package.metadata.docs.rs]
 8905  11169   
all-features = true
 8906  11170   
targets = ["x86_64-unknown-linux-gnu"]
 8907  11171   
[dependencies.aws-credential-types]
 8908  11172   
path = "../aws-credential-types"
 8909  11173   
version = "1.2.4"
 8910  11174   
 8911  11175   
[dependencies.aws-runtime]
 8912  11176   
path = "../aws-runtime"
 8913  11177   
version = "1.5.9"
 8914  11178   
 8915  11179   
[dependencies.aws-smithy-async]
 8916  11180   
path = "../aws-smithy-async"
 8917  11181   
version = "1.2.5"
 8918  11182   
 8919  11183   
[dependencies.aws-smithy-http]
 8920  11184   
path = "../aws-smithy-http"
 8921         -
version = "0.62.2"
       11185  +
version = "0.62.3"
 8922  11186   
 8923  11187   
[dependencies.aws-smithy-json]
 8924  11188   
path = "../aws-smithy-json"
 8925  11189   
version = "0.61.4"
 8926  11190   
 8927  11191   
[dependencies.aws-smithy-runtime]
 8928  11192   
path = "../aws-smithy-runtime"
 8929  11193   
features = ["client"]
 8930  11194   
version = "1.8.5"
 8931  11195   
 8932  11196   
[dependencies.aws-smithy-runtime-api]
 8933  11197   
path = "../aws-smithy-runtime-api"
 8934  11198   
features = ["client", "http-02x"]
 8935  11199   
version = "1.8.5"
 8936  11200   
 8937  11201   
[dependencies.aws-smithy-types]
 8938  11202   
path = "../aws-smithy-types"
 8939  11203   
version = "1.3.2"
 8940  11204   
 8941  11205   
[dependencies.aws-smithy-xml]
 8942  11206   
path = "../aws-smithy-xml"
 8943  11207   
version = "0.60.10"
 8944  11208   
 8945  11209   
[dependencies.aws-types]
 8946  11210   
path = "../aws-types"
 8947  11211   
version = "1.3.8"
 8948  11212   
 8949  11213   
[dependencies.fastrand]
 8950  11214   
version = "2.0.0"
 8951  11215   
 8952  11216   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 8953  11217   
index 2cde182..fc367f4 100644
 8954         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
       11218  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 8955  11219   
@@ -1,61 +1,61 @@
 8956  11220   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8957  11221   
[package]
 8958  11222   
name = "aws-sdk-sso"
 8959  11223   
version = "0.0.0-local"
 8960  11224   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8961  11225   
description = "AWS SDK for AWS Single Sign-On"
 8962  11226   
edition = "2021"
 8963  11227   
license = "Apache-2.0"
 8964  11228   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8965  11229   
rust-version = "1.86.0"
 8966  11230   
readme = "README.md"
 8967  11231   
[package.metadata.smithy]
 8968  11232   
codegen-version = "ci"
 8969  11233   
[package.metadata.docs.rs]
 8970  11234   
all-features = true
 8971  11235   
targets = ["x86_64-unknown-linux-gnu"]
 8972  11236   
[dependencies.aws-credential-types]
 8973  11237   
path = "../aws-credential-types"
 8974  11238   
version = "1.2.4"
 8975  11239   
 8976  11240   
[dependencies.aws-runtime]
 8977  11241   
path = "../aws-runtime"
 8978  11242   
version = "1.5.9"
 8979  11243   
 8980  11244   
[dependencies.aws-smithy-async]
 8981  11245   
path = "../aws-smithy-async"
 8982  11246   
version = "1.2.5"
 8983  11247   
 8984  11248   
[dependencies.aws-smithy-http]
 8985  11249   
path = "../aws-smithy-http"
 8986         -
version = "0.62.2"
       11250  +
version = "0.62.3"
 8987  11251   
 8988  11252   
[dependencies.aws-smithy-json]
 8989  11253   
path = "../aws-smithy-json"
 8990  11254   
version = "0.61.4"
 8991  11255   
 8992  11256   
[dependencies.aws-smithy-runtime]
 8993  11257   
path = "../aws-smithy-runtime"
 8994  11258   
features = ["client"]
 8995  11259   
version = "1.8.5"
 8996  11260   
 8997  11261   
[dependencies.aws-smithy-runtime-api]
 8998  11262   
path = "../aws-smithy-runtime-api"
 8999  11263   
features = ["client", "http-02x"]
 9000  11264   
version = "1.8.5"
 9001  11265   
 9002  11266   
[dependencies.aws-smithy-types]
 9003  11267   
path = "../aws-smithy-types"
 9004  11268   
version = "1.3.2"
 9005  11269   
 9006  11270   
[dependencies.aws-types]
 9007  11271   
path = "../aws-types"
 9008  11272   
version = "1.3.8"
 9009  11273   
 9010  11274   
[dependencies.bytes]
 9011  11275   
version = "1.4.0"
 9012  11276   
 9013  11277   
[dependencies.fastrand]
 9014  11278   
version = "2.0.0"
 9015  11279   
 9016  11280   
[dependencies.http]
 9017  11281   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 9018  11282   
index 7a34c16..588d0bd 100644
 9019         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
       11283  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 9020  11284   
@@ -1,61 +1,61 @@
 9021  11285   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9022  11286   
[package]
 9023  11287   
name = "aws-sdk-ssooidc"
 9024  11288   
version = "0.0.0-local"
 9025  11289   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9026  11290   
description = "AWS SDK for AWS SSO OIDC"
 9027  11291   
edition = "2021"
 9028  11292   
license = "Apache-2.0"
 9029  11293   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9030  11294   
rust-version = "1.86.0"
 9031  11295   
readme = "README.md"
 9032  11296   
[package.metadata.smithy]
 9033  11297   
codegen-version = "ci"
 9034  11298   
[package.metadata.docs.rs]
 9035  11299   
all-features = true
 9036  11300   
targets = ["x86_64-unknown-linux-gnu"]
 9037  11301   
[dependencies.aws-credential-types]
 9038  11302   
path = "../aws-credential-types"
 9039  11303   
version = "1.2.4"
 9040  11304   
 9041  11305   
[dependencies.aws-runtime]
 9042  11306   
path = "../aws-runtime"
 9043  11307   
version = "1.5.9"
 9044  11308   
 9045  11309   
[dependencies.aws-smithy-async]
 9046  11310   
path = "../aws-smithy-async"
 9047  11311   
version = "1.2.5"
 9048  11312   
 9049  11313   
[dependencies.aws-smithy-http]
 9050  11314   
path = "../aws-smithy-http"
 9051         -
version = "0.62.2"
       11315  +
version = "0.62.3"
 9052  11316   
 9053  11317   
[dependencies.aws-smithy-json]
 9054  11318   
path = "../aws-smithy-json"
 9055  11319   
version = "0.61.4"
 9056  11320   
 9057  11321   
[dependencies.aws-smithy-runtime]
 9058  11322   
path = "../aws-smithy-runtime"
 9059  11323   
features = ["client"]
 9060  11324   
version = "1.8.5"
 9061  11325   
 9062  11326   
[dependencies.aws-smithy-runtime-api]
 9063  11327   
path = "../aws-smithy-runtime-api"
 9064  11328   
features = ["client", "http-02x"]
 9065  11329   
version = "1.8.5"
 9066  11330   
 9067  11331   
[dependencies.aws-smithy-types]
 9068  11332   
path = "../aws-smithy-types"
 9069  11333   
version = "1.3.2"
 9070  11334   
 9071  11335   
[dependencies.aws-types]
 9072  11336   
path = "../aws-types"
 9073  11337   
version = "1.3.8"
 9074  11338   
 9075  11339   
[dependencies.bytes]
 9076  11340   
version = "1.4.0"
 9077  11341   
 9078  11342   
[dependencies.fastrand]
 9079  11343   
version = "2.0.0"
 9080  11344   
 9081  11345   
[dependencies.http]
 9082  11346   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 9083  11347   
index 895dfb3..f2ce34e 100644
 9084         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
       11348  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 9085  11349   
@@ -1,61 +1,61 @@
 9086  11350   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9087  11351   
[package]
 9088  11352   
name = "aws-sdk-sts"
 9089  11353   
version = "0.0.0-local"
 9090  11354   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9091  11355   
description = "AWS SDK for AWS Security Token Service"
 9092  11356   
edition = "2021"
 9093  11357   
license = "Apache-2.0"
 9094  11358   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9095  11359   
rust-version = "1.86.0"
 9096  11360   
readme = "README.md"
 9097  11361   
[package.metadata.smithy]
 9098  11362   
codegen-version = "ci"
 9099  11363   
[package.metadata.docs.rs]
 9100  11364   
all-features = true
 9101  11365   
targets = ["x86_64-unknown-linux-gnu"]
 9102  11366   
[dependencies.aws-credential-types]
 9103  11367   
path = "../aws-credential-types"
 9104  11368   
version = "1.2.4"
 9105  11369   
 9106  11370   
[dependencies.aws-runtime]
 9107  11371   
path = "../aws-runtime"
 9108  11372   
version = "1.5.9"
 9109  11373   
 9110  11374   
[dependencies.aws-smithy-async]
 9111  11375   
path = "../aws-smithy-async"
 9112  11376   
version = "1.2.5"
 9113  11377   
 9114  11378   
[dependencies.aws-smithy-http]
 9115  11379   
path = "../aws-smithy-http"
 9116         -
version = "0.62.2"
       11380  +
version = "0.62.3"
 9117  11381   
 9118  11382   
[dependencies.aws-smithy-json]
 9119  11383   
path = "../aws-smithy-json"
 9120  11384   
version = "0.61.4"
 9121  11385   
 9122  11386   
[dependencies.aws-smithy-query]
 9123  11387   
path = "../aws-smithy-query"
 9124  11388   
version = "0.60.7"
 9125  11389   
 9126  11390   
[dependencies.aws-smithy-runtime]
 9127  11391   
path = "../aws-smithy-runtime"
 9128  11392   
features = ["client"]
 9129  11393   
version = "1.8.5"
 9130  11394   
 9131  11395   
[dependencies.aws-smithy-runtime-api]
 9132  11396   
path = "../aws-smithy-runtime-api"
 9133  11397   
features = ["client", "http-02x"]
 9134  11398   
version = "1.8.5"
 9135  11399   
 9136  11400   
[dependencies.aws-smithy-types]
 9137  11401   
path = "../aws-smithy-types"
 9138  11402   
version = "1.3.2"
 9139  11403   
 9140  11404   
[dependencies.aws-smithy-xml]
 9141  11405   
path = "../aws-smithy-xml"
 9142  11406   
version = "0.60.10"
 9143  11407   
 9144  11408   
[dependencies.aws-types]
 9145  11409   
path = "../aws-types"
 9146  11410   
version = "1.3.8"
 9147  11411   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 9148  11412   
index d556561..91178b6 100644
 9149         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
       11413  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 9150  11414   
@@ -1,61 +1,61 @@
 9151  11415   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9152  11416   
[package]
 9153  11417   
name = "aws-sdk-timestreamquery"
 9154  11418   
version = "0.0.0-local"
 9155  11419   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9156  11420   
description = "AWS SDK for Amazon Timestream Query"
 9157  11421   
edition = "2021"
 9158  11422   
license = "Apache-2.0"
 9159  11423   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9160  11424   
rust-version = "1.86.0"
 9161  11425   
readme = "README.md"
 9162  11426   
[package.metadata.smithy]
 9163  11427   
codegen-version = "ci"
 9164  11428   
[package.metadata.docs.rs]
 9165  11429   
all-features = true
 9166  11430   
targets = ["x86_64-unknown-linux-gnu"]
 9167  11431   
[dependencies.aws-credential-types]
 9168  11432   
path = "../aws-credential-types"
 9169  11433   
version = "1.2.4"
 9170  11434   
 9171  11435   
[dependencies.aws-runtime]
 9172  11436   
path = "../aws-runtime"
 9173  11437   
version = "1.5.9"
 9174  11438   
 9175  11439   
[dependencies.aws-smithy-async]
 9176  11440   
path = "../aws-smithy-async"
 9177  11441   
version = "1.2.5"
 9178  11442   
 9179  11443   
[dependencies.aws-smithy-http]
 9180  11444   
path = "../aws-smithy-http"
 9181         -
version = "0.62.2"
       11445  +
version = "0.62.3"
 9182  11446   
 9183  11447   
[dependencies.aws-smithy-json]
 9184  11448   
path = "../aws-smithy-json"
 9185  11449   
version = "0.61.4"
 9186  11450   
 9187  11451   
[dependencies.aws-smithy-runtime]
 9188  11452   
path = "../aws-smithy-runtime"
 9189  11453   
features = ["client"]
 9190  11454   
version = "1.8.5"
 9191  11455   
 9192  11456   
[dependencies.aws-smithy-runtime-api]
 9193  11457   
path = "../aws-smithy-runtime-api"
 9194  11458   
features = ["client", "http-02x"]
 9195  11459   
version = "1.8.5"
 9196  11460   
 9197  11461   
[dependencies.aws-smithy-types]
 9198  11462   
path = "../aws-smithy-types"
 9199  11463   
version = "1.3.2"
 9200  11464   
 9201  11465   
[dependencies.aws-types]
 9202  11466   
path = "../aws-types"
 9203  11467   
version = "1.3.8"
 9204  11468   
 9205  11469   
[dependencies.bytes]
 9206  11470   
version = "1.4.0"
 9207  11471   
 9208  11472   
[dependencies.fastrand]
 9209  11473   
version = "2.0.0"
 9210  11474   
 9211  11475   
[dependencies.http]
 9212  11476   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 9213  11477   
index 0c56e4c..95731e3 100644
 9214         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
       11478  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 9215  11479   
@@ -1,61 +1,61 @@
 9216  11480   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9217  11481   
[package]
 9218  11482   
name = "aws-sdk-timestreamwrite"
 9219  11483   
version = "0.0.0-local"
 9220  11484   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9221  11485   
description = "AWS SDK for Amazon Timestream Write"
 9222  11486   
edition = "2021"
 9223  11487   
license = "Apache-2.0"
 9224  11488   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9225  11489   
rust-version = "1.86.0"
 9226  11490   
readme = "README.md"
 9227  11491   
[package.metadata.smithy]
 9228  11492   
codegen-version = "ci"
 9229  11493   
[package.metadata.docs.rs]
 9230  11494   
all-features = true
 9231  11495   
targets = ["x86_64-unknown-linux-gnu"]
 9232  11496   
[dependencies.aws-credential-types]
 9233  11497   
path = "../aws-credential-types"
 9234  11498   
version = "1.2.4"
 9235  11499   
 9236  11500   
[dependencies.aws-runtime]
 9237  11501   
path = "../aws-runtime"
 9238  11502   
version = "1.5.9"
 9239  11503   
 9240  11504   
[dependencies.aws-smithy-async]
 9241  11505   
path = "../aws-smithy-async"
 9242  11506   
version = "1.2.5"
 9243  11507   
 9244  11508   
[dependencies.aws-smithy-http]
 9245  11509   
path = "../aws-smithy-http"
 9246         -
version = "0.62.2"
       11510  +
version = "0.62.3"
 9247  11511   
 9248  11512   
[dependencies.aws-smithy-json]
 9249  11513   
path = "../aws-smithy-json"
 9250  11514   
version = "0.61.4"
 9251  11515   
 9252  11516   
[dependencies.aws-smithy-runtime]
 9253  11517   
path = "../aws-smithy-runtime"
 9254  11518   
features = ["client"]
 9255  11519   
version = "1.8.5"
 9256  11520   
 9257  11521   
[dependencies.aws-smithy-runtime-api]
 9258  11522   
path = "../aws-smithy-runtime-api"
 9259  11523   
features = ["client", "http-02x"]
 9260  11524   
version = "1.8.5"
 9261  11525   
 9262  11526   
[dependencies.aws-smithy-types]
 9263  11527   
path = "../aws-smithy-types"
 9264  11528   
version = "1.3.2"
 9265  11529   
 9266  11530   
[dependencies.aws-types]
 9267  11531   
path = "../aws-types"
 9268  11532   
version = "1.3.8"
 9269  11533   
 9270  11534   
[dependencies.bytes]
 9271  11535   
version = "1.4.0"
 9272  11536   
 9273  11537   
[dependencies.fastrand]
 9274  11538   
version = "2.0.0"
 9275  11539   
 9276  11540   
[dependencies.http]
 9277  11541   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 9278  11542   
index 5b35037..9fb220a 100644
 9279         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       11543  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 9280  11544   
@@ -1,71 +1,71 @@
 9281  11545   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9282  11546   
[package]
 9283  11547   
name = "aws-sdk-transcribestreaming"
 9284  11548   
version = "0.0.0-local"
 9285  11549   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9286  11550   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 9287  11551   
edition = "2021"
 9288  11552   
license = "Apache-2.0"
 9289  11553   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9290  11554   
rust-version = "1.86.0"
 9291  11555   
readme = "README.md"
 9292  11556   
[package.metadata.smithy]
 9293  11557   
codegen-version = "ci"
 9294  11558   
[package.metadata.docs.rs]
 9295  11559   
all-features = true
 9296  11560   
targets = ["x86_64-unknown-linux-gnu"]
 9297  11561   
[dependencies.aws-credential-types]
 9298  11562   
path = "../aws-credential-types"
 9299  11563   
version = "1.2.4"
 9300  11564   
 9301  11565   
[dependencies.aws-runtime]
 9302  11566   
path = "../aws-runtime"
 9303  11567   
features = ["event-stream"]
 9304  11568   
version = "1.5.9"
 9305  11569   
 9306  11570   
[dependencies.aws-sigv4]
 9307  11571   
path = "../aws-sigv4"
 9308         -
version = "1.3.3"
       11572  +
version = "1.3.4"
 9309  11573   
 9310  11574   
[dependencies.aws-smithy-async]
 9311  11575   
path = "../aws-smithy-async"
 9312  11576   
version = "1.2.5"
 9313  11577   
 9314  11578   
[dependencies.aws-smithy-eventstream]
 9315  11579   
path = "../aws-smithy-eventstream"
 9316  11580   
version = "0.60.10"
 9317  11581   
 9318  11582   
[dependencies.aws-smithy-http]
 9319  11583   
path = "../aws-smithy-http"
 9320  11584   
features = ["event-stream"]
 9321         -
version = "0.62.2"
       11585  +
version = "0.62.3"
 9322  11586   
 9323  11587   
[dependencies.aws-smithy-json]
 9324  11588   
path = "../aws-smithy-json"
 9325  11589   
version = "0.61.4"
 9326  11590   
 9327  11591   
[dependencies.aws-smithy-runtime]
 9328  11592   
path = "../aws-smithy-runtime"
 9329  11593   
features = ["client"]
 9330  11594   
version = "1.8.5"
 9331  11595