AWS SDK

AWS SDK

rev. 628eeeeeed390f5efdbfe607c18848c033debd3e (ignoring whitespace)

Files changed:

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.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/get-vanilla-utf8-query/get-vanilla-utf8-query.authz

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

  147         -
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
  148     95   
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
  149     96   
deleted file mode 100644
  150     97   
index 89e572e..0000000
  151         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.authz
          98  +
++ /dev/null
  152     99   
@@ -1 +0,0 @@
  153         -
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
  154    100   
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
  155    101   
deleted file mode 100644
  156    102   
index fcf23ce..0000000
  157         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sreq
         103  +
++ /dev/null
  158    104   
@@ -1,4 +0,0 @@
  159         -
POST / HTTP/1.1
  160         -
Host:example.amazonaws.com
  161         -
X-Amz-Date:20150830T123600Z
  162         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
  163    105   
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
  164    106   
deleted file mode 100644
  165    107   
index a62589f..0000000
  166         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.authz
         108  +
++ /dev/null
  167    109   
@@ -1 +0,0 @@
  168         -
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
  169    110   
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
  170    111   
deleted file mode 100644
  171    112   
index b4b78a1..0000000
  172         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq
         113  +
++ /dev/null
  173    114   
@@ -1,5 +0,0 @@
  174         -
POST / HTTP/1.1
  175         -
Host:example.amazonaws.com
  176         -
My-Header1:value1
  177         -
X-Amz-Date:20150830T123600Z
  178         -
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
  179    115   
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
  180    116   
deleted file mode 100644
  181    117   
index d9e52a3..0000000
  182         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz
         118  +
++ /dev/null
  183    119   
@@ -1 +0,0 @@
  184         -
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
  185    120   
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
  186    121   
deleted file mode 100644
  187    122   
index 99c3210..0000000
  188         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq
         123  +
++ /dev/null
  189    124   
@@ -1,5 +0,0 @@
  190         -
POST / HTTP/1.1
  191         -
Host:example.amazonaws.com
  192         -
My-Header1:VALUE1
  193         -
X-Amz-Date:20150830T123600Z
  194         -
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
  195    125   
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
  196    126   
deleted file mode 100644
  197    127   
index 89e572e..0000000
  198         -
-- 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
         128  +
++ /dev/null
  199    129   
@@ -1 +0,0 @@
  200         -
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
  201    130   
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
  202    131   
deleted file mode 100644
  203    132   
index 64aa046..0000000
  204         -
-- 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
         133  +
++ /dev/null
  205    134   
@@ -1 +0,0 @@
  206         -
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
  207    135   
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
  208    136   
deleted file mode 100644
  209    137   
index cc34282..0000000
  210         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt
         138  +
++ /dev/null
  211    139   
@@ -1,15 +0,0 @@
  212         -
A note about using temporary security credentials:
  213         -

  214         -
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).
  215         -

  216         -
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.
  217         -

  218         -
The test suite has 2 examples:
  219         -

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

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

  224         -
The test suite uses this example value for X-Amz-Security-Token:
  225         -

  226         -
AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
  227    140   
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
  228    141   
deleted file mode 100644
  229    142   
index 44280cd..0000000
  230         -
-- 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
         143  +
++ /dev/null
  231    144   
@@ -1 +0,0 @@
  232         -
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
  233    145   
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
  234    146   
deleted file mode 100644
  235    147   
index 82af150..0000000
  236         -
-- 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
         148  +
++ /dev/null
  237    149   
@@ -1,4 +0,0 @@
  238         -
POST /?Param1=value1 HTTP/1.1
  239         -
Host:example.amazonaws.com
  240         -
X-Amz-Date:20150830T123600Z
  241         -
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
  242    150   
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
  243    151   
deleted file mode 100644
  244    152   
index 44280cd..0000000
  245         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz
         153  +
++ /dev/null
  246    154   
@@ -1 +0,0 @@
  247         -
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
  248    155   
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
  249    156   
deleted file mode 100644
  250    157   
index 82af150..0000000
  251         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq
         158  +
++ /dev/null
  252    159   
@@ -1,4 +0,0 @@
  253         -
POST /?Param1=value1 HTTP/1.1
  254         -
Host:example.amazonaws.com
  255         -
X-Amz-Date:20150830T123600Z
  256         -
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
  257    160   
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
  258    161   
deleted file mode 100644
  259    162   
index 89e572e..0000000
  260         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
         163  +
++ /dev/null
  261    164   
@@ -1 +0,0 @@
  262         -
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
  263    165   
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
  264    166   
deleted file mode 100644
  265    167   
index a5ada0d..0000000
  266         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq
         168  +
++ /dev/null
  267    169   
@@ -1,4 +0,0 @@
  268         -
POST / HTTP/1.1
  269         -
Host:example.amazonaws.com
  270         -
X-Amz-Date:20150830T123600Z
  271         -
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
  272    170   
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
  273    171   
deleted file mode 100644
  274    172   
index df90ca3..0000000
  275         -
-- 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
         173  +
++ /dev/null
  276    174   
@@ -1 +0,0 @@
  277         -
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
  278    175   
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
  279    176   
deleted file mode 100644
  280    177   
index 457b0d5..0000000
  281         -
-- 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
         178  +
++ /dev/null
  282    179   
@@ -1,9 +0,0 @@
  283         -
POST
  284         -
/
  285         -
Param1=value1
  286         -
content-type:application/x-www-form-urlencoded; charset=utf-8
  287         -
host:example.amazonaws.com
  288         -
x-amz-date:20150830T123600Z
  289         -
  290         -
content-type;host;x-amz-date
  291         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  292    180   
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
  293    181   
deleted file mode 100644
  294    182   
index b8ecb89..0000000
  295         -
-- 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
         183  +
++ /dev/null
  296    184   
@@ -1,7 +0,0 @@
  297         -
POST / HTTP/1.1
  298         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  299         -
Host:example.amazonaws.com
  300         -
X-Amz-Date:20150830T123600Z
  301         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ad1ac0c5fa1793b9b9d23894903b9ce84044d014533a633091e12c840473b393
  302         -
  303         -
Param1=value1
              \
 No newline at end of file
  304    185   
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
  305    186   
deleted file mode 100644
  306    187   
index 79077d2..0000000
  307         -
-- 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
         188  +
++ /dev/null
  308    189   
@@ -1 +0,0 @@
  309         -
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
  310    190   
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
  311    191   
deleted file mode 100644
  312    192   
index 7852617..0000000
  313         -
-- 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
         193  +
++ /dev/null
  314    194   
@@ -1,4 +0,0 @@
  315         -
POST / HTTP/1.1
  316         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  317         -
Host:example.amazonaws.com
  318         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  319    195   
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
  320    196   
deleted file mode 100644
  321    197   
index 3e2e571..0000000
  322         -
-- 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
         198  +
++ /dev/null
  323    199   
@@ -1,4 +0,0 @@
  324         -
POST / HTTP/1.1
  325         -
Host:example.amazonaws.com
  326         -
X-Amz-Date:20150830T123600Z
  327         -
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
  328    200   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.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
  329    201   
deleted file mode 100644
  330    202   
index 89ceae8..0000000
  331         -
-- 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
         203  +
++ /dev/null
  332    204   
@@ -1,4 +0,0 @@
  333         -
AWS4-HMAC-SHA256
  334         -
20150830T123600Z
  335         -
20150830/us-east-1/service/aws4_request
  336         -
6a42edc18395dd67cc71407d4307ff29ab1646b08c1a0107edb319e08e2bc584
              \
 No newline at end of file
  337    205   
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
  338    206   
deleted file mode 100755
  339    207   
index d645695..0000000
  340         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE
         208  +
++ /dev/null
  341    209   
@@ -1,202 +0,0 @@
  342         -
  343         -
                                 Apache License
  344         -
                           Version 2.0, January 2004
  345         -
                        http://www.apache.org/licenses/
  346         -
  347         -
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
  348         -
  349         -
   1. Definitions.
  350         -
  351         -
      "License" shall mean the terms and conditions for use, reproduction,
  352         -
      and distribution as defined by Sections 1 through 9 of this document.
  353         -
  354         -
      "Licensor" shall mean the copyright owner or entity authorized by
  355         -
      the copyright owner that is granting the License.
  356         -
  357         -
      "Legal Entity" shall mean the union of the acting entity and all
  358         -
      other entities that control, are controlled by, or are under common
  359         -
      control with that entity. For the purposes of this definition,
  360         -
      "control" means (i) the power, direct or indirect, to cause the
  361         -
      direction or management of such entity, whether by contract or
  362         -
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
  363         -
      outstanding shares, or (iii) beneficial ownership of such entity.
  364         -
  365         -
      "You" (or "Your") shall mean an individual or Legal Entity
  366         -
      exercising permissions granted by this License.
  367         -
  368         -
      "Source" form shall mean the preferred form for making modifications,
  369         -
      including but not limited to software source code, documentation
  370         -
      source, and configuration files.
  371         -
  372         -
      "Object" form shall mean any form resulting from mechanical
  373         -
      transformation or translation of a Source form, including but
  374         -
      not limited to compiled object code, generated documentation,
  375         -
      and conversions to other media types.
  376         -
  377         -
      "Work" shall mean the work of authorship, whether in Source or
  378         -
      Object form, made available under the License, as indicated by a
  379         -
      copyright notice that is included in or attached to the work
  380         -
      (an example is provided in the Appendix below).
  381         -
  382         -
      "Derivative Works" shall mean any work, whether in Source or Object
  383         -
      form, that is based on (or derived from) the Work and for which the
  384         -
      editorial revisions, annotations, elaborations, or other modifications
  385         -
      represent, as a whole, an original work of authorship. For the purposes
  386         -
      of this License, Derivative Works shall not include works that remain
  387         -
      separable from, or merely link (or bind by name) to the interfaces of,
  388         -
      the Work and Derivative Works thereof.
  389         -
  390         -
      "Contribution" shall mean any work of authorship, including
  391         -
      the original version of the Work and any modifications or additions
  392         -
      to that Work or Derivative Works thereof, that is intentionally
  393         -
      submitted to Licensor for inclusion in the Work by the copyright owner
  394         -
      or by an individual or Legal Entity authorized to submit on behalf of
  395         -
      the copyright owner. For the purposes of this definition, "submitted"
  396         -
      means any form of electronic, verbal, or written communication sent
  397         -
      to the Licensor or its representatives, including but not limited to
  398         -
      communication on electronic mailing lists, source code control systems,
  399         -
      and issue tracking systems that are managed by, or on behalf of, the
  400         -
      Licensor for the purpose of discussing and improving the Work, but
  401         -
      excluding communication that is conspicuously marked or otherwise
  402         -
      designated in writing by the copyright owner as "Not a Contribution."
  403         -
  404         -
      "Contributor" shall mean Licensor and any individual or Legal Entity
  405         -
      on behalf of whom a Contribution has been received by Licensor and
  406         -
      subsequently incorporated within the Work.
  407         -
  408         -
   2. Grant of Copyright License. Subject to the terms and conditions of
  409         -
      this License, each Contributor hereby grants to You a perpetual,
  410         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  411         -
      copyright license to reproduce, prepare Derivative Works of,
  412         -
      publicly display, publicly perform, sublicense, and distribute the
  413         -
      Work and such Derivative Works in Source or Object form.
  414         -
  415         -
   3. Grant of Patent License. Subject to the terms and conditions of
  416         -
      this License, each Contributor hereby grants to You a perpetual,
  417         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  418         -
      (except as stated in this section) patent license to make, have made,
  419         -
      use, offer to sell, sell, import, and otherwise transfer the Work,
  420         -
      where such license applies only to those patent claims licensable
  421         -
      by such Contributor that are necessarily infringed by their
  422         -
      Contribution(s) alone or by combination of their Contribution(s)
  423         -
      with the Work to which such Contribution(s) was submitted. If You
  424         -
      institute patent litigation against any entity (including a
  425         -
      cross-claim or counterclaim in a lawsuit) alleging that the Work
  426         -
      or a Contribution incorporated within the Work constitutes direct
  427         -
      or contributory patent infringement, then any patent licenses
  428         -
      granted to You under this License for that Work shall terminate
  429         -
      as of the date such litigation is filed.
  430         -
  431         -
   4. Redistribution. You may reproduce and distribute copies of the
  432         -
      Work or Derivative Works thereof in any medium, with or without
  433         -
      modifications, and in Source or Object form, provided that You
  434         -
      meet the following conditions:
  435         -
  436         -
      (a) You must give any other recipients of the Work or
  437         -
          Derivative Works a copy of this License; and
  438         -
  439         -
      (b) You must cause any modified files to carry prominent notices
  440         -
          stating that You changed the files; and
  441         -
  442         -
      (c) You must retain, in the Source form of any Derivative Works
  443         -
          that You distribute, all copyright, patent, trademark, and
  444         -
          attribution notices from the Source form of the Work,
  445         -
          excluding those notices that do not pertain to any part of
  446         -
          the Derivative Works; and
  447         -
  448         -
      (d) If the Work includes a "NOTICE" text file as part of its
  449         -
          distribution, then any Derivative Works that You distribute must
  450         -
          include a readable copy of the attribution notices contained
  451         -
          within such NOTICE file, excluding those notices that do not
  452         -
          pertain to any part of the Derivative Works, in at least one
  453         -
          of the following places: within a NOTICE text file distributed
  454         -
          as part of the Derivative Works; within the Source form or
  455         -
          documentation, if provided along with the Derivative Works; or,
  456         -
          within a display generated by the Derivative Works, if and
  457         -
          wherever such third-party notices normally appear. The contents
  458         -
          of the NOTICE file are for informational purposes only and
  459         -
          do not modify the License. You may add Your own attribution
  460         -
          notices within Derivative Works that You distribute, alongside
  461         -
          or as an addendum to the NOTICE text from the Work, provided
  462         -
          that such additional attribution notices cannot be construed
  463         -
          as modifying the License.
  464         -
  465         -
      You may add Your own copyright statement to Your modifications and
  466         -
      may provide additional or different license terms and conditions
  467         -
      for use, reproduction, or distribution of Your modifications, or
  468         -
      for any such Derivative Works as a whole, provided Your use,
  469         -
      reproduction, and distribution of the Work otherwise complies with
  470         -
      the conditions stated in this License.
  471         -
  472         -
   5. Submission of Contributions. Unless You explicitly state otherwise,
  473         -
      any Contribution intentionally submitted for inclusion in the Work
  474         -
      by You to the Licensor shall be under the terms and conditions of
  475         -
      this License, without any additional terms or conditions.
  476         -
      Notwithstanding the above, nothing herein shall supersede or modify
  477         -
      the terms of any separate license agreement you may have executed
  478         -
      with Licensor regarding such Contributions.
  479         -
  480         -
   6. Trademarks. This License does not grant permission to use the trade
  481         -
      names, trademarks, service marks, or product names of the Licensor,
  482         -
      except as required for reasonable and customary use in describing the
  483         -
      origin of the Work and reproducing the content of the NOTICE file.
  484         -
  485         -
   7. Disclaimer of Warranty. Unless required by applicable law or
  486         -
      agreed to in writing, Licensor provides the Work (and each
  487         -
      Contributor provides its Contributions) on an "AS IS" BASIS,
  488         -
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
  489         -
      implied, including, without limitation, any warranties or conditions
  490         -
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
  491         -
      PARTICULAR PURPOSE. You are solely responsible for determining the
  492         -
      appropriateness of using or redistributing the Work and assume any
  493         -
      risks associated with Your exercise of permissions under this License.
  494         -
  495         -
   8. Limitation of Liability. In no event and under no legal theory,
  496         -
      whether in tort (including negligence), contract, or otherwise,
  497         -
      unless required by applicable law (such as deliberate and grossly
  498         -
      negligent acts) or agreed to in writing, shall any Contributor be
  499         -
      liable to You for damages, including any direct, indirect, special,
  500         -
      incidental, or consequential damages of any character arising as a
  501         -
      result of this License or out of the use or inability to use the
  502         -
      Work (including but not limited to damages for loss of goodwill,
  503         -
      work stoppage, computer failure or malfunction, or any and all
  504         -
      other commercial damages or losses), even if such Contributor
  505         -
      has been advised of the possibility of such damages.
  506         -
  507         -
   9. Accepting Warranty or Additional Liability. While redistributing
  508         -
      the Work or Derivative Works thereof, You may choose to offer,
  509         -
      and charge a fee for, acceptance of support, warranty, indemnity,
  510         -
      or other liability obligations and/or rights consistent with this
  511         -
      License. However, in accepting such obligations, You may act only
  512         -
      on Your own behalf and on Your sole responsibility, not on behalf
  513         -
      of any other Contributor, and only if You agree to indemnify,
  514         -
      defend, and hold each Contributor harmless for any liability
  515         -
      incurred by, or claims asserted against, such Contributor by reason
  516         -
      of your accepting any such warranty or additional liability.
  517         -
  518         -
   END OF TERMS AND CONDITIONS
  519         -
  520         -
   APPENDIX: How to apply the Apache License to your work.
  521         -
  522         -
      To apply the Apache License to your work, attach the following
  523         -
      boilerplate notice, with the fields enclosed by brackets "[]"
  524         -
      replaced with your own identifying information. (Don't include
  525         -
      the brackets!)  The text should be enclosed in the appropriate
  526         -
      comment syntax for the file format. We also recommend that a
  527         -
      file or class name and description of purpose be included on the
  528         -
      same "printed page" as the copyright notice for easier
  529         -
      identification within third-party archives.
  530         -
  531         -
   Copyright [yyyy] [name of copyright owner]
  532         -
  533         -
   Licensed under the Apache License, Version 2.0 (the "License");
  534         -
   you may not use this file except in compliance with the License.
  535         -
   You may obtain a copy of the License at
  536         -
  537         -
       http://www.apache.org/licenses/LICENSE-2.0
  538         -
  539         -
   Unless required by applicable law or agreed to in writing, software
  540         -
   distributed under the License is distributed on an "AS IS" BASIS,
  541         -
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  542         -
   See the License for the specific language governing permissions and
  543         -
   limitations under the License.
  544    210   
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
  545    211   
deleted file mode 100755
  546    212   
index d85f69e..0000000
  547         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE
         213  +
++ /dev/null
  548    214   
@@ -1,2 +0,0 @@
  549         -
AWS Signature Version 4a Test Suite
  550         -
Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  551    215   
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
  552    216   
deleted file mode 100644
  553    217   
index c716622..0000000
  554         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md
         218  +
++ /dev/null
  555    219   
@@ -1,24 +0,0 @@
  556         -
Where did the files in this directory come from?
  557         -
================================================
  558         -
  559         -
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.
  560         -
  561         -
Signature Version 4A Test Suite
  562         -
------------------------------
  563         -
  564         -
To assist you in the development of an AWS client that supports Signature Version 4A, you can use the
  565         -
files in the test suite to ensure your code is performing each step of the signing process correctly.
  566         -
  567         -
Each test group contains several files that you can use to validate most of the tasks described in
  568         -
Signature Version 4A Signing Process. The following list describes the contents of each file.
  569         -
  570         -
- context.json - Credentials and signer options to use when signing test requests
  571         -
- request.txt - The web request to be signed.
  572         -
- header-canonical-request.txt - The resulting canonical request in header-signature mode.
  573         -
- header-string-to-sign.txt - The resulting string to sign in header-signature mode.
  574         -
- query-canonical-request.txt - The resulting canonical request in query-signature mode.
  575         -
- query-string-to-sign.txt - The resulting string to sign in header-query mode.
  576         -
  577         -
Sigv4A signature generation isn't deterministic, so generated signatures can't be tested against known good ones.
  578         -
Instead, tests generate a signature, derive a verification key from the signing key, and verify the signature and
  579         -
the string to sign. This mirrors what AWS services do when verifying Sigv4A-signed requests.
  580    220   
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
  581    221   
deleted file mode 100644
  582    222   
index 45771c7..0000000
  583         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json
         223  +
++ /dev/null
  584    224   
@@ -1,12 +0,0 @@
  585         -
{
  586         -
    "credentials": {
  587         -
        "access_key_id": "AKIDEXAMPLE",
  588         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  589         -
    },
  590         -
    "expiration_in_seconds": 3600,
  591         -
    "normalize": true,
  592         -
    "region": "us-east-1",
  593         -
    "service": "service",
  594         -
    "sign_body": false,
  595         -
    "timestamp": "2015-08-30T12:36:00Z"
  596         -
}
  597    225   
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
  598    226   
deleted file mode 100644
  599    227   
index 45771c7..0000000
  600         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json
         228  +
++ /dev/null
  601    229   
@@ -1,12 +0,0 @@
  602         -
{
  603         -
    "credentials": {
  604         -
        "access_key_id": "AKIDEXAMPLE",
  605         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  606         -
    },
  607         -
    "expiration_in_seconds": 3600,
  608         -
    "normalize": true,
  609         -
    "region": "us-east-1",
  610         -
    "service": "service",
  611         -
    "sign_body": false,
  612         -
    "timestamp": "2015-08-30T12:36:00Z"
  613         -
}
  614    230   
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
  615    231   
deleted file mode 100644
  616    232   
index 45771c7..0000000
  617         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json
         233  +
++ /dev/null
  618    234   
@@ -1,12 +0,0 @@
  619         -
{
  620         -
    "credentials": {
  621         -
        "access_key_id": "AKIDEXAMPLE",
  622         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  623         -
    },
  624         -
    "expiration_in_seconds": 3600,
  625         -
    "normalize": true,
  626         -
    "region": "us-east-1",
  627         -
    "service": "service",
  628         -
    "sign_body": false,
  629         -
    "timestamp": "2015-08-30T12:36:00Z"
  630         -
}
  631    235   
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
  632    236   
deleted file mode 100644
  633    237   
index 45771c7..0000000
  634         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json
         238  +
++ /dev/null
  635    239   
@@ -1,12 +0,0 @@
  636         -
{
  637         -
    "credentials": {
  638         -
        "access_key_id": "AKIDEXAMPLE",
  639         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  640         -
    },
  641         -
    "expiration_in_seconds": 3600,
  642         -
    "normalize": true,
  643         -
    "region": "us-east-1",
  644         -
    "service": "service",
  645         -
    "sign_body": false,
  646         -
    "timestamp": "2015-08-30T12:36:00Z"
  647         -
}
  648    240   
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
  649    241   
deleted file mode 100644
  650    242   
index afe367b..0000000
  651         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json
         243  +
++ /dev/null
  652    244   
@@ -1,12 +0,0 @@
  653         -
{
  654         -
    "credentials": {
  655         -
        "access_key_id": "AKIDEXAMPLE",
  656         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  657         -
    },
  658         -
    "expiration_in_seconds": 3600,
  659         -
    "normalize": false,
  660         -
    "region": "us-east-1",
  661         -
    "service": "service",
  662         -
    "sign_body": false,
  663         -
    "timestamp": "2015-08-30T12:36:00Z"
  664         -
}
  665    245   
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
  666    246   
deleted file mode 100644
  667    247   
index 45771c7..0000000
  668         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json
         248  +
++ /dev/null
  669    249   
@@ -1,12 +0,0 @@
  670         -
{
  671         -
    "credentials": {
  672         -
        "access_key_id": "AKIDEXAMPLE",
  673         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  674         -
    },
  675         -
    "expiration_in_seconds": 3600,
  676         -
    "normalize": true,
  677         -
    "region": "us-east-1",
  678         -
    "service": "service",
  679         -
    "sign_body": false,
  680         -
    "timestamp": "2015-08-30T12:36:00Z"
  681         -
}
  682    250   
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
  683    251   
deleted file mode 100644
  684    252   
index afe367b..0000000
  685         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json
         253  +
++ /dev/null
  686    254   
@@ -1,12 +0,0 @@
  687         -
{
  688         -
    "credentials": {
  689         -
        "access_key_id": "AKIDEXAMPLE",
  690         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  691         -
    },
  692         -
    "expiration_in_seconds": 3600,
  693         -
    "normalize": false,
  694         -
    "region": "us-east-1",
  695         -
    "service": "service",
  696         -
    "sign_body": false,
  697         -
    "timestamp": "2015-08-30T12:36:00Z"
  698         -
}
  699    255   
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
  700    256   
deleted file mode 100644
  701    257   
index 45771c7..0000000
  702         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json
         258  +
++ /dev/null
  703    259   
@@ -1,12 +0,0 @@
  704         -
{
  705         -
    "credentials": {
  706         -
        "access_key_id": "AKIDEXAMPLE",
  707         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  708         -
    },
  709         -
    "expiration_in_seconds": 3600,
  710         -
    "normalize": true,
  711         -
    "region": "us-east-1",
  712         -
    "service": "service",
  713         -
    "sign_body": false,
  714         -
    "timestamp": "2015-08-30T12:36:00Z"
  715         -
}
  716    260   
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
  717    261   
deleted file mode 100644
  718    262   
index 45771c7..0000000
  719         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json
         263  +
++ /dev/null
  720    264   
@@ -1,12 +0,0 @@
  721         -
{
  722         -
    "credentials": {
  723         -
        "access_key_id": "AKIDEXAMPLE",
  724         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  725         -
    },
  726         -
    "expiration_in_seconds": 3600,
  727         -
    "normalize": true,
  728         -
    "region": "us-east-1",
  729         -
    "service": "service",
  730         -
    "sign_body": false,
  731         -
    "timestamp": "2015-08-30T12:36:00Z"
  732         -
}
  733    265   
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
  734    266   
deleted file mode 100644
  735    267   
index 45771c7..0000000
  736         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json
         268  +
++ /dev/null
  737    269   
@@ -1,12 +0,0 @@
  738         -
{
  739         -
    "credentials": {
  740         -
        "access_key_id": "AKIDEXAMPLE",
  741         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  742         -
    },
  743         -
    "expiration_in_seconds": 3600,
  744         -
    "normalize": true,
  745         -
    "region": "us-east-1",
  746         -
    "service": "service",
  747         -
    "sign_body": false,
  748         -
    "timestamp": "2015-08-30T12:36:00Z"
  749         -
}
  750    270   
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
  751    271   
deleted file mode 100644
  752    272   
index 45771c7..0000000
  753         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json
         273  +
++ /dev/null
  754    274   
@@ -1,12 +0,0 @@
  755         -
{
  756         -
    "credentials": {
  757         -
        "access_key_id": "AKIDEXAMPLE",
  758         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  759         -
    },
  760         -
    "expiration_in_seconds": 3600,
  761         -
    "normalize": true,
  762         -
    "region": "us-east-1",
  763         -
    "service": "service",
  764         -
    "sign_body": false,
  765         -
    "timestamp": "2015-08-30T12:36:00Z"
  766         -
}
  767    275   
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
  768    276   
deleted file mode 100644
  769    277   
index 45771c7..0000000
  770         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json
         278  +
++ /dev/null
  771    279   
@@ -1,12 +0,0 @@
  772         -
{
  773         -
    "credentials": {
  774         -
        "access_key_id": "AKIDEXAMPLE",
  775         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  776         -
    },
  777         -
    "expiration_in_seconds": 3600,
  778         -
    "normalize": true,
  779         -
    "region": "us-east-1",
  780         -
    "service": "service",
  781         -
    "sign_body": false,
  782         -
    "timestamp": "2015-08-30T12:36:00Z"
  783         -
}
  784    280   
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
  785    281   
deleted file mode 100644
  786    282   
index 47e7128..0000000
  787         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt
         283  +
++ /dev/null
  788    284   
@@ -1,9 +0,0 @@
  789         -
GET
  790         -
/
  791         -
  792         -
host:example.amazonaws.com
  793         -
x-amz-date:20150830T123600Z
  794         -
x-amz-region-set:us-east-1
  795         -
  796         -
host;x-amz-date;x-amz-region-set
  797         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  798    285   
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
  799    286   
deleted file mode 100644
  800    287   
index 95d7219..0000000
  801         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt
         288  +
++ /dev/null
  802    289   
@@ -1,4 +0,0 @@
  803         -
AWS4-ECDSA-P256-SHA256
  804         -
20150830T123600Z
  805         -
20150830/service/aws4_request
  806         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  807    290   
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
  808    291   
deleted file mode 100644
  809    292   
index a34ea26..0000000
  810         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt
         293  +
++ /dev/null
  811    294   
@@ -1,7 +0,0 @@
  812         -
GET
  813         -
/
  814         -
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
  815         -
host:example.amazonaws.com
  816         -
  817         -
host
  818         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  819    295   
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
  820    296   
deleted file mode 100644
  821    297   
index 48f855c..0000000
  822         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt
         298  +
++ /dev/null
  823    299   
@@ -1,4 +0,0 @@
  824         -
AWS4-ECDSA-P256-SHA256
  825         -
20150830T123600Z
  826         -
20150830/service/aws4_request
  827         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  828    300   
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
  829    301   
deleted file mode 100644
  830    302   
index 45771c7..0000000
  831         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json
         303  +
++ /dev/null
  832    304   
@@ -1,12 +0,0 @@
  833         -
{
  834         -
    "credentials": {
  835         -
        "access_key_id": "AKIDEXAMPLE",
  836         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  837         -
    },
  838         -
    "expiration_in_seconds": 3600,
  839         -
    "normalize": true,
  840         -
    "region": "us-east-1",
  841         -
    "service": "service",
  842         -
    "sign_body": false,
  843         -
    "timestamp": "2015-08-30T12:36:00Z"
  844         -
}
  845    305   
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
  846    306   
deleted file mode 100644
  847    307   
index 47e7128..0000000
  848         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt
         308  +
++ /dev/null
  849    309   
@@ -1,9 +0,0 @@
  850         -
GET
  851         -
/
  852         -
  853         -
host:example.amazonaws.com
  854         -
x-amz-date:20150830T123600Z
  855         -
x-amz-region-set:us-east-1
  856         -
  857         -
host;x-amz-date;x-amz-region-set
  858         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  859    310   
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
  860    311   
deleted file mode 100644
  861    312   
index 95d7219..0000000
  862         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt
         313  +
++ /dev/null
  863    314   
@@ -1,4 +0,0 @@
  864         -
AWS4-ECDSA-P256-SHA256
  865         -
20150830T123600Z
  866         -
20150830/service/aws4_request
  867         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  868    315   
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
  869    316   
deleted file mode 100644
  870    317   
index a34ea26..0000000
  871         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt
         318  +
++ /dev/null
  872    319   
@@ -1,7 +0,0 @@
  873         -
GET
  874         -
/
  875         -
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
  876         -
host:example.amazonaws.com
  877         -
  878         -
host
  879         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  880    320   
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
  881    321   
deleted file mode 100644
  882    322   
index 48f855c..0000000
  883         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt
         323  +
++ /dev/null
  884    324   
@@ -1,4 +0,0 @@
  885         -
AWS4-ECDSA-P256-SHA256
  886         -
20150830T123600Z
  887         -
20150830/service/aws4_request
  888         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  889    325   
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
  890    326   
deleted file mode 100644
  891    327   
index 45771c7..0000000
  892         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json
         328  +
++ /dev/null
  893    329   
@@ -1,12 +0,0 @@
  894         -
{
  895         -
    "credentials": {
  896         -
        "access_key_id": "AKIDEXAMPLE",
  897         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  898         -
    },
  899         -
    "expiration_in_seconds": 3600,
  900         -
    "normalize": true,
  901         -
    "region": "us-east-1",
  902         -
    "service": "service",
  903         -
    "sign_body": false,
  904         -
    "timestamp": "2015-08-30T12:36:00Z"
  905         -
}
  906    330   
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
  907    331   
deleted file mode 100644
  908    332   
index 45771c7..0000000
  909         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json
         333  +
++ /dev/null
  910    334   
@@ -1,12 +0,0 @@
  911         -
{
  912         -
    "credentials": {
  913         -
        "access_key_id": "AKIDEXAMPLE",
  914         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  915         -
    },
  916         -
    "expiration_in_seconds": 3600,
  917         -
    "normalize": true,
  918         -
    "region": "us-east-1",
  919         -
    "service": "service",
  920         -
    "sign_body": false,
  921         -
    "timestamp": "2015-08-30T12:36:00Z"
  922         -
}
  923    335   
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
  924    336   
deleted file mode 100644
  925    337   
index 45771c7..0000000
  926         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json
         338  +
++ /dev/null
  927    339   
@@ -1,12 +0,0 @@
  928         -
{
  929         -
    "credentials": {
  930         -
        "access_key_id": "AKIDEXAMPLE",
  931         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  932         -
    },
  933         -
    "expiration_in_seconds": 3600,
  934         -
    "normalize": true,
  935         -
    "region": "us-east-1",
  936         -
    "service": "service",
  937         -
    "sign_body": false,
  938         -
    "timestamp": "2015-08-30T12:36:00Z"
  939         -
}
  940    340   
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
  941    341   
deleted file mode 100644
  942    342   
index 45771c7..0000000
  943         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json
         343  +
++ /dev/null
  944    344   
@@ -1,12 +0,0 @@
  945         -
{
  946         -
    "credentials": {
  947         -
        "access_key_id": "AKIDEXAMPLE",
  948         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  949         -
    },
  950         -
    "expiration_in_seconds": 3600,
  951         -
    "normalize": true,
  952         -
    "region": "us-east-1",
  953         -
    "service": "service",
  954         -
    "sign_body": false,
  955         -
    "timestamp": "2015-08-30T12:36:00Z"
  956         -
}
  957    345   
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
  958    346   
deleted file mode 100644
  959    347   
index 45771c7..0000000
  960         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json
         348  +
++ /dev/null
  961    349   
@@ -1,12 +0,0 @@
  962         -
{
  963         -
    "credentials": {
  964         -
        "access_key_id": "AKIDEXAMPLE",
  965         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  966         -
    },
  967         -
    "expiration_in_seconds": 3600,
  968         -
    "normalize": true,
  969         -
    "region": "us-east-1",
  970         -
    "service": "service",
  971         -
    "sign_body": false,
  972         -
    "timestamp": "2015-08-30T12:36:00Z"
  973         -
}
  974    350   
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
  975    351   
deleted file mode 100644
  976    352   
index 45771c7..0000000
  977         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json
         353  +
++ /dev/null
  978    354   
@@ -1,12 +0,0 @@
  979         -
{
  980         -
    "credentials": {
  981         -
        "access_key_id": "AKIDEXAMPLE",
  982         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  983         -
    },
  984         -
    "expiration_in_seconds": 3600,
  985         -
    "normalize": true,
  986         -
    "region": "us-east-1",
  987         -
    "service": "service",
  988         -
    "sign_body": false,
  989         -
    "timestamp": "2015-08-30T12:36:00Z"
  990         -
}
  991    355   
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
  992    356   
deleted file mode 100644
  993    357   
index b6fdecf..0000000
  994         -
-- 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
         358  +
++ /dev/null
  995    359   
@@ -1,4 +0,0 @@
  996         -
AWS4-ECDSA-P256-SHA256
  997         -
20150830T123600Z
  998         -
20150830/service/aws4_request
  999         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
 1000    360   
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
 1001    361   
deleted file mode 100644
 1002    362   
index a300bea..0000000
 1003         -
-- 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
         363  +
++ /dev/null
 1004    364   
@@ -1,4 +0,0 @@
 1005         -
AWS4-ECDSA-P256-SHA256
 1006         -
20150830T123600Z
 1007         -
20150830/service/aws4_request
 1008         -
ab426c74406d082ad98929df8969624e6ed5cb7f4e8501fbbe7d8c20e9c3b417
 1009    365   
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
 1010    366   
deleted file mode 100644
 1011    367   
index b6fdecf..0000000
 1012         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt
         368  +
++ /dev/null
 1013    369   
@@ -1,4 +0,0 @@
 1014         -
AWS4-ECDSA-P256-SHA256
 1015         -
20150830T123600Z
 1016         -
20150830/service/aws4_request
 1017         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
 1018    370   
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
 1019    371   
new file mode 100644
 1020    372   
index 0000000..a674243
 1021         -
-- /dev/null
         373  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md
 1022    374   
@@ -0,0 +1,7 @@
         375  +
# AWS SigV4 and SigV4A Signing Test Suite
         376  +
         377  +
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).
         378  +
         379  +
We added the following changes:
         380  +
         381  +
* 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
 1023    382   
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
 1024    383   
similarity index 100%
 1025    384   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.creq
 1026    385   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-canonical-request.txt
 1027    386   
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
 1028    387   
similarity index 100%
 1029    388   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.sreq
 1030    389   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-signed-request.txt
 1031    390   
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
 1032    391   
similarity index 100%
 1033    392   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.req
 1034    393   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/request.txt
 1035    394   
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
 1036    395   
similarity index 100%
 1037    396   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.creq
 1038    397   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-canonical-request.txt
 1039    398   
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
 1040    399   
similarity index 100%
 1041    400   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sreq
 1042    401   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-signed-request.txt
 1043    402   
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
 1044    403   
similarity index 100%
 1045    404   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sts
 1046    405   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-string-to-sign.txt
 1047    406   
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
 1048    407   
similarity index 100%
 1049    408   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.req
 1050    409   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/request.txt
 1051    410   
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
 1052    411   
similarity index 99%
 1053    412   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
 1054    413   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
 1055    414   
index 45771c7..0468d80 100644
 1056    415   
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
 1057    416   
similarity index 100%
 1058    417   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq
 1059    418   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
 1060    419   
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
 1061    420   
new file mode 100644
 1062    421   
index 0000000..7fc5d7a
 1063         -
-- /dev/null
         422  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
 1064    423   
@@ -0,0 +1 @@
         424  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
 1065    425   
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
 1066    426   
new file mode 100644
 1067    427   
index 0000000..36a1205
 1068         -
-- /dev/null
         428  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
 1069    429   
@@ -0,0 +1,8 @@
         430  +
GET / HTTP/1.1
         431  +
Host:example.amazonaws.com
         432  +
My-Header1:value2
         433  +
My-Header1:value2
         434  +
My-Header1:value1
         435  +
X-Amz-Date:20150830T123600Z
         436  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
         437  +
 1070    438   
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
 1071    439   
similarity index 100%
 1072    440   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
 1073    441   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
 1074    442   
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
 1075    443   
new file mode 100644
 1076    444   
index 0000000..f9f4190
 1077         -
-- /dev/null
         445  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
 1078    446   
@@ -0,0 +1,8 @@
         447  +
GET
         448  +
/
         449  +
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
         450  +
host:example.amazonaws.com
         451  +
my-header1:value2,value2,value1
         452  +
         453  +
host;my-header1
         454  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1079    455   
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
 1080    456   
new file mode 100644
 1081    457   
index 0000000..5d0d87f
 1082         -
-- /dev/null
         458  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
 1083    459   
@@ -0,0 +1 @@
         460  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
 1084    461   
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
 1085    462   
new file mode 100644
 1086    463   
index 0000000..c1dfcf4
 1087         -
-- /dev/null
         464  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
 1088    465   
@@ -0,0 +1,6 @@
         466  +
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
         467  +
Host:example.amazonaws.com
         468  +
My-Header1:value2
         469  +
My-Header1:value2
         470  +
My-Header1:value1
         471  +
 1089    472   
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
 1090    473   
similarity index 53%
 1091    474   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
 1092    475   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1093    476   
index 0a3350a..077c1bb 100644
 1094         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
         477  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1095    478   
@@ -1,4 +1,4 @@
 1096    479   
AWS4-HMAC-SHA256
 1097    480   
20150830T123600Z
 1098    481   
20150830/us-east-1/service/aws4_request
 1099         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
         482  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
 1100    483   
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
 1101    484   
similarity index 100%
 1102    485   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
 1103    486   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
 1104    487   
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
 1105    488   
similarity index 99%
 1106    489   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
 1107    490   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1108    491   
index 45771c7..0468d80 100644
 1109    492   
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
 1110    493   
similarity index 82%
 1111    494   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
 1112    495   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1113    496   
index 721a39f..8cb5476 100644
 1114         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
         497  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1115    498   
@@ -1,9 +1,9 @@
 1116    499   
GET
 1117    500   
/
 1118    501   
 1119    502   
host:example.amazonaws.com
 1120         -
my-header1:value1,value2,value3
         503  +
my-header1:value1 value2 value3
 1121    504   
x-amz-date:20150830T123600Z
 1122    505   
 1123    506   
host;my-header1;x-amz-date
 1124    507   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1125    508   
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
 1126    509   
new file mode 100644
 1127    510   
index 0000000..e6ff7a9
 1128         -
-- /dev/null
         511  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
 1129    512   
@@ -0,0 +1 @@
         513  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
 1130    514   
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
 1131    515   
new file mode 100644
 1132    516   
index 0000000..b5ef6a0
 1133         -
-- /dev/null
         517  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
 1134    518   
@@ -0,0 +1,8 @@
         519  +
GET / HTTP/1.1
         520  +
Host:example.amazonaws.com
         521  +
My-Header1:value1
         522  +
  value2
         523  +
     value3
         524  +
X-Amz-Date:20150830T123600Z
         525  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         526  +
 1135    527   
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
 1136    528   
similarity index 53%
 1137    529   
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
 1138    530   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1139    531   
index fd43a41..97c7430 100644
 1140         -
-- 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
         532  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1141    533   
@@ -1,4 +1,4 @@
 1142    534   
AWS4-HMAC-SHA256
 1143    535   
20150830T123600Z
 1144    536   
20150830/us-east-1/service/aws4_request
 1145         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         537  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
 1146    538   
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
 1147    539   
new file mode 100644
 1148    540   
index 0000000..aac46de
 1149         -
-- /dev/null
         541  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
 1150    542   
@@ -0,0 +1,8 @@
         543  +
GET
         544  +
/
         545  +
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
         546  +
host:example.amazonaws.com
         547  +
my-header1:value1 value2 value3
         548  +
         549  +
host;my-header1
         550  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1151    551   
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
 1152    552   
new file mode 100644
 1153    553   
index 0000000..205732d
 1154         -
-- /dev/null
         554  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
 1155    555   
@@ -0,0 +1 @@
         556  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
 1156    557   
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
 1157    558   
new file mode 100644
 1158    559   
index 0000000..a891b87
 1159         -
-- /dev/null
         560  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
 1160    561   
@@ -0,0 +1,6 @@
         562  +
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
         563  +
Host:example.amazonaws.com
         564  +
My-Header1:value1
         565  +
  value2
         566  +
     value3
         567  +
 1161    568   
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
 1162    569   
similarity index 53%
 1163    570   
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
 1164    571   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1165    572   
index 90e66b8..ec3fe45 100644
 1166         -
-- 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
         573  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1167    574   
@@ -1,4 +1,4 @@
 1168    575   
AWS4-HMAC-SHA256
 1169    576   
20150830T123600Z
 1170    577   
20150830/us-east-1/service/aws4_request
 1171         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         578  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
 1172    579   
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
 1173    580   
similarity index 75%
 1174    581   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
 1175    582   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1176    583   
index 7caa6ac..b5026cd 100644
 1177         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         584  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1178    585   
@@ -1,6 +1,5 @@
 1179    586   
GET / HTTP/1.1
 1180    587   
Host:example.amazonaws.com
 1181    588   
My-Header1:value1
 1182    589   
  value2
 1183    590   
     value3
 1184         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1185    591   
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
 1186    592   
similarity index 99%
 1187    593   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
 1188    594   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1189    595   
index 45771c7..0468d80 100644
 1190    596   
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
 1191    597   
similarity index 100%
 1192    598   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
 1193    599   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1194    600   
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
 1195    601   
new file mode 100644
 1196    602   
index 0000000..8ef0494
 1197         -
-- /dev/null
         603  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1198    604   
@@ -0,0 +1 @@
         605  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
 1199    606   
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
 1200    607   
new file mode 100644
 1201    608   
index 0000000..b786dc9
 1202         -
-- /dev/null
         609  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1203    610   
@@ -0,0 +1,9 @@
         611  +
GET / HTTP/1.1
         612  +
Host:example.amazonaws.com
         613  +
My-Header1:value4
         614  +
My-Header1:value1
         615  +
My-Header1:value3
         616  +
My-Header1:value2
         617  +
X-Amz-Date:20150830T123600Z
         618  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         619  +
 1204    620   
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
 1205    621   
similarity index 100%
 1206    622   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
 1207    623   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1208    624   
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
 1209    625   
new file mode 100644
 1210    626   
index 0000000..a211cc5
 1211         -
-- /dev/null
         627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1212    628   
@@ -0,0 +1,8 @@
         629  +
GET
         630  +
/
         631  +
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
         632  +
host:example.amazonaws.com
         633  +
my-header1:value4,value1,value3,value2
         634  +
         635  +
host;my-header1
         636  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1213    637   
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
 1214    638   
new file mode 100644
 1215    639   
index 0000000..417b0fa
 1216         -
-- /dev/null
         640  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1217    641   
@@ -0,0 +1 @@
         642  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
 1218    643   
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
 1219    644   
new file mode 100644
 1220    645   
index 0000000..b615e5d
 1221         -
-- /dev/null
         646  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1222    647   
@@ -0,0 +1,7 @@
         648  +
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
         649  +
Host:example.amazonaws.com
         650  +
My-Header1:value4
         651  +
My-Header1:value1
         652  +
My-Header1:value3
         653  +
My-Header1:value2
         654  +
 1223    655   
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
 1224    656   
similarity index 53%
 1225    657   
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
 1226    658   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1227    659   
index f7e615e..dcaaa1b 100644
 1228         -
-- 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
         660  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1229    661   
@@ -1,4 +1,4 @@
 1230    662   
AWS4-HMAC-SHA256
 1231    663   
20150830T123600Z
 1232    664   
20150830/us-east-1/service/aws4_request
 1233         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         665  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
 1234    666   
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
 1235    667   
similarity index 100%
 1236    668   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
 1237    669   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1238    670   
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
 1239    671   
similarity index 99%
 1240    672   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
 1241    673   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1242    674   
index 45771c7..0468d80 100644
 1243    675   
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
 1244    676   
similarity index 100%
 1245    677   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
 1246    678   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1247    679   
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
 1248    680   
new file mode 100644
 1249    681   
index 0000000..36081a9
 1250         -
-- /dev/null
         682  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1251    683   
@@ -0,0 +1 @@
         684  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
 1252    685   
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
 1253    686   
new file mode 100644
 1254    687   
index 0000000..6331d16
 1255         -
-- /dev/null
         688  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1256    689   
@@ -0,0 +1,7 @@
         690  +
GET / HTTP/1.1
         691  +
Host:example.amazonaws.com
         692  +
My-Header1: value1
         693  +
My-Header2: "a   b   c"
         694  +
X-Amz-Date:20150830T123600Z
         695  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         696  +
 1257    697   
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
 1258    698   
similarity index 100%
 1259    699   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
 1260    700   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1261    701   
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
 1262    702   
new file mode 100644
 1263    703   
index 0000000..125c1f9
 1264         -
-- /dev/null
         704  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1265    705   
@@ -0,0 +1,9 @@
         706  +
GET
         707  +
/
         708  +
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
         709  +
host:example.amazonaws.com
         710  +
my-header1:value1
         711  +
my-header2:"a b c"
         712  +
         713  +
host;my-header1;my-header2
         714  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1266    715   
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
 1267    716   
new file mode 100644
 1268    717   
index 0000000..17007a8
 1269         -
-- /dev/null
         718  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1270    719   
@@ -0,0 +1 @@
         720  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
 1271    721   
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
 1272    722   
new file mode 100644
 1273    723   
index 0000000..e519fd9
 1274         -
-- /dev/null
         724  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1275    725   
@@ -0,0 +1,5 @@
         726  +
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
         727  +
Host:example.amazonaws.com
         728  +
My-Header1: value1
         729  +
My-Header2: "a   b   c"
         730  +
 1276    731   
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
 1277    732   
new file mode 100644
 1278    733   
index 0000000..6b4b781
 1279         -
-- /dev/null
         734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1280    735   
@@ -0,0 +1,4 @@
         736  +
AWS4-HMAC-SHA256
         737  +
20150830T123600Z
         738  +
20150830/us-east-1/service/aws4_request
         739  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
 1281    740   
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
 1282    741   
similarity index 100%
 1283    742   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
 1284    743   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1285    744   
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
 1286    745   
new file mode 100644
 1287    746   
index 0000000..0468d80
 1288         -
-- /dev/null
         747  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1289    748   
@@ -0,0 +1,12 @@
         749  +
{
         750  +
    "credentials": {
         751  +
        "access_key_id": "AKIDEXAMPLE",
         752  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         753  +
    },
         754  +
    "expiration_in_seconds": 3600,
         755  +
    "normalize": true,
         756  +
    "region": "us-east-1",
         757  +
    "service": "service",
         758  +
    "sign_body": false,
         759  +
    "timestamp": "2015-08-30T12:36:00Z"
         760  +
}
              \
 No newline at end of file
 1290    761   
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
 1291    762   
similarity index 100%
 1292    763   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
 1293    764   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1294    765   
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
 1295    766   
new file mode 100644
 1296    767   
index 0000000..87f295f
 1297         -
-- /dev/null
         768  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1298    769   
@@ -0,0 +1 @@
         770  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1299    771   
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
 1300    772   
new file mode 100644
 1301    773   
index 0000000..0de8327
 1302         -
-- /dev/null
         774  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1303    775   
@@ -0,0 +1,5 @@
         776  +
GET /example/.. HTTP/1.1
         777  +
Host:example.amazonaws.com
         778  +
X-Amz-Date:20150830T123600Z
         779  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         780  +
 1304    781   
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
 1305    782   
similarity index 100%
 1306    783   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
 1307    784   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1308    785   
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
 1309    786   
new file mode 100644
 1310    787   
index 0000000..fb2420d
 1311         -
-- /dev/null
         788  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1312    789   
@@ -0,0 +1,7 @@
         790  +
GET
         791  +
/
         792  +
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
         793  +
host:example.amazonaws.com
         794  +
         795  +
host
         796  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1313    797   
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
 1314    798   
new file mode 100644
 1315    799   
index 0000000..da5c905
 1316         -
-- /dev/null
         800  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1317    801   
@@ -0,0 +1 @@
         802  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1318    803   
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
 1319    804   
new file mode 100644
 1320    805   
index 0000000..4329c98
 1321         -
-- /dev/null
         806  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1322    807   
@@ -0,0 +1,3 @@
         808  +
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
         809  +
Host:example.amazonaws.com
         810  +
 1323    811   
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
 1324    812   
new file mode 100644
 1325    813   
index 0000000..d837e67
 1326         -
-- /dev/null
         814  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1327    815   
@@ -0,0 +1,4 @@
         816  +
AWS4-HMAC-SHA256
         817  +
20150830T123600Z
         818  +
20150830/us-east-1/service/aws4_request
         819  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1328    820   
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
 1329    821   
similarity index 100%
 1330    822   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
 1331    823   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1332    824   
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
 1333    825   
new file mode 100644
 1334    826   
index 0000000..0468d80
 1335         -
-- /dev/null
         827  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1336    828   
@@ -0,0 +1,12 @@
         829  +
{
         830  +
    "credentials": {
         831  +
        "access_key_id": "AKIDEXAMPLE",
         832  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         833  +
    },
         834  +
    "expiration_in_seconds": 3600,
         835  +
    "normalize": true,
         836  +
    "region": "us-east-1",
         837  +
    "service": "service",
         838  +
    "sign_body": false,
         839  +
    "timestamp": "2015-08-30T12:36:00Z"
         840  +
}
              \
 No newline at end of file
 1337    841   
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
 1338    842   
similarity index 100%
 1339    843   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
 1340    844   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1341    845   
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
 1342    846   
new file mode 100644
 1343    847   
index 0000000..87f295f
 1344         -
-- /dev/null
         848  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1345    849   
@@ -0,0 +1 @@
         850  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1346    851   
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
 1347    852   
new file mode 100644
 1348    853   
index 0000000..f9b3815
 1349         -
-- /dev/null
         854  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1350    855   
@@ -0,0 +1,5 @@
         856  +
GET /example1/example2/../.. HTTP/1.1
         857  +
Host:example.amazonaws.com
         858  +
X-Amz-Date:20150830T123600Z
         859  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         860  +
 1351    861   
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
 1352    862   
similarity index 100%
 1353    863   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
 1354    864   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1355    865   
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
 1356    866   
new file mode 100644
 1357    867   
index 0000000..fb2420d
 1358         -
-- /dev/null
         868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1359    869   
@@ -0,0 +1,7 @@
         870  +
GET
         871  +
/
         872  +
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
         873  +
host:example.amazonaws.com
         874  +
         875  +
host
         876  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1360    877   
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
 1361    878   
new file mode 100644
 1362    879   
index 0000000..da5c905
 1363         -
-- /dev/null
         880  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1364    881   
@@ -0,0 +1 @@
         882  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1365    883   
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
 1366    884   
new file mode 100644
 1367    885   
index 0000000..b2988b7
 1368         -
-- /dev/null
         886  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1369    887   
@@ -0,0 +1,3 @@
         888  +
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
         889  +
Host:example.amazonaws.com
         890  +
 1370    891   
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
 1371    892   
new file mode 100644
 1372    893   
index 0000000..d837e67
 1373         -
-- /dev/null
         894  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1374    895   
@@ -0,0 +1,4 @@
         896  +
AWS4-HMAC-SHA256
         897  +
20150830T123600Z
         898  +
20150830/us-east-1/service/aws4_request
         899  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1375    900   
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
 1376    901   
similarity index 100%
 1377    902   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
 1378    903   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1379    904   
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
 1380    905   
similarity index 99%
 1381    906   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
 1382    907   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1383    908   
index afe367b..7bee5c7 100644
 1384    909   
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
 1385    910   
similarity index 82%
 1386    911   
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
 1387    912   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1388    913   
index 36c3cdf..6919c44 100644
 1389         -
-- 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
         914  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1390    915   
@@ -1,8 +1,8 @@
 1391    916   
GET
 1392         -
/
 1393         -
Param1=Value1&Param1=value2
         917  +
/example1/example2/../..
         918  +
 1394    919   
host:example.amazonaws.com
 1395    920   
x-amz-date:20150830T123600Z
 1396    921   
 1397    922   
host;x-amz-date
 1398    923   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1399    924   
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
 1400    925   
new file mode 100644
 1401    926   
index 0000000..4092d83
 1402         -
-- /dev/null
         927  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1403    928   
@@ -0,0 +1 @@
         929  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
 1404    930   
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
 1405    931   
new file mode 100644
 1406    932   
index 0000000..e731b35
 1407         -
-- /dev/null
         933  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1408    934   
@@ -0,0 +1,5 @@
         935  +
GET /example1/example2/../.. HTTP/1.1
         936  +
Host:example.amazonaws.com
         937  +
X-Amz-Date:20150830T123600Z
         938  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
         939  +
 1409    940   
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
 1410    941   
new file mode 100644
 1411    942   
index 0000000..4f45752
 1412         -
-- /dev/null
         943  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1413    944   
@@ -0,0 +1,4 @@
         945  +
AWS4-HMAC-SHA256
         946  +
20150830T123600Z
         947  +
20150830/us-east-1/service/aws4_request
         948  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
 1414    949   
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
 1415    950   
new file mode 100644
 1416    951   
index 0000000..e1fb07d
 1417         -
-- /dev/null
         952  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1418    953   
@@ -0,0 +1,7 @@
         954  +
GET
         955  +
/example1/example2/../..
         956  +
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
         957  +
host:example.amazonaws.com
         958  +
         959  +
host
         960  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1419    961   
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
 1420    962   
new file mode 100644
 1421    963   
index 0000000..8ac31d7
 1422         -
-- /dev/null
         964  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1423    965   
@@ -0,0 +1 @@
         966  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
 1424    967   
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
 1425    968   
new file mode 100644
 1426    969   
index 0000000..ac074f9
 1427         -
-- /dev/null
         970  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1428    971   
@@ -0,0 +1,3 @@
         972  +
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
         973  +
Host:example.amazonaws.com
         974  +
 1429    975   
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
 1430    976   
new file mode 100644
 1431    977   
index 0000000..8dcb6ff
 1432         -
-- /dev/null
         978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1433    979   
@@ -0,0 +1,4 @@
         980  +
AWS4-HMAC-SHA256
         981  +
20150830T123600Z
         982  +
20150830/us-east-1/service/aws4_request
         983  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
 1434    984   
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
 1435    985   
similarity index 100%
 1436    986   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
 1437    987   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1438    988   
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
 1439    989   
similarity index 99%
 1440    990   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
 1441    991   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1442    992   
index afe367b..7bee5c7 100644
 1443    993   
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
 1444    994   
similarity index 82%
 1445    995   
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
 1446    996   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1447    997   
index 26898eb..f640bc2 100644
 1448         -
-- 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
         998  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1449    999   
@@ -1,8 +1,8 @@
 1450   1000   
GET
 1451         -
/
 1452         -
Param1=value1&Param1=value2
        1001  +
/example/..
        1002  +
 1453   1003   
host:example.amazonaws.com
 1454   1004   
x-amz-date:20150830T123600Z
 1455   1005   
 1456   1006   
host;x-amz-date
 1457   1007   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1458   1008   
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
 1459   1009   
new file mode 100644
 1460   1010   
index 0000000..d957303
 1461         -
-- /dev/null
        1011  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1462   1012   
@@ -0,0 +1 @@
        1013  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
 1463   1014   
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
 1464   1015   
new file mode 100644
 1465   1016   
index 0000000..4f42ffc
 1466         -
-- /dev/null
        1017  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1467   1018   
@@ -0,0 +1,5 @@
        1019  +
GET /example/.. HTTP/1.1
        1020  +
Host:example.amazonaws.com
        1021  +
X-Amz-Date:20150830T123600Z
        1022  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
        1023  +
 1468   1024   
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
 1469   1025   
new file mode 100644
 1470   1026   
index 0000000..ca54bda
 1471         -
-- /dev/null
        1027  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1472   1028   
@@ -0,0 +1,4 @@
        1029  +
AWS4-HMAC-SHA256
        1030  +
20150830T123600Z
        1031  +
20150830/us-east-1/service/aws4_request
        1032  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
 1473   1033   
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
 1474   1034   
new file mode 100644
 1475   1035   
index 0000000..dc80036
 1476         -
-- /dev/null
        1036  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1477   1037   
@@ -0,0 +1,7 @@
        1038  +
GET
        1039  +
/example/..
        1040  +
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
        1041  +
host:example.amazonaws.com
        1042  +
        1043  +
host
        1044  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1478   1045   
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
 1479   1046   
new file mode 100644
 1480   1047   
index 0000000..dfa0437
 1481         -
-- /dev/null
        1048  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1482   1049   
@@ -0,0 +1 @@
        1050  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
 1483   1051   
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
 1484   1052   
new file mode 100644
 1485   1053   
index 0000000..98367b1
 1486         -
-- /dev/null
        1054  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1487   1055   
@@ -0,0 +1,3 @@
        1056  +
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
        1057  +
Host:example.amazonaws.com
        1058  +
 1488   1059   
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
 1489   1060   
new file mode 100644
 1490   1061   
index 0000000..f65dd66
 1491         -
-- /dev/null
        1062  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1492   1063   
@@ -0,0 +1,4 @@
        1064  +
AWS4-HMAC-SHA256
        1065  +
20150830T123600Z
        1066  +
20150830/us-east-1/service/aws4_request
        1067  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
 1493   1068   
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
 1494   1069   
similarity index 100%
 1495   1070   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
 1496   1071   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1497   1072   
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
 1498   1073   
new file mode 100644
 1499   1074   
index 0000000..0468d80
 1500         -
-- /dev/null
        1075  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1501   1076   
@@ -0,0 +1,12 @@
        1077  +
{
        1078  +
    "credentials": {
        1079  +
        "access_key_id": "AKIDEXAMPLE",
        1080  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1081  +
    },
        1082  +
    "expiration_in_seconds": 3600,
        1083  +
    "normalize": true,
        1084  +
    "region": "us-east-1",
        1085  +
    "service": "service",
        1086  +
    "sign_body": false,
        1087  +
    "timestamp": "2015-08-30T12:36:00Z"
        1088  +
}
              \
 No newline at end of file
 1502   1089   
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
 1503   1090   
similarity index 100%
 1504   1091   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
 1505   1092   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1506   1093   
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
 1507   1094   
new file mode 100644
 1508   1095   
index 0000000..87f295f
 1509         -
-- /dev/null
        1096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1510   1097   
@@ -0,0 +1 @@
        1098  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1511   1099   
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
 1512   1100   
new file mode 100644
 1513   1101   
index 0000000..99c8eeb
 1514         -
-- /dev/null
        1102  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1515   1103   
@@ -0,0 +1,5 @@
        1104  +
GET /./ HTTP/1.1
        1105  +
Host:example.amazonaws.com
        1106  +
X-Amz-Date:20150830T123600Z
        1107  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1108  +
 1516   1109   
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
 1517   1110   
similarity index 100%
 1518   1111   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
 1519   1112   
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
 1520   1113   
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
 1521   1114   
new file mode 100644
 1522   1115   
index 0000000..fb2420d
 1523         -
-- /dev/null
        1116  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1524   1117   
@@ -0,0 +1,7 @@
        1118  +
GET
        1119  +
/
        1120  +
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
        1121  +
host:example.amazonaws.com
        1122  +
        1123  +
host
        1124  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1525   1125   
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
 1526   1126   
new file mode 100644
 1527   1127   
index 0000000..da5c905
 1528         -
-- /dev/null
        1128  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1529   1129   
@@ -0,0 +1 @@
        1130  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1530   1131   
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
 1531   1132   
new file mode 100644
 1532   1133   
index 0000000..2e47f69
 1533         -
-- /dev/null
        1134  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1534   1135   
@@ -0,0 +1,3 @@
        1136  +
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
        1137  +
Host:example.amazonaws.com
        1138  +
 1535   1139   
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
 1536   1140   
new file mode 100644
 1537   1141   
index 0000000..d837e67
 1538         -
-- /dev/null
        1142  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1539   1143   
@@ -0,0 +1,4 @@
        1144  +
AWS4-HMAC-SHA256
        1145  +
20150830T123600Z
        1146  +
20150830/us-east-1/service/aws4_request
        1147  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1540   1148   
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
 1541   1149   
similarity index 100%
 1542   1150   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
 1543   1151   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1544   1152   
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
 1545   1153   
similarity index 99%
 1546   1154   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
 1547   1155   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1548   1156   
index afe367b..7bee5c7 100644
 1549   1157   
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
 1550   1158   
new file mode 100644
 1551   1159   
index 0000000..5159048
 1552         -
-- /dev/null
        1160  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1553   1161   
@@ -0,0 +1,8 @@
        1162  +
GET
        1163  +
/./
        1164  +
        1165  +
host:example.amazonaws.com
        1166  +
x-amz-date:20150830T123600Z
        1167  +
        1168  +
host;x-amz-date
        1169  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1554   1170   
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
 1555   1171   
new file mode 100644
 1556   1172   
index 0000000..b49ff0e
 1557         -
-- /dev/null
        1173  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1558   1174   
@@ -0,0 +1 @@
        1175  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
 1559   1176   
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
 1560   1177   
new file mode 100644
 1561   1178   
index 0000000..aeb1ffa
 1562         -
-- /dev/null
        1179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1563   1180   
@@ -0,0 +1,5 @@
        1181  +
GET /./ HTTP/1.1
        1182  +
Host:example.amazonaws.com
        1183  +
X-Amz-Date:20150830T123600Z
        1184  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
        1185  +
 1564   1186   
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
 1565   1187   
new file mode 100644
 1566   1188   
index 0000000..b7d8caf
 1567         -
-- /dev/null
        1189  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1568   1190   
@@ -0,0 +1,4 @@
        1191  +
AWS4-HMAC-SHA256
        1192  +
20150830T123600Z
        1193  +
20150830/us-east-1/service/aws4_request
        1194  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
 1569   1195   
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
 1570   1196   
new file mode 100644
 1571   1197   
index 0000000..d4e029e
 1572         -
-- /dev/null
        1198  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1573   1199   
@@ -0,0 +1,7 @@
        1200  +
GET
        1201  +
/./
        1202  +
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
        1203  +
host:example.amazonaws.com
        1204  +
        1205  +
host
        1206  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1574   1207   
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
 1575   1208   
new file mode 100644
 1576   1209   
index 0000000..fe8f4cc
 1577         -
-- /dev/null
        1210  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1578   1211   
@@ -0,0 +1 @@
        1212  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
 1579   1213   
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
 1580   1214   
new file mode 100644
 1581   1215   
index 0000000..dcc4fc4
 1582         -
-- /dev/null
        1216  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1583   1217   
@@ -0,0 +1,3 @@
        1218  +
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
        1219  +
Host:example.amazonaws.com
        1220  +
 1584   1221   
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
 1585   1222   
new file mode 100644
 1586   1223   
index 0000000..5fb3ada
 1587         -
-- /dev/null
        1224  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1588   1225   
@@ -0,0 +1,4 @@
        1226  +
AWS4-HMAC-SHA256
        1227  +
20150830T123600Z
        1228  +
20150830/us-east-1/service/aws4_request
        1229  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
 1589   1230   
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
 1590   1231   
similarity index 100%
 1591   1232   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
 1592   1233   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1593   1234   
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
 1594   1235   
new file mode 100644
 1595   1236   
index 0000000..0468d80
 1596         -
-- /dev/null
        1237  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1597   1238   
@@ -0,0 +1,12 @@
        1239  +
{
        1240  +
    "credentials": {
        1241  +
        "access_key_id": "AKIDEXAMPLE",
        1242  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1243  +
    },
        1244  +
    "expiration_in_seconds": 3600,
        1245  +
    "normalize": true,
        1246  +
    "region": "us-east-1",
        1247  +
    "service": "service",
        1248  +
    "sign_body": false,
        1249  +
    "timestamp": "2015-08-30T12:36:00Z"
        1250  +
}
              \
 No newline at end of file
 1598   1251   
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
 1599   1252   
similarity index 100%
 1600   1253   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
 1601   1254   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1602   1255   
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
 1603   1256   
new file mode 100644
 1604   1257   
index 0000000..87f295f
 1605         -
-- /dev/null
        1258  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1606   1259   
@@ -0,0 +1 @@
        1260  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1607   1261   
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
 1608   1262   
new file mode 100644
 1609   1263   
index 0000000..b91087b
 1610         -
-- /dev/null
        1264  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1611   1265   
@@ -0,0 +1,5 @@
        1266  +
GET // HTTP/1.1
        1267  +
Host:example.amazonaws.com
        1268  +
X-Amz-Date:20150830T123600Z
        1269  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1270  +
 1612   1271   
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
 1613   1272   
similarity index 100%
 1614   1273   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
 1615   1274   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1616   1275   
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
 1617   1276   
new file mode 100644
 1618   1277   
index 0000000..fb2420d
 1619         -
-- /dev/null
        1278  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1620   1279   
@@ -0,0 +1,7 @@
        1280  +
GET
        1281  +
/
        1282  +
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
        1283  +
host:example.amazonaws.com
        1284  +
        1285  +
host
        1286  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1621   1287   
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
 1622   1288   
new file mode 100644
 1623   1289   
index 0000000..da5c905
 1624         -
-- /dev/null
        1290  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1625   1291   
@@ -0,0 +1 @@
        1292  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1626   1293   
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
 1627   1294   
new file mode 100644
 1628   1295   
index 0000000..0290ba4
 1629         -
-- /dev/null
        1296  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1630   1297   
@@ -0,0 +1,3 @@
        1298  +
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
        1299  +
Host:example.amazonaws.com
        1300  +
 1631   1301   
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
 1632   1302   
new file mode 100644
 1633   1303   
index 0000000..d837e67
 1634         -
-- /dev/null
        1304  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1635   1305   
@@ -0,0 +1,4 @@
        1306  +
AWS4-HMAC-SHA256
        1307  +
20150830T123600Z
        1308  +
20150830/us-east-1/service/aws4_request
        1309  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1636   1310   
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
 1637   1311   
similarity index 100%
 1638   1312   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
 1639   1313   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1640   1314   
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
 1641   1315   
new file mode 100644
 1642   1316   
index 0000000..0468d80
 1643         -
-- /dev/null
        1317  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1644   1318   
@@ -0,0 +1,12 @@
        1319  +
{
        1320  +
    "credentials": {
        1321  +
        "access_key_id": "AKIDEXAMPLE",
        1322  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1323  +
    },
        1324  +
    "expiration_in_seconds": 3600,
        1325  +
    "normalize": true,
        1326  +
    "region": "us-east-1",
        1327  +
    "service": "service",
        1328  +
    "sign_body": false,
        1329  +
    "timestamp": "2015-08-30T12:36:00Z"
        1330  +
}
              \
 No newline at end of file
 1645   1331   
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
 1646   1332   
similarity index 100%
 1647   1333   
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
 1648   1334   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1649   1335   
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
 1650   1336   
new file mode 100644
 1651   1337   
index 0000000..8f892bf
 1652         -
-- /dev/null
        1338  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1653   1339   
@@ -0,0 +1 @@
        1340  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
 1654   1341   
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
 1655   1342   
new file mode 100644
 1656   1343   
index 0000000..2a1895c
 1657         -
-- /dev/null
        1344  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1658   1345   
@@ -0,0 +1,5 @@
        1346  +
GET /./example HTTP/1.1
        1347  +
Host:example.amazonaws.com
        1348  +
X-Amz-Date:20150830T123600Z
        1349  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
        1350  +
 1659   1351   
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
 1660   1352   
similarity index 100%
 1661   1353   
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
 1662   1354   
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
 1663   1355   
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
 1664   1356   
new file mode 100644
 1665   1357   
index 0000000..99dfc2a
 1666         -
-- /dev/null
        1358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1667   1359   
@@ -0,0 +1,7 @@
        1360  +
GET
        1361  +
/example
        1362  +
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
        1363  +
host:example.amazonaws.com
        1364  +
        1365  +
host
        1366  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1668   1367   
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
 1669   1368   
new file mode 100644
 1670   1369   
index 0000000..fcd7a17
 1671         -
-- /dev/null
        1370  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1672   1371   
@@ -0,0 +1 @@
        1372  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
 1673   1373   
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
 1674   1374   
new file mode 100644
 1675   1375   
index 0000000..f671de2
 1676         -
-- /dev/null
        1376  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1677   1377   
@@ -0,0 +1,3 @@
        1378  +
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
        1379  +
Host:example.amazonaws.com
        1380  +
 1678   1381   
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
 1679   1382   
new file mode 100644
 1680   1383   
index 0000000..f8456dc
 1681         -
-- /dev/null
        1384  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1682   1385   
@@ -0,0 +1,4 @@
        1386  +
AWS4-HMAC-SHA256
        1387  +
20150830T123600Z
        1388  +
20150830/us-east-1/service/aws4_request
        1389  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
 1683   1390   
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
 1684   1391   
similarity index 100%
 1685   1392   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
 1686   1393   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1687   1394   
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
 1688   1395   
similarity index 99%
 1689   1396   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
 1690   1397   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1691   1398   
index afe367b..7bee5c7 100644
 1692   1399   
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
 1693   1400   
new file mode 100644
 1694   1401   
index 0000000..36698c7
 1695         -
-- /dev/null
        1402  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 1696   1403   
@@ -0,0 +1,8 @@
        1404  +
GET
        1405  +
/./example
        1406  +
        1407  +
host:example.amazonaws.com
        1408  +
x-amz-date:20150830T123600Z
        1409  +
        1410  +
host;x-amz-date
        1411  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1697   1412   
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
 1698   1413   
new file mode 100644
 1699   1414   
index 0000000..4a4b8f2
 1700         -
-- /dev/null
        1415  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 1701   1416   
@@ -0,0 +1 @@
        1417  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
 1702   1418   
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
 1703   1419   
new file mode 100644
 1704   1420   
index 0000000..d462bcd
 1705         -
-- /dev/null
        1421  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 1706   1422   
@@ -0,0 +1,5 @@
        1423  +
GET /./example HTTP/1.1
        1424  +
Host:example.amazonaws.com
        1425  +
X-Amz-Date:20150830T123600Z
        1426  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1427  +
 1707   1428   
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
 1708   1429   
new file mode 100644
 1709   1430   
index 0000000..8be78c9
 1710         -
-- /dev/null
        1431  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 1711   1432   
@@ -0,0 +1,4 @@
        1433  +
AWS4-HMAC-SHA256
        1434  +
20150830T123600Z
        1435  +
20150830/us-east-1/service/aws4_request
        1436  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
 1712   1437   
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
 1713   1438   
new file mode 100644
 1714   1439   
index 0000000..fe1103c
 1715         -
-- /dev/null
        1440  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 1716   1441   
@@ -0,0 +1,7 @@
        1442  +
GET
        1443  +
/./example
        1444  +
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
        1445  +
host:example.amazonaws.com
        1446  +
        1447  +
host
        1448  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1717   1449   
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
 1718   1450   
new file mode 100644
 1719   1451   
index 0000000..ce80762
 1720         -
-- /dev/null
        1452  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 1721   1453   
@@ -0,0 +1 @@
        1454  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
 1722   1455   
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
 1723   1456   
new file mode 100644
 1724   1457   
index 0000000..30841a6
 1725         -
-- /dev/null
        1458  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 1726   1459   
@@ -0,0 +1,3 @@
        1460  +
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
        1461  +
Host:example.amazonaws.com
        1462  +
 1727   1463   
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
 1728   1464   
new file mode 100644
 1729   1465   
index 0000000..5c66509
 1730         -
-- /dev/null
        1466  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 1731   1467   
@@ -0,0 +1,4 @@
        1468  +
AWS4-HMAC-SHA256
        1469  +
20150830T123600Z
        1470  +
20150830/us-east-1/service/aws4_request
        1471  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
 1732   1472   
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
 1733   1473   
similarity index 100%
 1734   1474   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
 1735   1475   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 1736   1476   
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
 1737   1477   
new file mode 100644
 1738   1478   
index 0000000..7bee5c7
 1739         -
-- /dev/null
        1479  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 1740   1480   
@@ -0,0 +1,12 @@
        1481  +
{
        1482  +
    "credentials": {
        1483  +
        "access_key_id": "AKIDEXAMPLE",
        1484  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1485  +
    },
        1486  +
    "expiration_in_seconds": 3600,
        1487  +
    "normalize": false,
        1488  +
    "region": "us-east-1",
        1489  +
    "service": "service",
        1490  +
    "sign_body": false,
        1491  +
    "timestamp": "2015-08-30T12:36:00Z"
        1492  +
}
              \
 No newline at end of file
 1741   1493   
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
 1742   1494   
new file mode 100644
 1743   1495   
index 0000000..5860c8a
 1744         -
-- /dev/null
        1496  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 1745   1497   
@@ -0,0 +1,8 @@
        1498  +
GET
        1499  +
//
        1500  +
        1501  +
host:example.amazonaws.com
        1502  +
x-amz-date:20150830T123600Z
        1503  +
        1504  +
host;x-amz-date
        1505  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1746   1506   
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
 1747   1507   
new file mode 100644
 1748   1508   
index 0000000..8310471
 1749         -
-- /dev/null
        1509  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 1750   1510   
@@ -0,0 +1 @@
        1511  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
 1751   1512   
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
 1752   1513   
new file mode 100644
 1753   1514   
index 0000000..2a7afef
 1754         -
-- /dev/null
        1515  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 1755   1516   
@@ -0,0 +1,5 @@
        1517  +
GET // HTTP/1.1
        1518  +
Host:example.amazonaws.com
        1519  +
X-Amz-Date:20150830T123600Z
        1520  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1521  +
 1756   1522   
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
 1757   1523   
new file mode 100644
 1758   1524   
index 0000000..06059dd
 1759         -
-- /dev/null
        1525  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 1760   1526   
@@ -0,0 +1,4 @@
        1527  +
AWS4-HMAC-SHA256
        1528  +
20150830T123600Z
        1529  +
20150830/us-east-1/service/aws4_request
        1530  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
 1761   1531   
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
 1762   1532   
new file mode 100644
 1763   1533   
index 0000000..6d63aef
 1764         -
-- /dev/null
        1534  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 1765   1535   
@@ -0,0 +1,7 @@
        1536  +
GET
        1537  +
//
        1538  +
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
        1539  +
host:example.amazonaws.com
        1540  +
        1541  +
host
        1542  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1766   1543   
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
 1767   1544   
new file mode 100644
 1768   1545   
index 0000000..e5b7b6c
 1769         -
-- /dev/null
        1546  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 1770   1547   
@@ -0,0 +1 @@
        1548  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
 1771   1549   
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
 1772   1550   
new file mode 100644
 1773   1551   
index 0000000..46fe3fd
 1774         -
-- /dev/null
        1552  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 1775   1553   
@@ -0,0 +1,3 @@
        1554  +
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
        1555  +
Host:example.amazonaws.com
        1556  +
 1776   1557   
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
 1777   1558   
new file mode 100644
 1778   1559   
index 0000000..ea79940
 1779         -
-- /dev/null
        1560  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 1780   1561   
@@ -0,0 +1,4 @@
        1562  +
AWS4-HMAC-SHA256
        1563  +
20150830T123600Z
        1564  +
20150830/us-east-1/service/aws4_request
        1565  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
 1781   1566   
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
 1782   1567   
similarity index 100%
 1783   1568   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
 1784   1569   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 1785   1570   
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
 1786   1571   
new file mode 100644
 1787   1572   
index 0000000..0468d80
 1788         -
-- /dev/null
        1573  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 1789   1574   
@@ -0,0 +1,12 @@
        1575  +
{
        1576  +
    "credentials": {
        1577  +
        "access_key_id": "AKIDEXAMPLE",
        1578  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1579  +
    },
        1580  +
    "expiration_in_seconds": 3600,
        1581  +
    "normalize": true,
        1582  +
    "region": "us-east-1",
        1583  +
    "service": "service",
        1584  +
    "sign_body": false,
        1585  +
    "timestamp": "2015-08-30T12:36:00Z"
        1586  +
}
              \
 No newline at end of file
 1790   1587   
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
 1791   1588   
similarity index 100%
 1792   1589   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
 1793   1590   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 1794   1591   
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
 1795   1592   
new file mode 100644
 1796   1593   
index 0000000..71c7bac
 1797         -
-- /dev/null
        1594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 1798   1595   
@@ -0,0 +1 @@
        1596  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
 1799   1597   
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
 1800   1598   
new file mode 100644
 1801   1599   
index 0000000..0add1f1
 1802         -
-- /dev/null
        1600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 1803   1601   
@@ -0,0 +1,5 @@
        1602  +
GET //example// HTTP/1.1
        1603  +
Host:example.amazonaws.com
        1604  +
X-Amz-Date:20150830T123600Z
        1605  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1606  +
 1804   1607   
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
 1805   1608   
similarity index 100%
 1806   1609   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
 1807   1610   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 1808   1611   
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
 1809   1612   
new file mode 100644
 1810   1613   
index 0000000..ce72510
 1811         -
-- /dev/null
        1614  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 1812   1615   
@@ -0,0 +1,7 @@
        1616  +
GET
        1617  +
/example/
        1618  +
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
        1619  +
host:example.amazonaws.com
        1620  +
        1621  +
host
        1622  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1813   1623   
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
 1814   1624   
new file mode 100644
 1815   1625   
index 0000000..265f387
 1816         -
-- /dev/null
        1626  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 1817   1627   
@@ -0,0 +1 @@
        1628  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
 1818   1629   
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
 1819   1630   
new file mode 100644
 1820   1631   
index 0000000..e1fcb2e
 1821         -
-- /dev/null
        1632  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 1822   1633   
@@ -0,0 +1,3 @@
        1634  +
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
        1635  +
Host:example.amazonaws.com
        1636  +
 1823   1637   
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
 1824   1638   
new file mode 100644
 1825   1639   
index 0000000..a14de61
 1826         -
-- /dev/null
        1640  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 1827   1641   
@@ -0,0 +1,4 @@
        1642  +
AWS4-HMAC-SHA256
        1643  +
20150830T123600Z
        1644  +
20150830/us-east-1/service/aws4_request
        1645  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
 1828   1646   
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
 1829   1647   
similarity index 100%
 1830   1648   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
 1831   1649   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 1832   1650   
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
 1833   1651   
new file mode 100644
 1834   1652   
index 0000000..7bee5c7
 1835         -
-- /dev/null
        1653  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 1836   1654   
@@ -0,0 +1,12 @@
        1655  +
{
        1656  +
    "credentials": {
        1657  +
        "access_key_id": "AKIDEXAMPLE",
        1658  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1659  +
    },
        1660  +
    "expiration_in_seconds": 3600,
        1661  +
    "normalize": false,
        1662  +
    "region": "us-east-1",
        1663  +
    "service": "service",
        1664  +
    "sign_body": false,
        1665  +
    "timestamp": "2015-08-30T12:36:00Z"
        1666  +
}
              \
 No newline at end of file
 1837   1667   
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
 1838   1668   
new file mode 100644
 1839   1669   
index 0000000..dfffaaf
 1840         -
-- /dev/null
        1670  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 1841   1671   
@@ -0,0 +1,8 @@
        1672  +
GET
        1673  +
//example//
        1674  +
        1675  +
host:example.amazonaws.com
        1676  +
x-amz-date:20150830T123600Z
        1677  +
        1678  +
host;x-amz-date
        1679  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1842   1680   
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
 1843   1681   
new file mode 100644
 1844   1682   
index 0000000..edbcc0d
 1845         -
-- /dev/null
        1683  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 1846   1684   
@@ -0,0 +1 @@
        1685  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
 1847   1686   
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
 1848   1687   
new file mode 100644
 1849   1688   
index 0000000..4cc12dd
 1850         -
-- /dev/null
        1689  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 1851   1690   
@@ -0,0 +1,5 @@
        1691  +
GET //example// HTTP/1.1
        1692  +
Host:example.amazonaws.com
        1693  +
X-Amz-Date:20150830T123600Z
        1694  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1695  +
 1852   1696   
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
 1853   1697   
new file mode 100644
 1854   1698   
index 0000000..3eba390
 1855         -
-- /dev/null
        1699  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 1856   1700   
@@ -0,0 +1,4 @@
        1701  +
AWS4-HMAC-SHA256
        1702  +
20150830T123600Z
        1703  +
20150830/us-east-1/service/aws4_request
        1704  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
 1857   1705   
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
 1858   1706   
new file mode 100644
 1859   1707   
index 0000000..f7844e3
 1860         -
-- /dev/null
        1708  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 1861   1709   
@@ -0,0 +1,7 @@
        1710  +
GET
        1711  +
//example//
        1712  +
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
        1713  +
host:example.amazonaws.com
        1714  +
        1715  +
host
        1716  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1862   1717   
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
 1863   1718   
new file mode 100644
 1864   1719   
index 0000000..a8d6b96
 1865         -
-- /dev/null
        1720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 1866   1721   
@@ -0,0 +1 @@
        1722  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
 1867   1723   
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
 1868   1724   
new file mode 100644
 1869   1725   
index 0000000..a8322c6
 1870         -
-- /dev/null
        1726  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 1871   1727   
@@ -0,0 +1,3 @@
        1728  +
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
        1729  +
Host:example.amazonaws.com
        1730  +
 1872   1731   
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
 1873   1732   
new file mode 100644
 1874   1733   
index 0000000..068724d
 1875         -
-- /dev/null
        1734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 1876   1735   
@@ -0,0 +1,4 @@
        1736  +
AWS4-HMAC-SHA256
        1737  +
20150830T123600Z
        1738  +
20150830/us-east-1/service/aws4_request
        1739  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
 1877   1740   
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
 1878   1741   
similarity index 100%
 1879   1742   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
 1880   1743   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 1881   1744   
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
 1882   1745   
new file mode 100644
 1883   1746   
index 0000000..0468d80
 1884         -
-- /dev/null
        1747  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 1885   1748   
@@ -0,0 +1,12 @@
        1749  +
{
        1750  +
    "credentials": {
        1751  +
        "access_key_id": "AKIDEXAMPLE",
        1752  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1753  +
    },
        1754  +
    "expiration_in_seconds": 3600,
        1755  +
    "normalize": true,
        1756  +
    "region": "us-east-1",
        1757  +
    "service": "service",
        1758  +
    "sign_body": false,
        1759  +
    "timestamp": "2015-08-30T12:36:00Z"
        1760  +
}
              \
 No newline at end of file
 1886   1761   
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
 1887   1762   
similarity index 100%
 1888   1763   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
 1889   1764   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 1890   1765   
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
 1891   1766   
new file mode 100644
 1892   1767   
index 0000000..f63892b
 1893         -
-- /dev/null
        1768  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 1894   1769   
@@ -0,0 +1 @@
        1770  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1895   1771   
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
 1896   1772   
new file mode 100644
 1897   1773   
index 0000000..19cd5cb
 1898         -
-- /dev/null
        1774  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 1899   1775   
@@ -0,0 +1,5 @@
        1776  +
GET /example space/ HTTP/1.1
        1777  +
Host:example.amazonaws.com
        1778  +
X-Amz-Date:20150830T123600Z
        1779  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1780  +
 1900   1781   
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
 1901   1782   
similarity index 100%
 1902   1783   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
 1903   1784   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 1904   1785   
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
 1905   1786   
new file mode 100644
 1906   1787   
index 0000000..fa3d3e2
 1907         -
-- /dev/null
        1788  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 1908   1789   
@@ -0,0 +1,7 @@
        1790  +
GET
        1791  +
/example%20space/
        1792  +
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
        1793  +
host:example.amazonaws.com
        1794  +
        1795  +
host
        1796  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1909   1797   
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
 1910   1798   
new file mode 100644
 1911   1799   
index 0000000..5b2e204
 1912         -
-- /dev/null
        1800  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 1913   1801   
@@ -0,0 +1 @@
        1802  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 1914   1803   
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
 1915   1804   
new file mode 100644
 1916   1805   
index 0000000..93ca1d0
 1917         -
-- /dev/null
        1806  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 1918   1807   
@@ -0,0 +1,3 @@
        1808  +
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
        1809  +
Host:example.amazonaws.com
        1810  +
 1919   1811   
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
 1920   1812   
new file mode 100644
 1921   1813   
index 0000000..b4cb789
 1922         -
-- /dev/null
        1814  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 1923   1815   
@@ -0,0 +1,4 @@
        1816  +
AWS4-HMAC-SHA256
        1817  +
20150830T123600Z
        1818  +
20150830/us-east-1/service/aws4_request
        1819  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 1924   1820   
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
 1925   1821   
new file mode 100644
 1926   1822   
index 0000000..860a277
 1927         -
-- /dev/null
        1823  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 1928   1824   
@@ -0,0 +1,2 @@
        1825  +
GET /example%20space/ HTTP/1.1
        1826  +
Host:example.amazonaws.com
 1929   1827   
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
 1930   1828   
new file mode 100644
 1931   1829   
index 0000000..7bee5c7
 1932         -
-- /dev/null
        1830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 1933   1831   
@@ -0,0 +1,12 @@
        1832  +
{
        1833  +
    "credentials": {
        1834  +
        "access_key_id": "AKIDEXAMPLE",
        1835  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1836  +
    },
        1837  +
    "expiration_in_seconds": 3600,
        1838  +
    "normalize": false,
        1839  +
    "region": "us-east-1",
        1840  +
    "service": "service",
        1841  +
    "sign_body": false,
        1842  +
    "timestamp": "2015-08-30T12:36:00Z"
        1843  +
}
              \
 No newline at end of file
 1934   1844   
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
 1935   1845   
similarity index 66%
 1936   1846   
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
 1937   1847   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 1938   1848   
index 71dc981..124a709 100644
 1939         -
-- 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
        1849  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 1940   1850   
@@ -1,9 +1,8 @@
 1941         -
POST
 1942         -
/
        1851  +
GET
        1852  +
/example%20space/
 1943   1853   
 1944         -
content-type:application/x-www-form-urlencoded; charset=utf-8
 1945   1854   
host:example.amazonaws.com
 1946   1855   
x-amz-date:20150830T123600Z
 1947   1856   
 1948   1857   
host;x-amz-date
 1949   1858   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1950   1859   
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
 1951   1860   
new file mode 100644
 1952   1861   
index 0000000..f63892b
 1953         -
-- /dev/null
        1862  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 1954   1863   
@@ -0,0 +1 @@
        1864  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1955   1865   
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
 1956   1866   
new file mode 100644
 1957   1867   
index 0000000..19cd5cb
 1958         -
-- /dev/null
        1868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 1959   1869   
@@ -0,0 +1,5 @@
        1870  +
GET /example space/ HTTP/1.1
        1871  +
Host:example.amazonaws.com
        1872  +
X-Amz-Date:20150830T123600Z
        1873  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1874  +
 1960   1875   
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
 1961   1876   
new file mode 100644
 1962   1877   
index 0000000..a633f0c
 1963         -
-- /dev/null
        1878  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 1964   1879   
@@ -0,0 +1,4 @@
        1880  +
AWS4-HMAC-SHA256
        1881  +
20150830T123600Z
        1882  +
20150830/us-east-1/service/aws4_request
        1883  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
 1965   1884   
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
 1966   1885   
new file mode 100644
 1967   1886   
index 0000000..fa3d3e2
 1968         -
-- /dev/null
        1887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 1969   1888   
@@ -0,0 +1,7 @@
        1889  +
GET
        1890  +
/example%20space/
        1891  +
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
        1892  +
host:example.amazonaws.com
        1893  +
        1894  +
host
        1895  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1970   1896   
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
 1971   1897   
new file mode 100644
 1972   1898   
index 0000000..5b2e204
 1973         -
-- /dev/null
        1899  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 1974   1900   
@@ -0,0 +1 @@
        1901  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 1975   1902   
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
 1976   1903   
new file mode 100644
 1977   1904   
index 0000000..93ca1d0
 1978         -
-- /dev/null
        1905  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 1979   1906   
@@ -0,0 +1,3 @@
        1907  +
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
        1908  +
Host:example.amazonaws.com
        1909  +
 1980   1910   
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
 1981   1911   
new file mode 100644
 1982   1912   
index 0000000..b4cb789
 1983         -
-- /dev/null
        1913  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 1984   1914   
@@ -0,0 +1,4 @@
        1915  +
AWS4-HMAC-SHA256
        1916  +
20150830T123600Z
        1917  +
20150830/us-east-1/service/aws4_request
        1918  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 1985   1919   
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
 1986   1920   
similarity index 67%
 1987   1921   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
 1988   1922   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 1989   1923   
index b7d5e8b..ab509ab 100644
 1990         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        1924  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 1991   1925   
@@ -1,3 +1,2 @@
 1992   1926   
GET /example space/ HTTP/1.1
 1993   1927   
Host:example.amazonaws.com
 1994         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1995   1928   
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
 1996   1929   
new file mode 100644
 1997   1930   
index 0000000..0468d80
 1998         -
-- /dev/null
        1931  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 1999   1932   
@@ -0,0 +1,12 @@
        1933  +
{
        1934  +
    "credentials": {
        1935  +
        "access_key_id": "AKIDEXAMPLE",
        1936  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1937  +
    },
        1938  +
    "expiration_in_seconds": 3600,
        1939  +
    "normalize": true,
        1940  +
    "region": "us-east-1",
        1941  +
    "service": "service",
        1942  +
    "sign_body": false,
        1943  +
    "timestamp": "2015-08-30T12:36:00Z"
        1944  +
}
              \
 No newline at end of file
 2000   1945   
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
 2001   1946   
similarity index 100%
 2002   1947   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
 2003   1948   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 2004   1949   
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
 2005   1950   
new file mode 100644
 2006   1951   
index 0000000..e503354
 2007         -
-- /dev/null
        1952  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 2008   1953   
@@ -0,0 +1 @@
        1954  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
 2009   1955   
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
 2010   1956   
new file mode 100644
 2011   1957   
index 0000000..4367892
 2012         -
-- /dev/null
        1958  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 2013   1959   
@@ -0,0 +1,5 @@
        1960  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        1961  +
Host:example.amazonaws.com
        1962  +
X-Amz-Date:20150830T123600Z
        1963  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        1964  +
 2014   1965   
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
 2015   1966   
similarity index 100%
 2016   1967   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
 2017   1968   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 2018   1969   
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
 2019   1970   
new file mode 100644
 2020   1971   
index 0000000..d7f0696
 2021         -
-- /dev/null
        1972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 2022   1973   
@@ -0,0 +1,7 @@
        1974  +
GET
        1975  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        1976  +
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
        1977  +
host:example.amazonaws.com
        1978  +
        1979  +
host
        1980  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2023   1981   
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
 2024   1982   
new file mode 100644
 2025   1983   
index 0000000..509e972
 2026         -
-- /dev/null
        1984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 2027   1985   
@@ -0,0 +1 @@
        1986  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
 2028   1987   
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
 2029   1988   
new file mode 100644
 2030   1989   
index 0000000..79aad36
 2031         -
-- /dev/null
        1990  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 2032   1991   
@@ -0,0 +1,3 @@
        1992  +
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
        1993  +
Host:example.amazonaws.com
        1994  +
 2033   1995   
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
 2034   1996   
new file mode 100644
 2035   1997   
index 0000000..e8068b3
 2036         -
-- /dev/null
        1998  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 2037   1999   
@@ -0,0 +1,4 @@
        2000  +
AWS4-HMAC-SHA256
        2001  +
20150830T123600Z
        2002  +
20150830/us-east-1/service/aws4_request
        2003  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
 2038   2004   
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
 2039   2005   
similarity index 100%
 2040   2006   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
 2041   2007   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 2042   2008   
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
 2043   2009   
new file mode 100644
 2044   2010   
index 0000000..0468d80
 2045         -
-- /dev/null
        2011  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 2046   2012   
@@ -0,0 +1,12 @@
        2013  +
{
        2014  +
    "credentials": {
        2015  +
        "access_key_id": "AKIDEXAMPLE",
        2016  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2017  +
    },
        2018  +
    "expiration_in_seconds": 3600,
        2019  +
    "normalize": true,
        2020  +
    "region": "us-east-1",
        2021  +
    "service": "service",
        2022  +
    "sign_body": false,
        2023  +
    "timestamp": "2015-08-30T12:36:00Z"
        2024  +
}
              \
 No newline at end of file
 2047   2025   
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
 2048   2026   
similarity index 100%
 2049   2027   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
 2050   2028   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 2051   2029   
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
 2052   2030   
new file mode 100644
 2053   2031   
index 0000000..9a13676
 2054         -
-- /dev/null
        2032  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 2055   2033   
@@ -0,0 +1 @@
        2034  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
 2056   2035   
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
 2057   2036   
new file mode 100644
 2058   2037   
index 0000000..5aaf47c
 2059         -
-- /dev/null
        2038  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 2060   2039   
@@ -0,0 +1,5 @@
        2040  +
GET /ሴ HTTP/1.1
        2041  +
Host:example.amazonaws.com
        2042  +
X-Amz-Date:20150830T123600Z
        2043  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        2044  +
 2061   2045   
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
 2062   2046   
similarity index 100%
 2063   2047   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
 2064   2048   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 2065   2049   
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
 2066   2050   
new file mode 100644
 2067   2051   
index 0000000..bdb77c9
 2068         -
-- /dev/null
        2052  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 2069   2053   
@@ -0,0 +1,7 @@
        2054  +
GET
        2055  +
/%E1%88%B4
        2056  +
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
        2057  +
host:example.amazonaws.com
        2058  +
        2059  +
host
        2060  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2070   2061   
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
 2071   2062   
new file mode 100644
 2072   2063   
index 0000000..21342b3
 2073         -
-- /dev/null
        2064  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 2074   2065   
@@ -0,0 +1 @@
        2066  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 2075   2067   
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
 2076   2068   
new file mode 100644
 2077   2069   
index 0000000..368c2ff
 2078         -
-- /dev/null
        2070  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 2079   2071   
@@ -0,0 +1,3 @@
        2072  +
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
        2073  +
Host:example.amazonaws.com
        2074  +
 2080   2075   
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
 2081   2076   
new file mode 100644
 2082   2077   
index 0000000..56b8fbf
 2083         -
-- /dev/null
        2078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 2084   2079   
@@ -0,0 +1,4 @@
        2080  +
AWS4-HMAC-SHA256
        2081  +
20150830T123600Z
        2082  +
20150830/us-east-1/service/aws4_request
        2083  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 2085   2084   
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
 2086   2085   
similarity index 62%
 2087   2086   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 2088   2087   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2089   2088   
index da4808d..9e273f6 100644
 2090         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        2089  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2091   2090   
@@ -1,3 +1,2 @@
 2092   2091   
GET /ሴ HTTP/1.1
 2093   2092   
Host:example.amazonaws.com
 2094         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2095   2093   
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
 2096   2094   
new file mode 100644
 2097   2095   
index 0000000..0468d80
 2098         -
-- /dev/null
        2096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 2099   2097   
@@ -0,0 +1,12 @@
        2098  +
{
        2099  +
    "credentials": {
        2100  +
        "access_key_id": "AKIDEXAMPLE",
        2101  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2102  +
    },
        2103  +
    "expiration_in_seconds": 3600,
        2104  +
    "normalize": true,
        2105  +
    "region": "us-east-1",
        2106  +
    "service": "service",
        2107  +
    "sign_body": false,
        2108  +
    "timestamp": "2015-08-30T12:36:00Z"
        2109  +
}
              \
 No newline at end of file
 2100   2110   
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
 2101   2111   
similarity index 100%
 2102   2112   
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
 2103   2113   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 2104   2114   
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
 2105   2115   
new file mode 100644
 2106   2116   
index 0000000..d7f1c1c
 2107         -
-- /dev/null
        2117  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 2108   2118   
@@ -0,0 +1 @@
        2119  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 2109   2120   
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
 2110   2121   
new file mode 100644
 2111   2122   
index 0000000..1c60790
 2112         -
-- /dev/null
        2123  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 2113   2124   
@@ -0,0 +1,5 @@
        2125  +
GET /?Param1=value1 HTTP/1.1
        2126  +
Host:example.amazonaws.com
        2127  +
X-Amz-Date:20150830T123600Z
        2128  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        2129  +
 2114   2130   
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
 2115   2131   
similarity index 100%
 2116   2132   
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
 2117   2133   
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
 2118   2134   
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
 2119   2135   
new file mode 100644
 2120   2136   
index 0000000..6a823ed
 2121         -
-- /dev/null
        2137  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 2122   2138   
@@ -0,0 +1,7 @@
        2139  +
GET
        2140  +
/
        2141  +
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
        2142  +
host:example.amazonaws.com
        2143  +
        2144  +
host
        2145  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2123   2146   
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
 2124   2147   
new file mode 100644
 2125   2148   
index 0000000..8c77136
 2126         -
-- /dev/null
        2149  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 2127   2150   
@@ -0,0 +1 @@
        2151  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 2128   2152   
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
 2129   2153   
new file mode 100644
 2130   2154   
index 0000000..2d337d8
 2131         -
-- /dev/null
        2155  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 2132   2156   
@@ -0,0 +1,3 @@
        2157  +
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
        2158  +
Host:example.amazonaws.com
        2159  +
 2133   2160   
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
 2134   2161   
new file mode 100644
 2135   2162   
index 0000000..191a484
 2136         -
-- /dev/null
        2163  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 2137   2164   
@@ -0,0 +1,4 @@
        2165  +
AWS4-HMAC-SHA256
        2166  +
20150830T123600Z
        2167  +
20150830/us-east-1/service/aws4_request
        2168  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 2138   2169   
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
 2139   2170   
similarity index 100%
 2140   2171   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 2141   2172   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 2142   2173   
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
 2143   2174   
new file mode 100644
 2144   2175   
index 0000000..0468d80
 2145         -
-- /dev/null
        2176  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 2146   2177   
@@ -0,0 +1,12 @@
        2178  +
{
        2179  +
    "credentials": {
        2180  +
        "access_key_id": "AKIDEXAMPLE",
        2181  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2182  +
    },
        2183  +
    "expiration_in_seconds": 3600,
        2184  +
    "normalize": true,
        2185  +
    "region": "us-east-1",
        2186  +
    "service": "service",
        2187  +
    "sign_body": false,
        2188  +
    "timestamp": "2015-08-30T12:36:00Z"
        2189  +
}
              \
 No newline at end of file
 2147   2190   
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
 2148   2191   
new file mode 100644
 2149   2192   
index 0000000..0c8ba21
 2150         -
-- /dev/null
        2193  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 2151   2194   
@@ -0,0 +1,8 @@
        2195  +
GET
        2196  +
/
        2197  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        2198  +
host:example.amazonaws.com
        2199  +
x-amz-date:20150830T123600Z
        2200  +
        2201  +
host;x-amz-date
        2202  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2152   2203   
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
 2153   2204   
new file mode 100644
 2154   2205   
index 0000000..9ab65ed
 2155         -
-- /dev/null
        2206  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 2156   2207   
@@ -0,0 +1 @@
        2208  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 2157   2209   
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
 2158   2210   
new file mode 100644
 2159   2211   
index 0000000..0bcdf98
 2160         -
-- /dev/null
        2212  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 2161   2213   
@@ -0,0 +1,5 @@
        2214  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2215  +
Host:example.amazonaws.com
        2216  +
X-Amz-Date:20150830T123600Z
        2217  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        2218  +
 2162   2219   
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
 2163   2220   
new file mode 100644
 2164   2221   
index 0000000..bf674ad
 2165         -
-- /dev/null
        2222  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 2166   2223   
@@ -0,0 +1,4 @@
        2224  +
AWS4-HMAC-SHA256
        2225  +
20150830T123600Z
        2226  +
20150830/us-east-1/service/aws4_request
        2227  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 2167   2228   
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
 2168   2229   
new file mode 100644
 2169   2230   
index 0000000..3f590a4
 2170         -
-- /dev/null
        2231  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 2171   2232   
@@ -0,0 +1,7 @@
        2233  +
GET
        2234  +
/
        2235  +
%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
        2236  +
host:example.amazonaws.com
        2237  +
        2238  +
host
        2239  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2172   2240   
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
 2173   2241   
new file mode 100644
 2174   2242   
index 0000000..e225eab
 2175         -
-- /dev/null
        2243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 2176   2244   
@@ -0,0 +1 @@
        2245  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 2177   2246   
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
 2178   2247   
new file mode 100644
 2179   2248   
index 0000000..6206719
 2180         -
-- /dev/null
        2249  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 2181   2250   
@@ -0,0 +1,3 @@
        2251  +
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
        2252  +
Host:example.amazonaws.com
        2253  +
 2182   2254   
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
 2183   2255   
new file mode 100644
 2184   2256   
index 0000000..81a4210
 2185         -
-- /dev/null
        2257  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2186   2258   
@@ -0,0 +1,4 @@
        2259  +
AWS4-HMAC-SHA256
        2260  +
20150830T123600Z
        2261  +
20150830/us-east-1/service/aws4_request
        2262  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 2187   2263   
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
 2188   2264   
new file mode 100644
 2189   2265   
index 0000000..368c6e3
 2190         -
-- /dev/null
        2266  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2191   2267   
@@ -0,0 +1,2 @@
        2268  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2269  +
Host:example.amazonaws.com
 2192   2270   
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
 2193   2271   
new file mode 100644
 2194   2272   
index 0000000..0468d80
 2195         -
-- /dev/null
        2273  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2196   2274   
@@ -0,0 +1,12 @@
        2275  +
{
        2276  +
    "credentials": {
        2277  +
        "access_key_id": "AKIDEXAMPLE",
        2278  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2279  +
    },
        2280  +
    "expiration_in_seconds": 3600,
        2281  +
    "normalize": true,
        2282  +
    "region": "us-east-1",
        2283  +
    "service": "service",
        2284  +
    "sign_body": false,
        2285  +
    "timestamp": "2015-08-30T12:36:00Z"
        2286  +
}
              \
 No newline at end of file
 2197   2287   
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
 2198   2288   
similarity index 100%
 2199   2289   
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
 2200   2290   
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
 2201   2291   
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
 2202   2292   
new file mode 100644
 2203   2293   
index 0000000..6a8cb9d
 2204         -
-- /dev/null
        2294  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2205   2295   
@@ -0,0 +1 @@
        2296  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 2206   2297   
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
 2207   2298   
new file mode 100644
 2208   2299   
index 0000000..f78a9d2
 2209         -
-- /dev/null
        2300  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2210   2301   
@@ -0,0 +1,5 @@
        2302  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        2303  +
Host:example.amazonaws.com
        2304  +
X-Amz-Date:20150830T123600Z
        2305  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        2306  +
 2211   2307   
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
 2212   2308   
similarity index 100%
 2213   2309   
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
 2214   2310   
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
 2215   2311   
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
 2216   2312   
new file mode 100644
 2217   2313   
index 0000000..a6e1bc7
 2218         -
-- /dev/null
        2314  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2219   2315   
@@ -0,0 +1,7 @@
        2316  +
GET
        2317  +
/
        2318  +
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
        2319  +
host:example.amazonaws.com
        2320  +
        2321  +
host
        2322  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2220   2323   
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
 2221   2324   
new file mode 100644
 2222   2325   
index 0000000..d6e6a88
 2223         -
-- /dev/null
        2326  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2224   2327   
@@ -0,0 +1 @@
        2328  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 2225   2329   
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
 2226   2330   
new file mode 100644
 2227   2331   
index 0000000..538e2f0
 2228         -
-- /dev/null
        2332  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2229   2333   
@@ -0,0 +1,3 @@
        2334  +
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
        2335  +
Host:example.amazonaws.com
        2336  +
 2230   2337   
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
 2231   2338   
new file mode 100644
 2232   2339   
index 0000000..e696085
 2233         -
-- /dev/null
        2340  +
++ 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
 2234   2341   
@@ -0,0 +1,4 @@
        2342  +
AWS4-HMAC-SHA256
        2343  +
20150830T123600Z
        2344  +
20150830/us-east-1/service/aws4_request
        2345  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 2235   2346   
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
 2236   2347   
similarity index 100%
 2237   2348   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 2238   2349   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2239   2350   
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
 2240   2351   
new file mode 100644
 2241   2352   
index 0000000..0468d80
 2242         -
-- /dev/null
        2353  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2243   2354   
@@ -0,0 +1,12 @@
        2355  +
{
        2356  +
    "credentials": {
        2357  +
        "access_key_id": "AKIDEXAMPLE",
        2358  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2359  +
    },
        2360  +
    "expiration_in_seconds": 3600,
        2361  +
    "normalize": true,
        2362  +
    "region": "us-east-1",
        2363  +
    "service": "service",
        2364  +
    "sign_body": false,
        2365  +
    "timestamp": "2015-08-30T12:36:00Z"
        2366  +
}
              \
 No newline at end of file
 2244   2367   
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
 2245   2368   
similarity index 100%
 2246   2369   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 2247   2370   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2248   2371   
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
 2249   2372   
new file mode 100644
 2250   2373   
index 0000000..876a64b
 2251         -
-- /dev/null
        2374  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2252   2375   
@@ -0,0 +1 @@
        2376  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 2253   2377   
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
 2254   2378   
similarity index 50%
 2255   2379   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 2256   2380   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2257   2381   
index ba1ef40..9d0d993 100644
 2258         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        2382  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2259   2383   
@@ -1,4 +1,5 @@
 2260   2384   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 2261   2385   
Host:example.amazonaws.com
 2262   2386   
X-Amz-Date:20150830T123600Z
 2263         -
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
        2387  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        2388  +
 2264   2389   
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
 2265   2390   
similarity index 100%
 2266   2391   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 2267   2392   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2268   2393   
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
 2269   2394   
new file mode 100644
 2270   2395   
index 0000000..a1bac59
 2271         -
-- /dev/null
        2396  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2272   2397   
@@ -0,0 +1,7 @@
        2398  +
GET
        2399  +
/
        2400  +
-._~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
        2401  +
host:example.amazonaws.com
        2402  +
        2403  +
host
        2404  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2273   2405   
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
 2274   2406   
new file mode 100644
 2275   2407   
index 0000000..41881e9
 2276         -
-- /dev/null
        2408  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2277   2409   
@@ -0,0 +1 @@
        2410  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 2278   2411   
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
 2279   2412   
new file mode 100644
 2280   2413   
index 0000000..3179076
 2281         -
-- /dev/null
        2414  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2282   2415   
@@ -0,0 +1,3 @@
        2416  +
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
        2417  +
Host:example.amazonaws.com
        2418  +
 2283   2419   
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
 2284   2420   
new file mode 100644
 2285   2421   
index 0000000..6d675fc
 2286         -
-- /dev/null
        2422  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2287   2423   
@@ -0,0 +1,4 @@
        2424  +
AWS4-HMAC-SHA256
        2425  +
20150830T123600Z
        2426  +
20150830/us-east-1/service/aws4_request
        2427  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 2288   2428   
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
 2289   2429   
similarity index 100%
 2290   2430   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 2291   2431   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2292   2432   
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
 2293   2433   
new file mode 100644
 2294   2434   
index 0000000..0468d80
 2295         -
-- /dev/null
        2435  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2296   2436   
@@ -0,0 +1,12 @@
        2437  +
{
        2438  +
    "credentials": {
        2439  +
        "access_key_id": "AKIDEXAMPLE",
        2440  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2441  +
    },
        2442  +
    "expiration_in_seconds": 3600,
        2443  +
    "normalize": true,
        2444  +
    "region": "us-east-1",
        2445  +
    "service": "service",
        2446  +
    "sign_body": false,
        2447  +
    "timestamp": "2015-08-30T12:36:00Z"
        2448  +
}
              \
 No newline at end of file
 2297   2449   
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
 2298   2450   
similarity index 100%
 2299   2451   
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
 2300   2452   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2301   2453   
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
 2302   2454   
new file mode 100644
 2303   2455   
index 0000000..87f295f
 2304         -
-- /dev/null
        2456  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2305   2457   
@@ -0,0 +1 @@
        2458  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2306   2459   
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
 2307   2460   
new file mode 100644
 2308   2461   
index 0000000..36b86e7
 2309         -
-- /dev/null
        2462  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2310   2463   
@@ -0,0 +1,5 @@
        2464  +
GET / HTTP/1.1
        2465  +
Host:example.amazonaws.com
        2466  +
X-Amz-Date:20150830T123600Z
        2467  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2468  +
 2311   2469   
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
 2312   2470   
similarity index 100%
 2313   2471   
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
 2314   2472   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2315   2473   
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
 2316   2474   
new file mode 100644
 2317   2475   
index 0000000..fb2420d
 2318         -
-- /dev/null
        2476  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2319   2477   
@@ -0,0 +1,7 @@
        2478  +
GET
        2479  +
/
        2480  +
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
        2481  +
host:example.amazonaws.com
        2482  +
        2483  +
host
        2484  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2320   2485   
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
 2321   2486   
new file mode 100644
 2322   2487   
index 0000000..da5c905
 2323         -
-- /dev/null
        2488  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2324   2489   
@@ -0,0 +1 @@
        2490  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2325   2491   
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
 2326   2492   
new file mode 100644
 2327   2493   
index 0000000..eeb7a8f
 2328         -
-- /dev/null
        2494  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2329   2495   
@@ -0,0 +1,3 @@
        2496  +
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
        2497  +
Host:example.amazonaws.com
        2498  +
 2330   2499   
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
 2331   2500   
new file mode 100644
 2332   2501   
index 0000000..d837e67
 2333         -
-- /dev/null
        2502  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2334   2503   
@@ -0,0 +1,4 @@
        2504  +
AWS4-HMAC-SHA256
        2505  +
20150830T123600Z
        2506  +
20150830/us-east-1/service/aws4_request
        2507  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2335   2508   
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
 2336   2509   
similarity index 100%
 2337   2510   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 2338   2511   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2339   2512   
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
 2340   2513   
new file mode 100644
 2341   2514   
index 0000000..0468d80
 2342         -
-- /dev/null
        2515  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2343   2516   
@@ -0,0 +1,12 @@
        2517  +
{
        2518  +
    "credentials": {
        2519  +
        "access_key_id": "AKIDEXAMPLE",
        2520  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2521  +
    },
        2522  +
    "expiration_in_seconds": 3600,
        2523  +
    "normalize": true,
        2524  +
    "region": "us-east-1",
        2525  +
    "service": "service",
        2526  +
    "sign_body": false,
        2527  +
    "timestamp": "2015-08-30T12:36:00Z"
        2528  +
}
              \
 No newline at end of file
 2344   2529   
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
 2345   2530   
similarity index 100%
 2346   2531   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 2347   2532   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2348   2533   
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
 2349   2534   
new file mode 100644
 2350   2535   
index 0000000..19a2cc9
 2351         -
-- /dev/null
        2536  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2352   2537   
@@ -0,0 +1 @@
        2538  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 2353   2539   
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
 2354   2540   
new file mode 100644
 2355   2541   
index 0000000..acb13ee
 2356         -
-- /dev/null
        2542  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2357   2543   
@@ -0,0 +1,5 @@
        2544  +
GET /?ሴ=bar HTTP/1.1
        2545  +
Host:example.amazonaws.com
        2546  +
X-Amz-Date:20150830T123600Z
        2547  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2548  +
 2358   2549   
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
 2359   2550   
similarity index 100%
 2360   2551   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 2361   2552   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2362   2553   
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
 2363   2554   
new file mode 100644
 2364   2555   
index 0000000..92cee62
 2365         -
-- /dev/null
        2556  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2366   2557   
@@ -0,0 +1,7 @@
        2558  +
GET
        2559  +
/
        2560  +
%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
        2561  +
host:example.amazonaws.com
        2562  +
        2563  +
host
        2564  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2367   2565   
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
 2368   2566   
new file mode 100644
 2369   2567   
index 0000000..c9e49de
 2370         -
-- /dev/null
        2568  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2371   2569   
@@ -0,0 +1 @@
        2570  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 2372   2571   
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
 2373   2572   
new file mode 100644
 2374   2573   
index 0000000..8f4d8d0
 2375         -
-- /dev/null
        2574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2376   2575   
@@ -0,0 +1,3 @@
        2576  +
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
        2577  +
Host:example.amazonaws.com
        2578  +
 2377   2579   
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
 2378   2580   
new file mode 100644
 2379   2581   
index 0000000..a6181dc
 2380         -
-- /dev/null
        2582  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2381   2583   
@@ -0,0 +1,4 @@
        2584  +
AWS4-HMAC-SHA256
        2585  +
20150830T123600Z
        2586  +
20150830/us-east-1/service/aws4_request
        2587  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 2382   2588   
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
 2383   2589   
similarity index 64%
 2384   2590   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 2385   2591   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2386   2592   
index cc2757e..aff333a 100644
 2387         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2593  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2388   2594   
@@ -1,3 +1,2 @@
 2389   2595   
GET /?ሴ=bar HTTP/1.1
 2390   2596   
Host:example.amazonaws.com
 2391         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2392   2597   
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
 2393   2598   
similarity index 99%
 2394   2599   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 2395   2600   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2396   2601   
index a457c8a..a334e18 100644
 2397   2602   
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
 2398   2603   
new file mode 100644
 2399   2604   
index 0000000..ccacdeb
 2400         -
-- /dev/null
        2605  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2401   2606   
@@ -0,0 +1,9 @@
        2607  +
GET
        2608  +
/
        2609  +
        2610  +
host:example.amazonaws.com
        2611  +
x-amz-date:20150830T123600Z
        2612  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2613  +
        2614  +
host;x-amz-date;x-amz-security-token
        2615  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2402   2616   
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
 2403   2617   
new file mode 100644
 2404   2618   
index 0000000..083e30d
 2405         -
-- /dev/null
        2619  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2406   2620   
@@ -0,0 +1 @@
        2621  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 2407   2622   
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
 2408   2623   
new file mode 100644
 2409   2624   
index 0000000..5287932
 2410         -
-- /dev/null
        2625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2411   2626   
@@ -0,0 +1,6 @@
        2627  +
GET / HTTP/1.1
        2628  +
Host:example.amazonaws.com
        2629  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2630  +
X-Amz-Date:20150830T123600Z
        2631  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2632  +
 2412   2633   
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
 2413   2634   
new file mode 100644
 2414   2635   
index 0000000..742b880
 2415         -
-- /dev/null
        2636  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2416   2637   
@@ -0,0 +1,4 @@
        2638  +
AWS4-HMAC-SHA256
        2639  +
20150830T123600Z
        2640  +
20150830/us-east-1/service/aws4_request
        2641  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 2417   2642   
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
 2418   2643   
new file mode 100644
 2419   2644   
index 0000000..5e75179
 2420         -
-- /dev/null
        2645  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2421   2646   
@@ -0,0 +1,7 @@
        2647  +
GET
        2648  +
/
        2649  +
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
        2650  +
host:example.amazonaws.com
        2651  +
        2652  +
host
        2653  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2422   2654   
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
 2423   2655   
new file mode 100644
 2424   2656   
index 0000000..50b947f
 2425         -
-- /dev/null
        2657  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2426   2658   
@@ -0,0 +1 @@
        2659  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 2427   2660   
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
 2428   2661   
new file mode 100644
 2429   2662   
index 0000000..aee910b
 2430         -
-- /dev/null
        2663  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2431   2664   
@@ -0,0 +1,3 @@
        2665  +
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
        2666  +
Host:example.amazonaws.com
        2667  +
 2432   2668   
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
 2433   2669   
new file mode 100644
 2434   2670   
index 0000000..04a6c17
 2435         -
-- /dev/null
        2671  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2436   2672   
@@ -0,0 +1,4 @@
        2673  +
AWS4-HMAC-SHA256
        2674  +
20150830T123600Z
        2675  +
20150830/us-east-1/service/aws4_request
        2676  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 2437   2677   
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
 2438   2678   
similarity index 100%
 2439   2679   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 2440   2680   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2441   2681   
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
 2442   2682   
new file mode 100644
 2443   2683   
index 0000000..0468d80
 2444         -
-- /dev/null
        2684  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2445   2685   
@@ -0,0 +1,12 @@
        2686  +
{
        2687  +
    "credentials": {
        2688  +
        "access_key_id": "AKIDEXAMPLE",
        2689  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2690  +
    },
        2691  +
    "expiration_in_seconds": 3600,
        2692  +
    "normalize": true,
        2693  +
    "region": "us-east-1",
        2694  +
    "service": "service",
        2695  +
    "sign_body": false,
        2696  +
    "timestamp": "2015-08-30T12:36:00Z"
        2697  +
}
              \
 No newline at end of file
 2446   2698   
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
 2447   2699   
similarity index 100%
 2448   2700   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 2449   2701   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2450   2702   
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
 2451   2703   
new file mode 100644
 2452   2704   
index 0000000..87f295f
 2453         -
-- /dev/null
        2705  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2454   2706   
@@ -0,0 +1 @@
        2707  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2455   2708   
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
 2456   2709   
new file mode 100644
 2457   2710   
index 0000000..36b86e7
 2458         -
-- /dev/null
        2711  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2459   2712   
@@ -0,0 +1,5 @@
        2713  +
GET / HTTP/1.1
        2714  +
Host:example.amazonaws.com
        2715  +
X-Amz-Date:20150830T123600Z
        2716  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2717  +
 2460   2718   
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
 2461   2719   
similarity index 100%
 2462   2720   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 2463   2721   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2464   2722   
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
 2465   2723   
new file mode 100644
 2466   2724   
index 0000000..fb2420d
 2467         -
-- /dev/null
        2725  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2468   2726   
@@ -0,0 +1,7 @@
        2727  +
GET
        2728  +
/
        2729  +
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
        2730  +
host:example.amazonaws.com
        2731  +
        2732  +
host
        2733  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2469   2734   
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
 2470   2735   
new file mode 100644
 2471   2736   
index 0000000..da5c905
 2472         -
-- /dev/null
        2737  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2473   2738   
@@ -0,0 +1 @@
        2739  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2474   2740   
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
 2475   2741   
new file mode 100644
 2476   2742   
index 0000000..eeb7a8f
 2477         -
-- /dev/null
        2743  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2478   2744   
@@ -0,0 +1,3 @@
        2745  +
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
        2746  +
Host:example.amazonaws.com
        2747  +
 2479   2748   
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
 2480   2749   
new file mode 100644
 2481   2750   
index 0000000..d837e67
 2482         -
-- /dev/null
        2751  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2483   2752   
@@ -0,0 +1,4 @@
        2753  +
AWS4-HMAC-SHA256
        2754  +
20150830T123600Z
        2755  +
20150830/us-east-1/service/aws4_request
        2756  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2484   2757   
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
 2485   2758   
similarity index 100%
 2486   2759   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 2487   2760   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2488   2761   
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
 2489   2762   
new file mode 100644
 2490   2763   
index 0000000..0468d80
 2491         -
-- /dev/null
        2764  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2492   2765   
@@ -0,0 +1,12 @@
        2766  +
{
        2767  +
    "credentials": {
        2768  +
        "access_key_id": "AKIDEXAMPLE",
        2769  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2770  +
    },
        2771  +
    "expiration_in_seconds": 3600,
        2772  +
    "normalize": true,
        2773  +
    "region": "us-east-1",
        2774  +
    "service": "service",
        2775  +
    "sign_body": false,
        2776  +
    "timestamp": "2015-08-30T12:36:00Z"
        2777  +
}
              \
 No newline at end of file
 2493   2778   
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
 2494   2779   
similarity index 100%
 2495   2780   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 2496   2781   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2497   2782   
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
 2498   2783   
new file mode 100644
 2499   2784   
index 0000000..629487f
 2500         -
-- /dev/null
        2785  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2501   2786   
@@ -0,0 +1 @@
        2787  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2502   2788   
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
 2503   2789   
new file mode 100644
 2504   2790   
index 0000000..0d99b1c
 2505         -
-- /dev/null
        2791  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2506   2792   
@@ -0,0 +1,5 @@
        2793  +
POST / HTTP/1.1
        2794  +
Host:example.amazonaws.com
        2795  +
X-Amz-Date:20150830T123600Z
        2796  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2797  +
 2507   2798   
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
 2508   2799   
similarity index 100%
 2509   2800   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 2510   2801   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2511   2802   
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
 2512   2803   
new file mode 100644
 2513   2804   
index 0000000..d3341e7
 2514         -
-- /dev/null
        2805  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2515   2806   
@@ -0,0 +1,7 @@
        2807  +
POST
        2808  +
/
        2809  +
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
        2810  +
host:example.amazonaws.com
        2811  +
        2812  +
host
        2813  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2516   2814   
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
 2517   2815   
new file mode 100644
 2518   2816   
index 0000000..79f7e0d
 2519         -
-- /dev/null
        2817  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2520   2818   
@@ -0,0 +1 @@
        2819  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2521   2820   
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
 2522   2821   
new file mode 100644
 2523   2822   
index 0000000..94f1b21
 2524         -
-- /dev/null
        2823  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2525   2824   
@@ -0,0 +1,3 @@
        2825  +
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
        2826  +
Host:example.amazonaws.com
        2827  +
 2526   2828   
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
 2527   2829   
new file mode 100644
 2528   2830   
index 0000000..e8f335b
 2529         -
-- /dev/null
        2831  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2530   2832   
@@ -0,0 +1,4 @@
        2833  +
AWS4-HMAC-SHA256
        2834  +
20150830T123600Z
        2835  +
20150830/us-east-1/service/aws4_request
        2836  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2531   2837   
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
 2532   2838   
similarity index 100%
 2533   2839   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 2534   2840   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2535   2841   
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
 2536   2842   
new file mode 100644
 2537   2843   
index 0000000..0468d80
 2538         -
-- /dev/null
        2844  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2539   2845   
@@ -0,0 +1,12 @@
        2846  +
{
        2847  +
    "credentials": {
        2848  +
        "access_key_id": "AKIDEXAMPLE",
        2849  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2850  +
    },
        2851  +
    "expiration_in_seconds": 3600,
        2852  +
    "normalize": true,
        2853  +
    "region": "us-east-1",
        2854  +
    "service": "service",
        2855  +
    "sign_body": false,
        2856  +
    "timestamp": "2015-08-30T12:36:00Z"
        2857  +
}
              \
 No newline at end of file
 2540   2858   
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
 2541   2859   
similarity index 100%
 2542   2860   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 2543   2861   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2544   2862   
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
 2545   2863   
new file mode 100644
 2546   2864   
index 0000000..e4e6428
 2547         -
-- /dev/null
        2865  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2548   2866   
@@ -0,0 +1 @@
        2867  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 2549   2868   
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
 2550   2869   
new file mode 100644
 2551   2870   
index 0000000..e3778f5
 2552         -
-- /dev/null
        2871  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2553   2872   
@@ -0,0 +1,6 @@
        2873  +
POST / HTTP/1.1
        2874  +
Host:example.amazonaws.com
        2875  +
My-Header1:value1
        2876  +
X-Amz-Date:20150830T123600Z
        2877  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        2878  +
 2554   2879   
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
 2555   2880   
similarity index 100%
 2556   2881   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 2557   2882   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2558   2883   
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
 2559   2884   
new file mode 100644
 2560   2885   
index 0000000..bd7c937
 2561         -
-- /dev/null
        2886  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2562   2887   
@@ -0,0 +1,8 @@
        2888  +
POST
        2889  +
/
        2890  +
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
        2891  +
host:example.amazonaws.com
        2892  +
my-header1:value1
        2893  +
        2894  +
host;my-header1
        2895  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2563   2896   
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
 2564   2897   
new file mode 100644
 2565   2898   
index 0000000..0416f13
 2566         -
-- /dev/null
        2899  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2567   2900   
@@ -0,0 +1 @@
        2901  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 2568   2902   
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
 2569   2903   
new file mode 100644
 2570   2904   
index 0000000..5e6522f
 2571         -
-- /dev/null
        2905  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2572   2906   
@@ -0,0 +1,4 @@
        2907  +
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
        2908  +
Host:example.amazonaws.com
        2909  +
My-Header1:value1
        2910  +
 2573   2911   
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
 2574   2912   
new file mode 100644
 2575   2913   
index 0000000..d06d1df
 2576         -
-- /dev/null
        2914  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2577   2915   
@@ -0,0 +1,4 @@
        2916  +
AWS4-HMAC-SHA256
        2917  +
20150830T123600Z
        2918  +
20150830/us-east-1/service/aws4_request
        2919  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 2578   2920   
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
 2579   2921   
similarity index 100%
 2580   2922   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 2581   2923   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2582   2924   
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
 2583   2925   
new file mode 100644
 2584   2926   
index 0000000..0468d80
 2585         -
-- /dev/null
        2927  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2586   2928   
@@ -0,0 +1,12 @@
        2929  +
{
        2930  +
    "credentials": {
        2931  +
        "access_key_id": "AKIDEXAMPLE",
        2932  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2933  +
    },
        2934  +
    "expiration_in_seconds": 3600,
        2935  +
    "normalize": true,
        2936  +
    "region": "us-east-1",
        2937  +
    "service": "service",
        2938  +
    "sign_body": false,
        2939  +
    "timestamp": "2015-08-30T12:36:00Z"
        2940  +
}
              \
 No newline at end of file
 2587   2941   
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
 2588   2942   
similarity index 100%
 2589   2943   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 2590   2944   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2591   2945   
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
 2592   2946   
new file mode 100644
 2593   2947   
index 0000000..bb3809c
 2594         -
-- /dev/null
        2948  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2595   2949   
@@ -0,0 +1 @@
        2950  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 2596   2951   
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
 2597   2952   
new file mode 100644
 2598   2953   
index 0000000..10f6761
 2599         -
-- /dev/null
        2954  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2600   2955   
@@ -0,0 +1,6 @@
        2956  +
POST / HTTP/1.1
        2957  +
Host:example.amazonaws.com
        2958  +
My-Header1:VALUE1
        2959  +
X-Amz-Date:20150830T123600Z
        2960  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        2961  +
 2601   2962   
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
 2602   2963   
similarity index 100%
 2603   2964   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 2604   2965   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2605   2966   
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
 2606   2967   
new file mode 100644
 2607   2968   
index 0000000..f84856f
 2608         -
-- /dev/null
        2969  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2609   2970   
@@ -0,0 +1,8 @@
        2971  +
POST
        2972  +
/
        2973  +
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
        2974  +
host:example.amazonaws.com
        2975  +
my-header1:VALUE1
        2976  +
        2977  +
host;my-header1
        2978  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2610   2979   
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
 2611   2980   
new file mode 100644
 2612   2981   
index 0000000..a9d3cac
 2613         -
-- /dev/null
        2982  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2614   2983   
@@ -0,0 +1 @@
        2984  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 2615   2985   
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
 2616   2986   
new file mode 100644
 2617   2987   
index 0000000..cf96c7c
 2618         -
-- /dev/null
        2988  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2619   2989   
@@ -0,0 +1,4 @@
        2990  +
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
        2991  +
Host:example.amazonaws.com
        2992  +
My-Header1:VALUE1
        2993  +
 2620   2994   
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
 2621   2995   
new file mode 100644
 2622   2996   
index 0000000..47ef566
 2623         -
-- /dev/null
        2997  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2624   2998   
@@ -0,0 +1,4 @@
        2999  +
AWS4-HMAC-SHA256
        3000  +
20150830T123600Z
        3001  +
20150830/us-east-1/service/aws4_request
        3002  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 2625   3003   
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
 2626   3004   
similarity index 100%
 2627   3005   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 2628   3006   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2629   3007   
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
 2630   3008   
similarity index 100%
 2631   3009   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 2632   3010   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2633   3011   
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
 2634   3012   
similarity index 100%
 2635   3013   
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
 2636   3014   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2637   3015   
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
 2638   3016   
new file mode 100644
 2639   3017   
index 0000000..629487f
 2640         -
-- /dev/null
        3018  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2641   3019   
@@ -0,0 +1 @@
        3020  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2642   3021   
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
 2643   3022   
similarity index 67%
 2644   3023   
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
 2645   3024   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2646   3025   
index 291ed07..f96ff9e 100644
 2647         -
-- 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
        3026  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2648   3027   
@@ -1,5 +1,6 @@
 2649   3028   
POST / HTTP/1.1
 2650   3029   
Host:example.amazonaws.com
 2651         -
X-Amz-Date:20150830T123600Z
 2652   3030   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2653         -
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
        3031  +
X-Amz-Date:20150830T123600Z
        3032  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3033  +
 2654   3034   
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
 2655   3035   
similarity index 100%
 2656   3036   
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
 2657   3037   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2658   3038   
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
 2659   3039   
new file mode 100644
 2660   3040   
index 0000000..d3341e7
 2661         -
-- /dev/null
        3041  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 2662   3042   
@@ -0,0 +1,7 @@
        3043  +
POST
        3044  +
/
        3045  +
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
        3046  +
host:example.amazonaws.com
        3047  +
        3048  +
host
        3049  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2663   3050   
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
 2664   3051   
new file mode 100644
 2665   3052   
index 0000000..79f7e0d
 2666         -
-- /dev/null
        3053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 2667   3054   
@@ -0,0 +1 @@
        3055  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2668   3056   
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
 2669   3057   
new file mode 100644
 2670   3058   
index 0000000..4983268
 2671         -
-- /dev/null
        3059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 2672   3060   
@@ -0,0 +1,3 @@
        3061  +
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
        3062  +
Host:example.amazonaws.com
        3063  +
 2673   3064   
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
 2674   3065   
new file mode 100644
 2675   3066   
index 0000000..e8f335b
 2676         -
-- /dev/null
        3067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 2677   3068   
@@ -0,0 +1,4 @@
        3069  +
AWS4-HMAC-SHA256
        3070  +
20150830T123600Z
        3071  +
20150830/us-east-1/service/aws4_request
        3072  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2678   3073   
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
 2679   3074   
similarity index 100%
 2680   3075   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 2681   3076   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 2682   3077   
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
 2683   3078   
similarity index 100%
 2684   3079   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 2685   3080   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 2686   3081   
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
 2687   3082   
similarity index 100%
 2688   3083   
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
 2689   3084   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2690   3085   
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
 2691   3086   
new file mode 100644
 2692   3087   
index 0000000..85a7c29
 2693         -
-- /dev/null
        3088  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 2694   3089   
@@ -0,0 +1 @@
        3090  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 2695   3091   
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
 2696   3092   
similarity index 65%
 2697   3093   
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
 2698   3094   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2699   3095   
index 37b2f04..4d0b143 100644
 2700         -
-- 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
        3096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2701   3097   
@@ -1,5 +1,6 @@
 2702   3098   
POST / HTTP/1.1
 2703   3099   
Host:example.amazonaws.com
 2704         -
X-Amz-Date:20150830T123600Z
 2705   3100   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2706         -
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
        3101  +
X-Amz-Date:20150830T123600Z
        3102  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        3103  +
 2707   3104   
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
 2708   3105   
similarity index 100%
 2709   3106   
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
 2710   3107   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 2711   3108   
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
 2712   3109   
new file mode 100644
 2713   3110   
index 0000000..57a7bc3
 2714         -
-- /dev/null
        3111  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 2715   3112   
@@ -0,0 +1,7 @@
        3113  +
POST
        3114  +
/
        3115  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-SignedHeaders=host
        3116  +
host:example.amazonaws.com
        3117  +
        3118  +
host
        3119  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2716   3120   
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
 2717   3121   
new file mode 100644
 2718   3122   
index 0000000..eb905d2
 2719         -
-- /dev/null
        3123  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 2720   3124   
@@ -0,0 +1 @@
        3125  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 2721   3126   
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
 2722   3127   
new file mode 100644
 2723   3128   
index 0000000..1d80ec0
 2724         -
-- /dev/null
        3129  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 2725   3130   
@@ -0,0 +1,3 @@
        3131  +
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
        3132  +
Host:example.amazonaws.com
        3133  +
 2726   3134   
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
 2727   3135   
new file mode 100644
 2728   3136   
index 0000000..bd0239a
 2729         -
-- /dev/null
        3137  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 2730   3138   
@@ -0,0 +1,4 @@
        3139  +
AWS4-HMAC-SHA256
        3140  +
20150830T123600Z
        3141  +
20150830/us-east-1/service/aws4_request
        3142  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 2731   3143   
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
 2732   3144   
similarity index 100%
 2733   3145   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 2734   3146   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 2735   3147   
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
 2736   3148   
new file mode 100644
 2737   3149   
index 0000000..0468d80
 2738         -
-- /dev/null
        3150  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 2739   3151   
@@ -0,0 +1,12 @@
        3152  +
{
        3153  +
    "credentials": {
        3154  +
        "access_key_id": "AKIDEXAMPLE",
        3155  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3156  +
    },
        3157  +
    "expiration_in_seconds": 3600,
        3158  +
    "normalize": true,
        3159  +
    "region": "us-east-1",
        3160  +
    "service": "service",
        3161  +
    "sign_body": false,
        3162  +
    "timestamp": "2015-08-30T12:36:00Z"
        3163  +
}
              \
 No newline at end of file
 2740   3164   
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
 2741   3165   
similarity index 100%
 2742   3166   
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
 2743   3167   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 2744   3168   
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
 2745   3169   
new file mode 100644
 2746   3170   
index 0000000..80ed433
 2747         -
-- /dev/null
        3171  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 2748   3172   
@@ -0,0 +1 @@
        3173  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2749   3174   
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
 2750   3175   
new file mode 100644
 2751   3176   
index 0000000..4e614f8
 2752         -
-- /dev/null
        3177  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 2753   3178   
@@ -0,0 +1,5 @@
        3179  +
POST /?Param1=value1 HTTP/1.1
        3180  +
Host:example.amazonaws.com
        3181  +
X-Amz-Date:20150830T123600Z
        3182  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3183  +
 2754   3184   
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
 2755   3185   
similarity index 100%
 2756   3186   
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
 2757   3187   
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
 2758   3188   
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
 2759   3189   
new file mode 100644
 2760   3190   
index 0000000..be66403
 2761         -
-- /dev/null
        3191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 2762   3192   
@@ -0,0 +1,7 @@
        3193  +
POST
        3194  +
/
        3195  +
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
        3196  +
host:example.amazonaws.com
        3197  +
        3198  +
host
        3199  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2763   3200   
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
 2764   3201   
new file mode 100644
 2765   3202   
index 0000000..20fd32b
 2766         -
-- /dev/null
        3203  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 2767   3204   
@@ -0,0 +1 @@
        3205  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2768   3206   
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
 2769   3207   
new file mode 100644
 2770   3208   
index 0000000..d1148d0
 2771         -
-- /dev/null
        3209  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 2772   3210   
@@ -0,0 +1,3 @@
        3211  +
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
        3212  +
Host:example.amazonaws.com
        3213  +
 2773   3214   
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
 2774   3215   
new file mode 100644
 2775   3216   
index 0000000..1a77103
 2776         -
-- /dev/null
        3217  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 2777   3218   
@@ -0,0 +1,4 @@
        3219  +
AWS4-HMAC-SHA256
        3220  +
20150830T123600Z
        3221  +
20150830/us-east-1/service/aws4_request
        3222  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2778   3223   
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
 2779   3224   
similarity index 100%
 2780   3225   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 2781   3226   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 2782   3227   
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
 2783   3228   
new file mode 100644
 2784   3229   
index 0000000..0468d80
 2785         -
-- /dev/null
        3230  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 2786   3231   
@@ -0,0 +1,12 @@
        3232  +
{
        3233  +
    "credentials": {
        3234  +
        "access_key_id": "AKIDEXAMPLE",
        3235  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3236  +
    },
        3237  +
    "expiration_in_seconds": 3600,
        3238  +
    "normalize": true,
        3239  +
    "region": "us-east-1",
        3240  +
    "service": "service",
        3241  +
    "sign_body": false,
        3242  +
    "timestamp": "2015-08-30T12:36:00Z"
        3243  +
}
              \
 No newline at end of file
 2787   3244   
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
 2788   3245   
similarity index 100%
 2789   3246   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 2790   3247   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 2791   3248   
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
 2792   3249   
new file mode 100644
 2793   3250   
index 0000000..80ed433
 2794         -
-- /dev/null
        3251  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 2795   3252   
@@ -0,0 +1 @@
        3253  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2796   3254   
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
 2797   3255   
new file mode 100644
 2798   3256   
index 0000000..4e614f8
 2799         -
-- /dev/null
        3257  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 2800   3258   
@@ -0,0 +1,5 @@
        3259  +
POST /?Param1=value1 HTTP/1.1
        3260  +
Host:example.amazonaws.com
        3261  +
X-Amz-Date:20150830T123600Z
        3262  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3263  +
 2801   3264   
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
 2802   3265   
similarity index 100%
 2803   3266   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 2804   3267   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 2805   3268   
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
 2806   3269   
new file mode 100644
 2807   3270   
index 0000000..be66403
 2808         -
-- /dev/null
        3271  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 2809   3272   
@@ -0,0 +1,7 @@
        3273  +
POST
        3274  +
/
        3275  +
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
        3276  +
host:example.amazonaws.com
        3277  +
        3278  +
host
        3279  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2810   3280   
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
 2811   3281   
new file mode 100644
 2812   3282   
index 0000000..20fd32b
 2813         -
-- /dev/null
        3283  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 2814   3284   
@@ -0,0 +1 @@
        3285  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2815   3286   
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
 2816   3287   
new file mode 100644
 2817   3288   
index 0000000..d1148d0
 2818         -
-- /dev/null
        3289  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 2819   3290   
@@ -0,0 +1,3 @@
        3291  +
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
        3292  +
Host:example.amazonaws.com
        3293  +
 2820   3294   
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
 2821   3295   
new file mode 100644
 2822   3296   
index 0000000..1a77103
 2823         -
-- /dev/null
        3297  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 2824   3298   
@@ -0,0 +1,4 @@
        3299  +
AWS4-HMAC-SHA256
        3300  +
20150830T123600Z
        3301  +
20150830/us-east-1/service/aws4_request
        3302  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2825   3303   
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
 2826   3304   
similarity index 100%
 2827   3305   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 2828   3306   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 2829   3307   
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
 2830   3308   
new file mode 100644
 2831   3309   
index 0000000..0468d80
 2832         -
-- /dev/null
        3310  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 2833   3311   
@@ -0,0 +1,12 @@
        3312  +
{
        3313  +
    "credentials": {
        3314  +
        "access_key_id": "AKIDEXAMPLE",
        3315  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3316  +
    },
        3317  +
    "expiration_in_seconds": 3600,
        3318  +
    "normalize": true,
        3319  +
    "region": "us-east-1",
        3320  +
    "service": "service",
        3321  +
    "sign_body": false,
        3322  +
    "timestamp": "2015-08-30T12:36:00Z"
        3323  +
}
              \
 No newline at end of file
 2834   3324   
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
 2835   3325   
similarity index 100%
 2836   3326   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 2837   3327   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 2838   3328   
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
 2839   3329   
new file mode 100644
 2840   3330   
index 0000000..629487f
 2841         -
-- /dev/null
        3331  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 2842   3332   
@@ -0,0 +1 @@
        3333  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2843   3334   
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
 2844   3335   
new file mode 100644
 2845   3336   
index 0000000..0d99b1c
 2846         -
-- /dev/null
        3337  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 2847   3338   
@@ -0,0 +1,5 @@
        3339  +
POST / HTTP/1.1
        3340  +
Host:example.amazonaws.com
        3341  +
X-Amz-Date:20150830T123600Z
        3342  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3343  +
 2848   3344   
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
 2849   3345   
similarity index 100%
 2850   3346   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 2851   3347   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 2852   3348   
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
 2853   3349   
new file mode 100644
 2854   3350   
index 0000000..d3341e7
 2855         -
-- /dev/null
        3351  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 2856   3352   
@@ -0,0 +1,7 @@
        3353  +
POST
        3354  +
/
        3355  +
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
        3356  +
host:example.amazonaws.com
        3357  +
        3358  +
host
        3359  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2857   3360   
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
 2858   3361   
new file mode 100644
 2859   3362   
index 0000000..79f7e0d
 2860         -
-- /dev/null
        3363  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 2861   3364   
@@ -0,0 +1 @@
        3365  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2862   3366   
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
 2863   3367   
new file mode 100644
 2864   3368   
index 0000000..94f1b21
 2865         -
-- /dev/null
        3369  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 2866   3370   
@@ -0,0 +1,3 @@
        3371  +
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
        3372  +
Host:example.amazonaws.com
        3373  +
 2867   3374   
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
 2868   3375   
new file mode 100644
 2869   3376   
index 0000000..e8f335b
 2870         -
-- /dev/null
        3377  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 2871   3378   
@@ -0,0 +1,4 @@
        3379  +
AWS4-HMAC-SHA256
        3380  +
20150830T123600Z
        3381  +
20150830/us-east-1/service/aws4_request
        3382  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2872   3383   
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
 2873   3384   
similarity index 100%
 2874   3385   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 2875   3386   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 2876   3387   
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
 2877   3388   
similarity index 99%
 2878   3389   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 2879   3390   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 2880   3391   
index fc4bce6..0db1df1 100644
 2881   3392   
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
 2882   3393   
new file mode 100644
 2883   3394   
index 0000000..c218fdf
 2884         -
-- /dev/null
        3395  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 2885   3396   
@@ -0,0 +1,11 @@
        3397  +
POST
        3398  +
/
        3399  +
        3400  +
content-length:13
        3401  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3402  +
host:example.amazonaws.com
        3403  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3404  +
x-amz-date:20150830T123600Z
        3405  +
        3406  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3407  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2886   3408   
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
 2887   3409   
new file mode 100644
 2888   3410   
index 0000000..836aa8b
 2889         -
-- /dev/null
        3411  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 2890   3412   
@@ -0,0 +1 @@
        3413  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 2891   3414   
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
 2892   3415   
new file mode 100644
 2893   3416   
index 0000000..9262d53
 2894         -
-- /dev/null
        3417  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 2895   3418   
@@ -0,0 +1,9 @@
        3419  +
POST / HTTP/1.1
        3420  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3421  +
Host:example.amazonaws.com
        3422  +
Content-Length:13
        3423  +
X-Amz-Date:20150830T123600Z
        3424  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3425  +
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
        3426  +
        3427  +
Param1=value1
              \
 No newline at end of file
 2896   3428   
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
 2897   3429   
new file mode 100644
 2898   3430   
index 0000000..ddbdccc
 2899         -
-- /dev/null
        3431  +
++ 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
 2900   3432   
@@ -0,0 +1,4 @@
        3433  +
AWS4-HMAC-SHA256
        3434  +
20150830T123600Z
        3435  +
20150830/us-east-1/service/aws4_request
        3436  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 2901   3437   
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
 2902   3438   
new file mode 100644
 2903   3439   
index 0000000..596a579
 2904         -
-- /dev/null
        3440  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 2905   3441   
@@ -0,0 +1,9 @@
        3442  +
POST
        3443  +
/
        3444  +
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
        3445  +
content-length:13
        3446  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3447  +
host:example.amazonaws.com
        3448  +
        3449  +
content-length;content-type;host
        3450  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2906   3451   
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
 2907   3452   
new file mode 100644
 2908   3453   
index 0000000..bc85cd8
 2909         -
-- /dev/null
        3454  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 2910   3455   
@@ -0,0 +1 @@
        3456  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 2911   3457   
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
 2912   3458   
new file mode 100644
 2913   3459   
index 0000000..16b59e5
 2914         -
-- /dev/null
        3460  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 2915   3461   
@@ -0,0 +1,6 @@
        3462  +
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
        3463  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3464  +
Host:example.amazonaws.com
        3465  +
Content-Length:13
        3466  +
        3467  +
Param1=value1
              \
 No newline at end of file
 2916   3468   
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
 2917   3469   
new file mode 100644
 2918   3470   
index 0000000..50074af
 2919         -
-- /dev/null
        3471  +
++ 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
 2920   3472   
@@ -0,0 +1,4 @@
        3473  +
AWS4-HMAC-SHA256
        3474  +
20150830T123600Z
        3475  +
20150830/us-east-1/service/aws4_request
        3476  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 2921   3477   
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
 2922   3478   
similarity index 89%
 2923   3479   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 2924   3480   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 2925   3481   
index b711c25..8289eaa 100644
 2926   3482   
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
 2927   3483   
similarity index 99%
 2928   3484   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 2929   3485   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 2930   3486   
index fc4bce6..0db1df1 100644
 2931   3487   
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
 2932   3488   
new file mode 100644
 2933   3489   
index 0000000..4d116a5
 2934         -
-- /dev/null
        3490  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 2935   3491   
@@ -0,0 +1,11 @@
        3492  +
POST
        3493  +
/
        3494  +
        3495  +
content-length:13
        3496  +
content-type:application/x-www-form-urlencoded
        3497  +
host:example.amazonaws.com
        3498  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3499  +
x-amz-date:20150830T123600Z
        3500  +
        3501  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3502  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2936   3503   
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
 2937   3504   
new file mode 100644
 2938   3505   
index 0000000..0d2ac37
 2939         -
-- /dev/null
        3506  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 2940   3507   
@@ -0,0 +1 @@
        3508  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 2941   3509   
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
 2942   3510   
new file mode 100644
 2943   3511   
index 0000000..bd5e49c
 2944         -
-- /dev/null
        3512  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 2945   3513   
@@ -0,0 +1,9 @@
        3514  +
POST / HTTP/1.1
        3515  +
Content-Type:application/x-www-form-urlencoded
        3516  +
Host:example.amazonaws.com
        3517  +
Content-Length:13
        3518  +
X-Amz-Date:20150830T123600Z
        3519  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3520  +
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
        3521  +
        3522  +
Param1=value1
              \
 No newline at end of file
 2946   3523   
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
 2947   3524   
new file mode 100644
 2948   3525   
index 0000000..f1c599c
 2949         -
-- /dev/null
        3526  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 2950   3527   
@@ -0,0 +1,4 @@
        3528  +
AWS4-HMAC-SHA256
        3529  +
20150830T123600Z
        3530  +
20150830/us-east-1/service/aws4_request
        3531  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 2951   3532   
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
 2952   3533   
new file mode 100644
 2953   3534   
index 0000000..1fc1bb7
 2954         -
-- /dev/null
        3535  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 2955   3536   
@@ -0,0 +1,9 @@
        3537  +
POST
        3538  +
/
        3539  +
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
        3540  +
content-length:13
        3541  +
content-type:application/x-www-form-urlencoded
        3542  +
host:example.amazonaws.com
        3543  +
        3544  +
content-length;content-type;host
        3545  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2956   3546   
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
 2957   3547   
new file mode 100644
 2958   3548   
index 0000000..98c91b3
 2959         -
-- /dev/null
        3549  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 2960   3550   
@@ -0,0 +1 @@
        3551  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 2961   3552   
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
 2962   3553   
new file mode 100644
 2963   3554   
index 0000000..055cd7a
 2964         -
-- /dev/null
        3555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 2965   3556   
@@ -0,0 +1,6 @@
        3557  +
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
        3558  +
Content-Type:application/x-www-form-urlencoded
        3559  +
Host:example.amazonaws.com
        3560  +
Content-Length:13
        3561  +
        3562  +
Param1=value1
              \
 No newline at end of file
 2966   3563   
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
 2967   3564   
new file mode 100644
 2968   3565   
index 0000000..db7fc27
 2969         -
-- /dev/null
        3566  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 2970   3567   
@@ -0,0 +1,4 @@
        3568  +
AWS4-HMAC-SHA256
        3569  +
20150830T123600Z
        3570  +
20150830/us-east-1/service/aws4_request
        3571  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 2971   3572   
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
 2972   3573   
similarity index 88%
 2973   3574   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 2974   3575   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 2975   3576   
index 0091102..760b2d3 100644
 2976   3577   
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
 2977   3578   
new file mode 100644
 2978   3579   
index 0000000..0468d80
 2979         -
-- /dev/null
        3580  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 2980   3581   
@@ -0,0 +1,12 @@
        3582  +
{
        3583  +
    "credentials": {
        3584  +
        "access_key_id": "AKIDEXAMPLE",
        3585  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3586  +
    },
        3587  +
    "expiration_in_seconds": 3600,
        3588  +
    "normalize": true,
        3589  +
    "region": "us-east-1",
        3590  +
    "service": "service",
        3591  +
    "sign_body": false,
        3592  +
    "timestamp": "2015-08-30T12:36:00Z"
        3593  +
}
              \
 No newline at end of file
 2981   3594   
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
 2982   3595   
similarity index 99%
 2983   3596   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 2984   3597   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 2985   3598   
index ccb5f43..1bc448e 100644
 2986   3599   
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
 2987   3600   
new file mode 100644
 2988   3601   
index 0000000..489c182
 2989         -
-- /dev/null
        3602  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 2990   3603   
@@ -0,0 +1 @@
        3604  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 2991   3605   
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
 2992   3606   
new file mode 100644
 2993   3607   
index 0000000..e1b8dbf
 2994         -
-- /dev/null
        3608  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 2995   3609   
@@ -0,0 +1,9 @@
        3610  +
GET / HTTP/1.1
        3611  +
Host:example.amazonaws.com
        3612  +
My-Header1:value2
        3613  +
My-Header1:value2
        3614  +
My-Header1:value1
        3615  +
X-Amz-Date:20150830T123600Z
        3616  +
X-Amz-Region-Set:us-east-1
        3617  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3618  +
 2996   3619   
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
 2997   3620   
similarity index 99%
 2998   3621   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 2999   3622   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3000   3623   
index 8783461..bfc4619 100644
 3001   3624   
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
 3002   3625   
new file mode 100644
 3003   3626   
index 0000000..379dcb2
 3004         -
-- /dev/null
        3627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 3005   3628   
@@ -0,0 +1,4 @@
        3629  +
{
        3630  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3631  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3632  +
}
 3006   3633   
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
 3007   3634   
similarity index 99%
 3008   3635   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 3009   3636   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3010   3637   
index 9561297..c05c3f5 100644
 3011   3638   
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
 3012   3639   
new file mode 100644
 3013   3640   
index 0000000..de9a4c3
 3014         -
-- /dev/null
        3641  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 3015   3642   
@@ -0,0 +1 @@
        3643  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 3016   3644   
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
 3017   3645   
new file mode 100644
 3018   3646   
index 0000000..6c6b8c4
 3019         -
-- /dev/null
        3647  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 3020   3648   
@@ -0,0 +1,6 @@
        3649  +
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
        3650  +
Host:example.amazonaws.com
        3651  +
My-Header1:value2
        3652  +
My-Header1:value2
        3653  +
My-Header1:value1
        3654  +
 3021   3655   
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
 3022   3656   
similarity index 99%
 3023   3657   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 3024   3658   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3025   3659   
index 3140f6f..4eef106 100644
 3026   3660   
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
 3027   3661   
similarity index 78%
 3028   3662   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 3029   3663   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3030   3664   
index 08a0364..40455ce 100644
 3031         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        3665  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3032   3666   
@@ -1,6 +1,5 @@
 3033   3667   
GET / HTTP/1.1
 3034   3668   
Host:example.amazonaws.com
 3035   3669   
My-Header1:value2
 3036   3670   
My-Header1:value2
 3037   3671   
My-Header1:value1
 3038         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3039   3672   
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
 3040   3673   
new file mode 100644
 3041   3674   
index 0000000..0468d80
 3042         -
-- /dev/null
        3675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 3043   3676   
@@ -0,0 +1,12 @@
        3677  +
{
        3678  +
    "credentials": {
        3679  +
        "access_key_id": "AKIDEXAMPLE",
        3680  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3681  +
    },
        3682  +
    "expiration_in_seconds": 3600,
        3683  +
    "normalize": true,
        3684  +
    "region": "us-east-1",
        3685  +
    "service": "service",
        3686  +
    "sign_body": false,
        3687  +
    "timestamp": "2015-08-30T12:36:00Z"
        3688  +
}
              \
 No newline at end of file
 3044   3689   
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
 3045   3690   
new file mode 100644
 3046   3691   
index 0000000..69526cd
 3047         -
-- /dev/null
        3692  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 3048   3693   
@@ -0,0 +1,10 @@
        3694  +
GET
        3695  +
/
        3696  +
        3697  +
host:example.amazonaws.com
        3698  +
my-header1:value1 value2 value3
        3699  +
x-amz-date:20150830T123600Z
        3700  +
x-amz-region-set:us-east-1
        3701  +
        3702  +
host;my-header1;x-amz-date;x-amz-region-set
        3703  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3049   3704   
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
 3050   3705   
new file mode 100644
 3051   3706   
index 0000000..d51b4f3
 3052         -
-- /dev/null
        3707  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 3053   3708   
@@ -0,0 +1 @@
        3709  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 3054   3710   
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
 3055   3711   
new file mode 100644
 3056   3712   
index 0000000..8131420
 3057         -
-- /dev/null
        3713  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 3058   3714   
@@ -0,0 +1,9 @@
        3715  +
GET / HTTP/1.1
        3716  +
Host:example.amazonaws.com
        3717  +
My-Header1:value1
        3718  +
  value2
        3719  +
     value3
        3720  +
X-Amz-Date:20150830T123600Z
        3721  +
X-Amz-Region-Set:us-east-1
        3722  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        3723  +
 3059   3724   
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
 3060   3725   
new file mode 100644
 3061   3726   
index 0000000..e4d99fa
 3062         -
-- /dev/null
        3727  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 3063   3728   
@@ -0,0 +1,4 @@
        3729  +
AWS4-ECDSA-P256-SHA256
        3730  +
20150830T123600Z
        3731  +
20150830/service/aws4_request
        3732  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 3064   3733   
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
 3065   3734   
new file mode 100644
 3066   3735   
index 0000000..379dcb2
 3067         -
-- /dev/null
        3736  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 3068   3737   
@@ -0,0 +1,4 @@
        3738  +
{
        3739  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3740  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3741  +
}
 3069   3742   
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
 3070   3743   
new file mode 100644
 3071   3744   
index 0000000..3c4d52f
 3072         -
-- /dev/null
        3745  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 3073   3746   
@@ -0,0 +1,8 @@
        3747  +
GET
        3748  +
/
        3749  +
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
        3750  +
host:example.amazonaws.com
        3751  +
my-header1:value1 value2 value3
        3752  +
        3753  +
host;my-header1
        3754  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3074   3755   
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
 3075   3756   
new file mode 100644
 3076   3757   
index 0000000..4e63f9a
 3077         -
-- /dev/null
        3758  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 3078   3759   
@@ -0,0 +1 @@
        3760  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 3079   3761   
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
 3080   3762   
new file mode 100644
 3081   3763   
index 0000000..adf1f09
 3082         -
-- /dev/null
        3764  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 3083   3765   
@@ -0,0 +1,6 @@
        3766  +
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
        3767  +
Host:example.amazonaws.com
        3768  +
My-Header1:value1
        3769  +
  value2
        3770  +
     value3
        3771  +
 3084   3772   
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
 3085   3773   
new file mode 100644
 3086   3774   
index 0000000..e085407
 3087         -
-- /dev/null
        3775  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 3088   3776   
@@ -0,0 +1,4 @@
        3777  +
AWS4-ECDSA-P256-SHA256
        3778  +
20150830T123600Z
        3779  +
20150830/service/aws4_request
        3780  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 3089   3781   
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
 3090   3782   
new file mode 100644
 3091   3783   
index 0000000..b5026cd
 3092         -
-- /dev/null
        3784  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 3093   3785   
@@ -0,0 +1,5 @@
        3786  +
GET / HTTP/1.1
        3787  +
Host:example.amazonaws.com
        3788  +
My-Header1:value1
        3789  +
  value2
        3790  +
     value3
 3094   3791   
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
 3095   3792   
new file mode 100644
 3096   3793   
index 0000000..0468d80
 3097         -
-- /dev/null
        3794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 3098   3795   
@@ -0,0 +1,12 @@
        3796  +
{
        3797  +
    "credentials": {
        3798  +
        "access_key_id": "AKIDEXAMPLE",
        3799  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3800  +
    },
        3801  +
    "expiration_in_seconds": 3600,
        3802  +
    "normalize": true,
        3803  +
    "region": "us-east-1",
        3804  +
    "service": "service",
        3805  +
    "sign_body": false,
        3806  +
    "timestamp": "2015-08-30T12:36:00Z"
        3807  +
}
              \
 No newline at end of file
 3099   3808   
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
 3100   3809   
similarity index 99%
 3101   3810   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 3102   3811   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3103   3812   
index 9375193..533afdb 100644
 3104   3813   
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
 3105   3814   
new file mode 100644
 3106   3815   
index 0000000..057b426
 3107         -
-- /dev/null
        3816  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 3108   3817   
@@ -0,0 +1 @@
        3818  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 3109   3819   
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
 3110   3820   
new file mode 100644
 3111   3821   
index 0000000..4e4ccf0
 3112         -
-- /dev/null
        3822  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 3113   3823   
@@ -0,0 +1,10 @@
        3824  +
GET / HTTP/1.1
        3825  +
Host:example.amazonaws.com
        3826  +
My-Header1:value4
        3827  +
My-Header1:value1
        3828  +
My-Header1:value3
        3829  +
My-Header1:value2
        3830  +
X-Amz-Date:20150830T123600Z
        3831  +
X-Amz-Region-Set:us-east-1
        3832  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        3833  +
 3114   3834   
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
 3115   3835   
similarity index 99%
 3116   3836   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 3117   3837   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3118   3838   
index 6400baf..e68c952 100644
 3119   3839   
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
 3120   3840   
new file mode 100644
 3121   3841   
index 0000000..379dcb2
 3122         -
-- /dev/null
        3842  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 3123   3843   
@@ -0,0 +1,4 @@
        3844  +
{
        3845  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3846  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3847  +
}
 3124   3848   
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
 3125   3849   
similarity index 99%
 3126   3850   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 3127   3851   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3128   3852   
index ecf494a..68450fe 100644
 3129   3853   
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
 3130   3854   
new file mode 100644
 3131   3855   
index 0000000..9df2eb3
 3132         -
-- /dev/null
        3856  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 3133   3857   
@@ -0,0 +1 @@
        3858  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 3134   3859   
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
 3135   3860   
new file mode 100644
 3136   3861   
index 0000000..62f8cb7
 3137         -
-- /dev/null
        3862  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 3138   3863   
@@ -0,0 +1,7 @@
        3864  +
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
        3865  +
Host:example.amazonaws.com
        3866  +
My-Header1:value4
        3867  +
My-Header1:value1
        3868  +
My-Header1:value3
        3869  +
My-Header1:value2
        3870  +
 3139   3871   
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
 3140   3872   
similarity index 99%
 3141   3873   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 3142   3874   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3143   3875   
index b584179..2bcf7b1 100644
 3144   3876   
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
 3145   3877   
similarity index 80%
 3146   3878   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 3147   3879   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3148   3880   
index f7bd9e6..2c6f49d 100644
 3149         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        3881  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3150   3882   
@@ -1,7 +1,6 @@
 3151   3883   
GET / HTTP/1.1
 3152   3884   
Host:example.amazonaws.com
 3153   3885   
My-Header1:value4
 3154   3886   
My-Header1:value1
 3155   3887   
My-Header1:value3
 3156   3888   
My-Header1:value2
 3157         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3158   3889   
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
 3159   3890   
new file mode 100644
 3160   3891   
index 0000000..0468d80
 3161         -
-- /dev/null
        3892  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 3162   3893   
@@ -0,0 +1,12 @@
        3894  +
{
        3895  +
    "credentials": {
        3896  +
        "access_key_id": "AKIDEXAMPLE",
        3897  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3898  +
    },
        3899  +
    "expiration_in_seconds": 3600,
        3900  +
    "normalize": true,
        3901  +
    "region": "us-east-1",
        3902  +
    "service": "service",
        3903  +
    "sign_body": false,
        3904  +
    "timestamp": "2015-08-30T12:36:00Z"
        3905  +
}
              \
 No newline at end of file
 3163   3906   
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
 3164   3907   
similarity index 99%
 3165   3908   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 3166   3909   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3167   3910   
index e91e952..94b6be5 100644
 3168   3911   
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
 3169   3912   
new file mode 100644
 3170   3913   
index 0000000..bf8c3cb
 3171         -
-- /dev/null
        3914  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 3172   3915   
@@ -0,0 +1 @@
        3916  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 3173   3917   
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
 3174   3918   
new file mode 100644
 3175   3919   
index 0000000..f7f054d
 3176         -
-- /dev/null
        3920  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 3177   3921   
@@ -0,0 +1,8 @@
        3922  +
GET / HTTP/1.1
        3923  +
Host:example.amazonaws.com
        3924  +
My-Header1: value1
        3925  +
My-Header2: "a   b   c"
        3926  +
X-Amz-Date:20150830T123600Z
        3927  +
X-Amz-Region-Set:us-east-1
        3928  +
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
        3929  +
 3178   3930   
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
 3179   3931   
similarity index 99%
 3180   3932   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 3181   3933   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3182   3934   
index 0e407d8..a2c9c05 100644
 3183   3935   
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
 3184   3936   
new file mode 100644
 3185   3937   
index 0000000..379dcb2
 3186         -
-- /dev/null
        3938  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3187   3939   
@@ -0,0 +1,4 @@
        3940  +
{
        3941  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3942  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3943  +
}
 3188   3944   
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
 3189   3945   
similarity index 99%
 3190   3946   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 3191   3947   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3192   3948   
index 8a3b042..3a51150 100644
 3193   3949   
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
 3194   3950   
new file mode 100644
 3195   3951   
index 0000000..0033053
 3196         -
-- /dev/null
        3952  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3197   3953   
@@ -0,0 +1 @@
        3954  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 3198   3955   
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
 3199   3956   
new file mode 100644
 3200   3957   
index 0000000..1537888
 3201         -
-- /dev/null
        3958  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3202   3959   
@@ -0,0 +1,5 @@
        3960  +
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
        3961  +
Host:example.amazonaws.com
        3962  +
My-Header1: value1
        3963  +
My-Header2: "a   b   c"
        3964  +
 3203   3965   
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
 3204   3966   
similarity index 99%
 3205   3967   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 3206   3968   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3207   3969   
index 5eead25..633dc1f 100644
 3208   3970   
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
 3209   3971   
similarity index 75%
 3210   3972   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 3211   3973   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3212   3974   
index 901f36c..ad1ea98 100644
 3213         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        3975  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3214   3976   
@@ -1,5 +1,4 @@
 3215   3977   
GET / HTTP/1.1
 3216   3978   
Host:example.amazonaws.com
 3217   3979   
My-Header1: value1
 3218   3980   
My-Header2: "a   b   c"
 3219         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3220   3981   
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
 3221   3982   
new file mode 100644
 3222   3983   
index 0000000..0468d80
 3223         -
-- /dev/null
        3984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3224   3985   
@@ -0,0 +1,12 @@
        3986  +
{
        3987  +
    "credentials": {
        3988  +
        "access_key_id": "AKIDEXAMPLE",
        3989  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3990  +
    },
        3991  +
    "expiration_in_seconds": 3600,
        3992  +
    "normalize": true,
        3993  +
    "region": "us-east-1",
        3994  +
    "service": "service",
        3995  +
    "sign_body": false,
        3996  +
    "timestamp": "2015-08-30T12:36:00Z"
        3997  +
}
              \
 No newline at end of file
 3225   3998   
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
 3226   3999   
similarity index 99%
 3227   4000   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 3228   4001   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3229   4002   
index 47e7128..76db73d 100644
 3230   4003   
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
 3231   4004   
new file mode 100644
 3232   4005   
index 0000000..cbd6ae2
 3233         -
-- /dev/null
        4006  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3234   4007   
@@ -0,0 +1 @@
        4008  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 3235   4009   
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
 3236   4010   
new file mode 100644
 3237   4011   
index 0000000..a343fcf
 3238         -
-- /dev/null
        4012  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3239   4013   
@@ -0,0 +1,6 @@
        4014  +
GET /example/.. HTTP/1.1
        4015  +
Host:example.amazonaws.com
        4016  +
X-Amz-Date:20150830T123600Z
        4017  +
X-Amz-Region-Set:us-east-1
        4018  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        4019  +
 3240   4020   
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
 3241   4021   
similarity index 99%
 3242   4022   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 3243   4023   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3244   4024   
index 95d7219..600f1d8 100644
 3245   4025   
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
 3246   4026   
new file mode 100644
 3247   4027   
index 0000000..379dcb2
 3248         -
-- /dev/null
        4028  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3249   4029   
@@ -0,0 +1,4 @@
        4030  +
{
        4031  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4032  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4033  +
}
 3250   4034   
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
 3251   4035   
similarity index 99%
 3252   4036   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 3253   4037   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3254   4038   
index a34ea26..779c51c 100644
 3255   4039   
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
 3256   4040   
new file mode 100644
 3257   4041   
index 0000000..3cc88e6
 3258         -
-- /dev/null
        4042  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3259   4043   
@@ -0,0 +1 @@
        4044  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 3260   4045   
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
 3261   4046   
new file mode 100644
 3262   4047   
index 0000000..f68dde8
 3263         -
-- /dev/null
        4048  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3264   4049   
@@ -0,0 +1,3 @@
        4050  +
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
        4051  +
Host:example.amazonaws.com
        4052  +
 3265   4053   
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
 3266   4054   
similarity index 99%
 3267   4055   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 3268   4056   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3269   4057   
index 48f855c..6e29a7e 100644
 3270   4058   
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
 3271   4059   
similarity index 65%
 3272   4060   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 3273   4061   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3274   4062   
index 9d6d7ca..6aa9f99 100644
 3275         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        4063  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3276   4064   
@@ -1,3 +1,2 @@
 3277   4065   
GET /example/.. HTTP/1.1
 3278   4066   
Host:example.amazonaws.com
 3279         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3280   4067   
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
 3281   4068   
new file mode 100644
 3282   4069   
index 0000000..0468d80
 3283         -
-- /dev/null
        4070  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3284   4071   
@@ -0,0 +1,12 @@
        4072  +
{
        4073  +
    "credentials": {
        4074  +
        "access_key_id": "AKIDEXAMPLE",
        4075  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4076  +
    },
        4077  +
    "expiration_in_seconds": 3600,
        4078  +
    "normalize": true,
        4079  +
    "region": "us-east-1",
        4080  +
    "service": "service",
        4081  +
    "sign_body": false,
        4082  +
    "timestamp": "2015-08-30T12:36:00Z"
        4083  +
}
              \
 No newline at end of file
 3285   4084   
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
 3286   4085   
similarity index 99%
 3287   4086   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 3288   4087   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3289   4088   
index 47e7128..76db73d 100644
 3290   4089   
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
 3291   4090   
new file mode 100644
 3292   4091   
index 0000000..f7a7ebe
 3293         -
-- /dev/null
        4092  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3294   4093   
@@ -0,0 +1 @@
        4094  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 3295   4095   
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
 3296   4096   
new file mode 100644
 3297   4097   
index 0000000..9d2c50d
 3298         -
-- /dev/null
        4098  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3299   4099   
@@ -0,0 +1,6 @@
        4100  +
GET /example1/example2/../.. HTTP/1.1
        4101  +
Host:example.amazonaws.com
        4102  +
X-Amz-Date:20150830T123600Z
        4103  +
X-Amz-Region-Set:us-east-1
        4104  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        4105  +
 3300   4106   
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
 3301   4107   
similarity index 99%
 3302   4108   
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
 3303   4109   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3304   4110   
index 95d7219..600f1d8 100644
 3305   4111   
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
 3306   4112   
new file mode 100644
 3307   4113   
index 0000000..379dcb2
 3308         -
-- /dev/null
        4114  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3309   4115   
@@ -0,0 +1,4 @@
        4116  +
{
        4117  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4118  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4119  +
}
 3310   4120   
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
 3311   4121   
similarity index 99%
 3312   4122   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 3313   4123   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3314   4124   
index a34ea26..779c51c 100644
 3315   4125   
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
 3316   4126   
new file mode 100644
 3317   4127   
index 0000000..45ef286
 3318         -
-- /dev/null
        4128  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3319   4129   
@@ -0,0 +1 @@
        4130  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 3320   4131   
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
 3321   4132   
new file mode 100644
 3322   4133   
index 0000000..0d16f66
 3323         -
-- /dev/null
        4134  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3324   4135   
@@ -0,0 +1,3 @@
        4136  +
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
        4137  +
Host:example.amazonaws.com
        4138  +
 3325   4139   
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
 3326   4140   
similarity index 99%
 3327   4141   
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
 3328   4142   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3329   4143   
index 48f855c..6e29a7e 100644
 3330   4144   
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
 3331   4145   
similarity index 70%
 3332   4146   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 3333   4147   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3334   4148   
index cfd4e8b..a856c10 100644
 3335         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        4149  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3336   4150   
@@ -1,3 +1,2 @@
 3337   4151   
GET /example1/example2/../.. HTTP/1.1
 3338   4152   
Host:example.amazonaws.com
 3339         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3340   4153   
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
 3341   4154   
new file mode 100644
 3342   4155   
index 0000000..7bee5c7
 3343         -
-- /dev/null
        4156  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3344   4157   
@@ -0,0 +1,12 @@
        4158  +
{
        4159  +
    "credentials": {
        4160  +
        "access_key_id": "AKIDEXAMPLE",
        4161  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4162  +
    },
        4163  +
    "expiration_in_seconds": 3600,
        4164  +
    "normalize": false,
        4165  +
    "region": "us-east-1",
        4166  +
    "service": "service",
        4167  +
    "sign_body": false,
        4168  +
    "timestamp": "2015-08-30T12:36:00Z"
        4169  +
}
              \
 No newline at end of file
 3345   4170   
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
 3346   4171   
similarity index 99%
 3347   4172   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 3348   4173   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3349   4174   
index 5e1d1cf..e4e6d57 100644
 3350   4175   
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
 3351   4176   
new file mode 100644
 3352   4177   
index 0000000..2d1b47c
 3353         -
-- /dev/null
        4178  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3354   4179   
@@ -0,0 +1 @@
        4180  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 3355   4181   
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
 3356   4182   
new file mode 100644
 3357   4183   
index 0000000..7158179
 3358         -
-- /dev/null
        4184  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3359   4185   
@@ -0,0 +1,6 @@
        4186  +
GET /example1/example2/../.. HTTP/1.1
        4187  +
Host:example.amazonaws.com
        4188  +
X-Amz-Date:20150830T123600Z
        4189  +
X-Amz-Region-Set:us-east-1
        4190  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        4191  +
 3360   4192   
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
 3361   4193   
similarity index 99%
 3362   4194   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 3363   4195   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3364   4196   
index 1cca6cf..db60c8e 100644
 3365   4197   
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
 3366   4198   
new file mode 100644
 3367   4199   
index 0000000..379dcb2
 3368         -
-- /dev/null
        4200  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3369   4201   
@@ -0,0 +1,4 @@
        4202  +
{
        4203  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4204  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4205  +
}
 3370   4206   
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
 3371   4207   
similarity index 99%
 3372   4208   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 3373   4209   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3374   4210   
index 95dc104..0d963ba 100644
 3375   4211   
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
 3376   4212   
new file mode 100644
 3377   4213   
index 0000000..ae774e4
 3378         -
-- /dev/null
        4214  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3379   4215   
@@ -0,0 +1 @@
        4216  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 3380   4217   
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
 3381   4218   
new file mode 100644
 3382   4219   
index 0000000..be6b86e
 3383         -
-- /dev/null
        4220  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3384   4221   
@@ -0,0 +1,3 @@
        4222  +
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
        4223  +
Host:example.amazonaws.com
        4224  +
 3385   4225   
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
 3386   4226   
similarity index 99%
 3387   4227   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 3388   4228   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3389   4229   
index 50edce6..fcc70cd 100644
 3390   4230   
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
 3391   4231   
new file mode 100644
 3392   4232   
index 0000000..a856c10
 3393         -
-- /dev/null
        4233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3394   4234   
@@ -0,0 +1,2 @@
        4235  +
GET /example1/example2/../.. HTTP/1.1
        4236  +
Host:example.amazonaws.com
 3395   4237   
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
 3396   4238   
new file mode 100644
 3397   4239   
index 0000000..7bee5c7
 3398         -
-- /dev/null
        4240  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3399   4241   
@@ -0,0 +1,12 @@
        4242  +
{
        4243  +
    "credentials": {
        4244  +
        "access_key_id": "AKIDEXAMPLE",
        4245  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4246  +
    },
        4247  +
    "expiration_in_seconds": 3600,
        4248  +
    "normalize": false,
        4249  +
    "region": "us-east-1",
        4250  +
    "service": "service",
        4251  +
    "sign_body": false,
        4252  +
    "timestamp": "2015-08-30T12:36:00Z"
        4253  +
}
              \
 No newline at end of file
 3400   4254   
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
 3401   4255   
similarity index 99%
 3402   4256   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 3403   4257   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3404   4258   
index d6a0abe..22def1a 100644
 3405   4259   
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
 3406   4260   
new file mode 100644
 3407   4261   
index 0000000..9251bad
 3408         -
-- /dev/null
        4262  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 3409   4263   
@@ -0,0 +1 @@
        4264  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 3410   4265   
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
 3411   4266   
new file mode 100644
 3412   4267   
index 0000000..f1bb60f
 3413         -
-- /dev/null
        4268  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 3414   4269   
@@ -0,0 +1,6 @@
        4270  +
GET /example/.. HTTP/1.1
        4271  +
Host:example.amazonaws.com
        4272  +
X-Amz-Date:20150830T123600Z
        4273  +
X-Amz-Region-Set:us-east-1
        4274  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        4275  +
 3415   4276   
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
 3416   4277   
similarity index 99%
 3417   4278   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 3418   4279   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3419   4280   
index 4a34e93..5673a20 100644
 3420   4281   
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
 3421   4282   
new file mode 100644
 3422   4283   
index 0000000..379dcb2
 3423         -
-- /dev/null
        4284  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 3424   4285   
@@ -0,0 +1,4 @@
        4286  +
{
        4287  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4288  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4289  +
}
 3425   4290   
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
 3426   4291   
similarity index 99%
 3427   4292   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 3428   4293   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3429   4294   
index b1d123e..a1c22e0 100644
 3430   4295   
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
 3431   4296   
new file mode 100644
 3432   4297   
index 0000000..9f0f686
 3433         -
-- /dev/null
        4298  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 3434   4299   
@@ -0,0 +1 @@
        4300  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 3435   4301   
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
 3436   4302   
new file mode 100644
 3437   4303   
index 0000000..d1d451a
 3438         -
-- /dev/null
        4304  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 3439   4305   
@@ -0,0 +1,3 @@
        4306  +
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
        4307  +
Host:example.amazonaws.com
        4308  +
 3440   4309   
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
 3441   4310   
similarity index 99%
 3442   4311   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 3443   4312   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3444   4313   
index a17f5ab..81b41e8 100644
 3445   4314   
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
 3446   4315   
new file mode 100644
 3447   4316   
index 0000000..6aa9f99
 3448         -
-- /dev/null
        4317  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 3449   4318   
@@ -0,0 +1,2 @@
        4319  +
GET /example/.. HTTP/1.1
        4320  +
Host:example.amazonaws.com
 3450   4321   
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
 3451   4322   
new file mode 100644
 3452   4323   
index 0000000..0468d80
 3453         -
-- /dev/null
        4324  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 3454   4325   
@@ -0,0 +1,12 @@
        4326  +
{
        4327  +
    "credentials": {
        4328  +
        "access_key_id": "AKIDEXAMPLE",
        4329  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4330  +
    },
        4331  +
    "expiration_in_seconds": 3600,
        4332  +
    "normalize": true,
        4333  +
    "region": "us-east-1",
        4334  +
    "service": "service",
        4335  +
    "sign_body": false,
        4336  +
    "timestamp": "2015-08-30T12:36:00Z"
        4337  +
}
              \
 No newline at end of file
 3455   4338   
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
 3456   4339   
similarity index 99%
 3457   4340   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 3458   4341   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3459   4342   
index 47e7128..76db73d 100644
 3460   4343   
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
 3461   4344   
new file mode 100644
 3462   4345   
index 0000000..ca6e84e
 3463         -
-- /dev/null
        4346  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 3464   4347   
@@ -0,0 +1 @@
        4348  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 3465   4349   
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
 3466   4350   
new file mode 100644
 3467   4351   
index 0000000..a7c764c
 3468         -
-- /dev/null
        4352  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 3469   4353   
@@ -0,0 +1,6 @@
        4354  +
GET /./ HTTP/1.1
        4355  +
Host:example.amazonaws.com
        4356  +
X-Amz-Date:20150830T123600Z
        4357  +
X-Amz-Region-Set:us-east-1
        4358  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        4359  +
 3470   4360   
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
 3471   4361   
similarity index 99%
 3472   4362   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 3473   4363   
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
 3474   4364   
index 95d7219..600f1d8 100644
 3475   4365   
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
 3476   4366   
new file mode 100644
 3477   4367   
index 0000000..379dcb2
 3478         -
-- /dev/null
        4368  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 3479   4369   
@@ -0,0 +1,4 @@
        4370  +
{
        4371  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4372  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4373  +
}
 3480   4374   
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
 3481   4375   
similarity index 99%
 3482   4376   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 3483   4377   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3484   4378   
index a34ea26..779c51c 100644
 3485   4379   
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
 3486   4380   
new file mode 100644
 3487   4381   
index 0000000..4b6ed09
 3488         -
-- /dev/null
        4382  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 3489   4383   
@@ -0,0 +1 @@
        4384  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 3490   4385   
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
 3491   4386   
new file mode 100644
 3492   4387   
index 0000000..d6c7176
 3493         -
-- /dev/null
        4388  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 3494   4389   
@@ -0,0 +1,3 @@
        4390  +
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
        4391  +
Host:example.amazonaws.com
        4392  +
 3495   4393   
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
 3496   4394   
similarity index 99%
 3497   4395   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 3498   4396   
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
 3499   4397   
index 48f855c..6e29a7e 100644
 3500   4398   
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
 3501   4399   
similarity index 61%
 3502   4400   
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
 3503   4401   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3504   4402   
index f3537b7..2c5ff38 100644
 3505         -
-- 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
        4403  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3506   4404   
@@ -1,3 +1,2 @@
 3507   4405   
GET /./ HTTP/1.1
 3508   4406   
Host:example.amazonaws.com
 3509         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3510   4407   
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
 3511   4408   
new file mode 100644
 3512   4409   
index 0000000..7bee5c7
 3513         -
-- /dev/null
        4410  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 3514   4411   
@@ -0,0 +1,12 @@
        4412  +
{
        4413  +
    "credentials": {
        4414  +
        "access_key_id": "AKIDEXAMPLE",
        4415  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4416  +
    },
        4417  +
    "expiration_in_seconds": 3600,
        4418  +
    "normalize": false,
        4419  +
    "region": "us-east-1",
        4420  +
    "service": "service",
        4421  +
    "sign_body": false,
        4422  +
    "timestamp": "2015-08-30T12:36:00Z"
        4423  +
}
              \
 No newline at end of file
 3515   4424   
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
 3516   4425   
similarity index 99%
 3517   4426   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3518   4427   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3519   4428   
index d05303d..9257ac4 100644
 3520   4429   
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
 3521   4430   
new file mode 100644
 3522   4431   
index 0000000..2eb1aa5
 3523         -
-- /dev/null
        4432  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 3524   4433   
@@ -0,0 +1 @@
        4434  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 3525   4435   
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
 3526   4436   
new file mode 100644
 3527   4437   
index 0000000..df3b1da
 3528         -
-- /dev/null
        4438  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 3529   4439   
@@ -0,0 +1,6 @@
        4440  +
GET /./ HTTP/1.1
        4441  +
Host:example.amazonaws.com
        4442  +
X-Amz-Date:20150830T123600Z
        4443  +
X-Amz-Region-Set:us-east-1
        4444  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        4445  +
 3530   4446   
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
 3531   4447   
similarity index 99%
 3532   4448   
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
 3533   4449   
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
 3534   4450   
index e1bfb39..754b3ed 100644
 3535   4451   
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
 3536   4452   
new file mode 100644
 3537   4453   
index 0000000..379dcb2
 3538         -
-- /dev/null
        4454  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 3539   4455   
@@ -0,0 +1,4 @@
        4456  +
{
        4457  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4458  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4459  +
}
 3540   4460   
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
 3541   4461   
similarity index 99%
 3542   4462   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3543   4463   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3544   4464   
index f048d0f..c8edce3 100644
 3545   4465   
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
 3546   4466   
new file mode 100644
 3547   4467   
index 0000000..d3af3b8
 3548         -
-- /dev/null
        4468  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 3549   4469   
@@ -0,0 +1 @@
        4470  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 3550   4471   
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
 3551   4472   
new file mode 100644
 3552   4473   
index 0000000..eb38155
 3553         -
-- /dev/null
        4474  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 3554   4475   
@@ -0,0 +1,3 @@
        4476  +
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
        4477  +
Host:example.amazonaws.com
        4478  +
 3555   4479   
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
 3556   4480   
similarity index 99%
 3557   4481   
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
 3558   4482   
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
 3559   4483   
index bfcf245..4f20b8f 100644
 3560   4484   
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
 3561   4485   
new file mode 100644
 3562   4486   
index 0000000..2c5ff38
 3563         -
-- /dev/null
        4487  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 3564   4488   
@@ -0,0 +1,2 @@
        4489  +
GET /./ HTTP/1.1
        4490  +
Host:example.amazonaws.com
 3565   4491   
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
 3566   4492   
new file mode 100644
 3567   4493   
index 0000000..0468d80
 3568         -
-- /dev/null
        4494  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 3569   4495   
@@ -0,0 +1,12 @@
        4496  +
{
        4497  +
    "credentials": {
        4498  +
        "access_key_id": "AKIDEXAMPLE",
        4499  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4500  +
    },
        4501  +
    "expiration_in_seconds": 3600,
        4502  +
    "normalize": true,
        4503  +
    "region": "us-east-1",
        4504  +
    "service": "service",
        4505  +
    "sign_body": false,
        4506  +
    "timestamp": "2015-08-30T12:36:00Z"
        4507  +
}
              \
 No newline at end of file
 3570   4508   
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
 3571   4509   
similarity index 99%
 3572   4510   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 3573   4511   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 3574   4512   
index 47e7128..76db73d 100644
 3575   4513   
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
 3576   4514   
new file mode 100644
 3577   4515   
index 0000000..0c049ca
 3578         -
-- /dev/null
        4516  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 3579   4517   
@@ -0,0 +1 @@
        4518  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 3580   4519   
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
 3581   4520   
new file mode 100644
 3582   4521   
index 0000000..f4bb1e1
 3583         -
-- /dev/null
        4522  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 3584   4523   
@@ -0,0 +1,6 @@
        4524  +
GET // HTTP/1.1
        4525  +
Host:example.amazonaws.com
        4526  +
X-Amz-Date:20150830T123600Z
        4527  +
X-Amz-Region-Set:us-east-1
        4528  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        4529  +
 3585   4530   
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
 3586   4531   
similarity index 99%
 3587   4532   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 3588   4533   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 3589   4534   
index 95d7219..600f1d8 100644
 3590   4535   
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
 3591   4536   
new file mode 100644
 3592   4537   
index 0000000..379dcb2
 3593         -
-- /dev/null
        4538  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 3594   4539   
@@ -0,0 +1,4 @@
        4540  +
{
        4541  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4542  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4543  +
}
 3595   4544   
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
 3596   4545   
similarity index 99%
 3597   4546   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 3598   4547   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 3599   4548   
index a34ea26..779c51c 100644
 3600   4549   
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
 3601   4550   
new file mode 100644
 3602   4551   
index 0000000..ca52293
 3603         -
-- /dev/null
        4552  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 3604   4553   
@@ -0,0 +1 @@
        4554  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 3605   4555   
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
 3606   4556   
new file mode 100644
 3607   4557   
index 0000000..4a212a9
 3608         -
-- /dev/null
        4558  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 3609   4559   
@@ -0,0 +1,3 @@
        4560  +
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
        4561  +
Host:example.amazonaws.com
        4562  +
 3610   4563   
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
 3611   4564   
similarity index 99%
 3612   4565   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 3613   4566   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 3614   4567   
index 48f855c..6e29a7e 100644
 3615   4568   
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
 3616   4569   
similarity index 61%
 3617   4570   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 3618   4571   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3619   4572   
index ede8e3c..25bc21e 100644
 3620         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        4573  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3621   4574   
@@ -1,3 +1,2 @@
 3622   4575   
GET // HTTP/1.1
 3623   4576   
Host:example.amazonaws.com
 3624         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3625   4577   
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
 3626   4578   
new file mode 100644
 3627   4579   
index 0000000..0468d80
 3628         -
-- /dev/null
        4580  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 3629   4581   
@@ -0,0 +1,12 @@
        4582  +
{
        4583  +
    "credentials": {
        4584  +
        "access_key_id": "AKIDEXAMPLE",
        4585  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4586  +
    },
        4587  +
    "expiration_in_seconds": 3600,
        4588  +
    "normalize": true,
        4589  +
    "region": "us-east-1",
        4590  +
    "service": "service",
        4591  +
    "sign_body": false,
        4592  +
    "timestamp": "2015-08-30T12:36:00Z"
        4593  +
}
              \
 No newline at end of file
 3630   4594   
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
 3631   4595   
similarity index 99%
 3632   4596   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3633   4597   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3634   4598   
index 2e36c20..a51f1ba 100644
 3635   4599   
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
 3636   4600   
new file mode 100644
 3637   4601   
index 0000000..f5c871f
 3638         -
-- /dev/null
        4602  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 3639   4603   
@@ -0,0 +1 @@
        4604  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 3640   4605   
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
 3641   4606   
new file mode 100644
 3642   4607   
index 0000000..bda4718
 3643         -
-- /dev/null
        4608  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 3644   4609   
@@ -0,0 +1,6 @@
        4610  +
GET /./example HTTP/1.1
        4611  +
Host:example.amazonaws.com
        4612  +
X-Amz-Date:20150830T123600Z
        4613  +
X-Amz-Region-Set:us-east-1
        4614  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        4615  +
 3645   4616   
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
 3646   4617   
similarity index 99%
 3647   4618   
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
 3648   4619   
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
 3649   4620   
index cd30e8b..2ffe879 100644
 3650   4621   
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
 3651   4622   
new file mode 100644
 3652   4623   
index 0000000..379dcb2
 3653         -
-- /dev/null
        4624  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 3654   4625   
@@ -0,0 +1,4 @@
        4626  +
{
        4627  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4628  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4629  +
}
 3655   4630   
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
 3656   4631   
similarity index 99%
 3657   4632   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3658   4633   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3659   4634   
index 77cf28d..45151ea 100644
 3660   4635   
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
 3661   4636   
new file mode 100644
 3662   4637   
index 0000000..11ad7bf
 3663         -
-- /dev/null
        4638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 3664   4639   
@@ -0,0 +1 @@
        4640  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 3665   4641   
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
 3666   4642   
new file mode 100644
 3667   4643   
index 0000000..a7537b1
 3668         -
-- /dev/null
        4644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 3669   4645   
@@ -0,0 +1,3 @@
        4646  +
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
        4647  +
Host:example.amazonaws.com
        4648  +
 3670   4649   
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
 3671   4650   
similarity index 99%
 3672   4651   
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
 3673   4652   
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
 3674   4653   
index 49d9b24..b486672 100644
 3675   4654   
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
 3676   4655   
similarity index 65%
 3677   4656   
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
 3678   4657   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3679   4658   
index 3c91071..5d919c9 100644
 3680         -
-- 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
        4659  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3681   4660   
@@ -1,3 +1,2 @@
 3682   4661   
GET /./example HTTP/1.1
 3683   4662   
Host:example.amazonaws.com
 3684         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3685   4663   
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
 3686   4664   
new file mode 100644
 3687   4665   
index 0000000..7bee5c7
 3688         -
-- /dev/null
        4666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 3689   4667   
@@ -0,0 +1,12 @@
        4668  +
{
        4669  +
    "credentials": {
        4670  +
        "access_key_id": "AKIDEXAMPLE",
        4671  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4672  +
    },
        4673  +
    "expiration_in_seconds": 3600,
        4674  +
    "normalize": false,
        4675  +
    "region": "us-east-1",
        4676  +
    "service": "service",
        4677  +
    "sign_body": false,
        4678  +
    "timestamp": "2015-08-30T12:36:00Z"
        4679  +
}
              \
 No newline at end of file
 3690   4680   
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
 3691   4681   
similarity index 99%
 3692   4682   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3693   4683   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3694   4684   
index 4444842..2355a69 100644
 3695   4685   
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
 3696   4686   
new file mode 100644
 3697   4687   
index 0000000..9c8f737
 3698         -
-- /dev/null
        4688  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 3699   4689   
@@ -0,0 +1 @@
        4690  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 3700   4691   
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
 3701   4692   
new file mode 100644
 3702   4693   
index 0000000..aa5980d
 3703         -
-- /dev/null
        4694  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 3704   4695   
@@ -0,0 +1,6 @@
        4696  +
GET /./example HTTP/1.1
        4697  +
Host:example.amazonaws.com
        4698  +
X-Amz-Date:20150830T123600Z
        4699  +
X-Amz-Region-Set:us-east-1
        4700  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        4701  +
 3705   4702   
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
 3706   4703   
similarity index 99%
 3707   4704   
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
 3708   4705   
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
 3709   4706   
index cc63510..d056816 100644
 3710   4707   
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
 3711   4708   
new file mode 100644
 3712   4709   
index 0000000..379dcb2
 3713         -
-- /dev/null
        4710  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 3714   4711   
@@ -0,0 +1,4 @@
        4712  +
{
        4713  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4714  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4715  +
}
 3715   4716   
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
 3716   4717   
similarity index 99%
 3717   4718   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 3718   4719   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 3719   4720   
index ed2cb2d..df9928e 100644
 3720   4721   
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
 3721   4722   
new file mode 100644
 3722   4723   
index 0000000..bb4d86b
 3723         -
-- /dev/null
        4724  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 3724   4725   
@@ -0,0 +1 @@
        4726  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 3725   4727   
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
 3726   4728   
new file mode 100644
 3727   4729   
index 0000000..0061136
 3728         -
-- /dev/null
        4730  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 3729   4731   
@@ -0,0 +1,3 @@
        4732  +
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
        4733  +
Host:example.amazonaws.com
        4734  +
 3730   4735   
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
 3731   4736   
similarity index 99%
 3732   4737   
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
 3733   4738   
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
 3734   4739   
index c9f3b6d..418f2d6 100644
 3735   4740   
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
 3736   4741   
new file mode 100644
 3737   4742   
index 0000000..5d919c9
 3738         -
-- /dev/null
        4743  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 3739   4744   
@@ -0,0 +1,2 @@
        4745  +
GET /./example HTTP/1.1
        4746  +
Host:example.amazonaws.com
 3740   4747   
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
 3741   4748   
new file mode 100644
 3742   4749   
index 0000000..7bee5c7
 3743         -
-- /dev/null
        4750  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 3744   4751   
@@ -0,0 +1,12 @@
        4752  +
{
        4753  +
    "credentials": {
        4754  +
        "access_key_id": "AKIDEXAMPLE",
        4755  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4756  +
    },
        4757  +
    "expiration_in_seconds": 3600,
        4758  +
    "normalize": false,
        4759  +
    "region": "us-east-1",
        4760  +
    "service": "service",
        4761  +
    "sign_body": false,
        4762  +
    "timestamp": "2015-08-30T12:36:00Z"
        4763  +
}
              \
 No newline at end of file
 3745   4764   
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
 3746   4765   
similarity index 99%
 3747   4766   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 3748   4767   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 3749   4768   
index 8a4d33b..5f809da 100644
 3750   4769   
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
 3751   4770   
new file mode 100644
 3752   4771   
index 0000000..60179e9
 3753         -
-- /dev/null
        4772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 3754   4773   
@@ -0,0 +1 @@
        4774  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 3755   4775   
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
 3756   4776   
new file mode 100644
 3757   4777   
index 0000000..72bf1b7
 3758         -
-- /dev/null
        4778  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 3759   4779   
@@ -0,0 +1,6 @@
        4780  +
GET // HTTP/1.1
        4781  +
Host:example.amazonaws.com
        4782  +
X-Amz-Date:20150830T123600Z
        4783  +
X-Amz-Region-Set:us-east-1
        4784  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        4785  +
 3760   4786   
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
 3761   4787   
similarity index 99%
 3762   4788   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 3763   4789   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 3764   4790   
index 874c01c..2b3bf67 100644
 3765   4791   
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
 3766   4792   
new file mode 100644
 3767   4793   
index 0000000..379dcb2
 3768         -
-- /dev/null
        4794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 3769   4795   
@@ -0,0 +1,4 @@
        4796  +
{
        4797  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4798  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4799  +
}
 3770   4800   
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
 3771   4801   
similarity index 99%
 3772   4802   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 3773   4803   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 3774   4804   
index 81d7b0b..d10ad29 100644
 3775   4805   
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
 3776   4806   
new file mode 100644
 3777   4807   
index 0000000..d9bd824
 3778         -
-- /dev/null
        4808  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 3779   4809   
@@ -0,0 +1 @@
        4810  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 3780   4811   
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
 3781   4812   
new file mode 100644
 3782   4813   
index 0000000..19d1d46
 3783         -
-- /dev/null
        4814  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 3784   4815   
@@ -0,0 +1,3 @@
        4816  +
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
        4817  +
Host:example.amazonaws.com
        4818  +
 3785   4819   
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
 3786   4820   
similarity index 99%
 3787   4821   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 3788   4822   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 3789   4823   
index 17e5279..24c8a5e 100644
 3790   4824   
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
 3791   4825   
new file mode 100644
 3792   4826   
index 0000000..25bc21e
 3793         -
-- /dev/null
        4827  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 3794   4828   
@@ -0,0 +1,2 @@
        4829  +
GET // HTTP/1.1
        4830  +
Host:example.amazonaws.com
 3795   4831   
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
 3796   4832   
new file mode 100644
 3797   4833   
index 0000000..0468d80
 3798         -
-- /dev/null
        4834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 3799   4835   
@@ -0,0 +1,12 @@
        4836  +
{
        4837  +
    "credentials": {
        4838  +
        "access_key_id": "AKIDEXAMPLE",
        4839  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4840  +
    },
        4841  +
    "expiration_in_seconds": 3600,
        4842  +
    "normalize": true,
        4843  +
    "region": "us-east-1",
        4844  +
    "service": "service",
        4845  +
    "sign_body": false,
        4846  +
    "timestamp": "2015-08-30T12:36:00Z"
        4847  +
}
              \
 No newline at end of file
 3800   4848   
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
 3801   4849   
similarity index 99%
 3802   4850   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 3803   4851   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 3804   4852   
index fdf9c48..a8e9e02 100644
 3805   4853   
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
 3806   4854   
new file mode 100644
 3807   4855   
index 0000000..ffe1b60
 3808         -
-- /dev/null
        4856  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 3809   4857   
@@ -0,0 +1 @@
        4858  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 3810   4859   
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
 3811   4860   
new file mode 100644
 3812   4861   
index 0000000..3189f55
 3813         -
-- /dev/null
        4862  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 3814   4863   
@@ -0,0 +1,6 @@
        4864  +
GET //example// HTTP/1.1
        4865  +
Host:example.amazonaws.com
        4866  +
X-Amz-Date:20150830T123600Z
        4867  +
X-Amz-Region-Set:us-east-1
        4868  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        4869  +
 3815   4870   
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
 3816   4871   
similarity index 99%
 3817   4872   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 3818   4873   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 3819   4874   
index 8f9c95e..430020e 100644
 3820   4875   
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
 3821   4876   
new file mode 100644
 3822   4877   
index 0000000..379dcb2
 3823         -
-- /dev/null
        4878  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 3824   4879   
@@ -0,0 +1,4 @@
        4880  +
{
        4881  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4882  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4883  +
}
 3825   4884   
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
 3826   4885   
similarity index 99%
 3827   4886   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 3828   4887   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 3829   4888   
index 1046735..8d41e37 100644
 3830   4889   
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
 3831   4890   
new file mode 100644
 3832   4891   
index 0000000..93a0fa4
 3833         -
-- /dev/null
        4892  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 3834   4893   
@@ -0,0 +1 @@
        4894  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 3835   4895   
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
 3836   4896   
new file mode 100644
 3837   4897   
index 0000000..65c8cb6
 3838         -
-- /dev/null
        4898  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 3839   4899   
@@ -0,0 +1,3 @@
        4900  +
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
        4901  +
Host:example.amazonaws.com
        4902  +
 3840   4903   
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
 3841   4904   
similarity index 99%
 3842   4905   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 3843   4906   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 3844   4907   
index b293cc2..0f4c4c5 100644
 3845   4908   
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
 3846   4909   
similarity index 65%
 3847   4910   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 3848   4911   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 3849   4912   
index a4307ce..12e0931 100644
 3850         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        4913  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 3851   4914   
@@ -1,3 +1,2 @@
 3852   4915   
GET //example// HTTP/1.1
 3853   4916   
Host:example.amazonaws.com
 3854         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3855   4917   
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
 3856   4918   
new file mode 100644
 3857   4919   
index 0000000..7bee5c7
 3858         -
-- /dev/null
        4920  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 3859   4921   
@@ -0,0 +1,12 @@
        4922  +
{
        4923  +
    "credentials": {
        4924  +
        "access_key_id": "AKIDEXAMPLE",
        4925  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4926  +
    },
        4927  +
    "expiration_in_seconds": 3600,
        4928  +
    "normalize": false,
        4929  +
    "region": "us-east-1",
        4930  +
    "service": "service",
        4931  +
    "sign_body": false,
        4932  +
    "timestamp": "2015-08-30T12:36:00Z"
        4933  +
}
              \
 No newline at end of file
 3860   4934   
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
 3861   4935   
similarity index 99%
 3862   4936   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 3863   4937   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 3864   4938   
index a9c55f6..76f55ed 100644
 3865   4939   
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
 3866   4940   
new file mode 100644
 3867   4941   
index 0000000..de333b2
 3868         -
-- /dev/null
        4942  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 3869   4943   
@@ -0,0 +1 @@
        4944  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 3870   4945   
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
 3871   4946   
new file mode 100644
 3872   4947   
index 0000000..773ce63
 3873         -
-- /dev/null
        4948  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 3874   4949   
@@ -0,0 +1,6 @@
        4950  +
GET //example// HTTP/1.1
        4951  +
Host:example.amazonaws.com
        4952  +
X-Amz-Date:20150830T123600Z
        4953  +
X-Amz-Region-Set:us-east-1
        4954  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        4955  +
 3875   4956   
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
 3876   4957   
similarity index 99%
 3877   4958   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 3878   4959   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 3879   4960   
index 5c4c2cd..46c3265 100644
 3880   4961   
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
 3881   4962   
new file mode 100644
 3882   4963   
index 0000000..379dcb2
 3883         -
-- /dev/null
        4964  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 3884   4965   
@@ -0,0 +1,4 @@
        4966  +
{
        4967  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4968  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4969  +
}
 3885   4970   
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
 3886   4971   
similarity index 99%
 3887   4972   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 3888   4973   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 3889   4974   
index c878ab4..6047ccf 100644
 3890   4975   
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
 3891   4976   
new file mode 100644
 3892   4977   
index 0000000..d61fcd0
 3893         -
-- /dev/null
        4978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 3894   4979   
@@ -0,0 +1 @@
        4980  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 3895   4981   
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
 3896   4982   
new file mode 100644
 3897   4983   
index 0000000..3e37b5b
 3898         -
-- /dev/null
        4984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 3899   4985   
@@ -0,0 +1,3 @@
        4986  +
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
        4987  +
Host:example.amazonaws.com
        4988  +
 3900   4989   
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
 3901   4990   
similarity index 99%
 3902   4991   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 3903   4992   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 3904   4993   
index 5f59645..2537d28 100644
 3905   4994   
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
 3906   4995   
new file mode 100644
 3907   4996   
index 0000000..12e0931
 3908         -
-- /dev/null
        4997  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 3909   4998   
@@ -0,0 +1,2 @@
        4999  +
GET //example// HTTP/1.1
        5000  +
Host:example.amazonaws.com
 3910   5001   
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
 3911   5002   
new file mode 100644
 3912   5003   
index 0000000..0468d80
 3913         -
-- /dev/null
        5004  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 3914   5005   
@@ -0,0 +1,12 @@
        5006  +
{
        5007  +
    "credentials": {
        5008  +
        "access_key_id": "AKIDEXAMPLE",
        5009  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5010  +
    },
        5011  +
    "expiration_in_seconds": 3600,
        5012  +
    "normalize": true,
        5013  +
    "region": "us-east-1",
        5014  +
    "service": "service",
        5015  +
    "sign_body": false,
        5016  +
    "timestamp": "2015-08-30T12:36:00Z"
        5017  +
}
              \
 No newline at end of file
 3915   5018   
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
 3916   5019   
new file mode 100644
 3917   5020   
index 0000000..0b2b616
 3918         -
-- /dev/null
        5021  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 3919   5022   
@@ -0,0 +1,9 @@
        5023  +
GET
        5024  +
/example%20space/
        5025  +
        5026  +
host:example.amazonaws.com
        5027  +
x-amz-date:20150830T123600Z
        5028  +
x-amz-region-set:us-east-1
        5029  +
        5030  +
host;x-amz-date;x-amz-region-set
        5031  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3920   5032   
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
 3921   5033   
new file mode 100644
 3922   5034   
index 0000000..6e7841d
 3923         -
-- /dev/null
        5035  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 3924   5036   
@@ -0,0 +1 @@
        5037  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 3925   5038   
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
 3926   5039   
new file mode 100644
 3927   5040   
index 0000000..0969cd3
 3928         -
-- /dev/null
        5041  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 3929   5042   
@@ -0,0 +1,6 @@
        5043  +
GET /example space/ HTTP/1.1
        5044  +
Host:example.amazonaws.com
        5045  +
X-Amz-Date:20150830T123600Z
        5046  +
X-Amz-Region-Set:us-east-1
        5047  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        5048  +
 3930   5049   
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
 3931   5050   
new file mode 100644
 3932   5051   
index 0000000..ddae6e2
 3933         -
-- /dev/null
        5052  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 3934   5053   
@@ -0,0 +1,4 @@
        5054  +
AWS4-ECDSA-P256-SHA256
        5055  +
20150830T123600Z
        5056  +
20150830/service/aws4_request
        5057  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 3935   5058   
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
 3936   5059   
new file mode 100644
 3937   5060   
index 0000000..379dcb2
 3938         -
-- /dev/null
        5061  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 3939   5062   
@@ -0,0 +1,4 @@
        5063  +
{
        5064  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5065  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5066  +
}
 3940   5067   
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
 3941   5068   
new file mode 100644
 3942   5069   
index 0000000..a66b3cb
 3943         -
-- /dev/null
        5070  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 3944   5071   
@@ -0,0 +1,7 @@
        5072  +
GET
        5073  +
/example%20space/
        5074  +
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
        5075  +
host:example.amazonaws.com
        5076  +
        5077  +
host
        5078  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3945   5079   
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
 3946   5080   
new file mode 100644
 3947   5081   
index 0000000..b3253ae
 3948         -
-- /dev/null
        5082  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 3949   5083   
@@ -0,0 +1 @@
        5084  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 3950   5085   
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
 3951   5086   
new file mode 100644
 3952   5087   
index 0000000..9e335b2
 3953         -
-- /dev/null
        5088  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 3954   5089   
@@ -0,0 +1,3 @@
        5090  +
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
        5091  +
Host:example.amazonaws.com
        5092  +
 3955   5093   
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
 3956   5094   
new file mode 100644
 3957   5095   
index 0000000..b6ff6fb
 3958         -
-- /dev/null
        5096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 3959   5097   
@@ -0,0 +1,4 @@
        5098  +
AWS4-ECDSA-P256-SHA256
        5099  +
20150830T123600Z
        5100  +
20150830/service/aws4_request
        5101  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 3960   5102   
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
 3961   5103   
new file mode 100644
 3962   5104   
index 0000000..ab509ab
 3963         -
-- /dev/null
        5105  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 3964   5106   
@@ -0,0 +1,2 @@
        5107  +
GET /example space/ HTTP/1.1
        5108  +
Host:example.amazonaws.com
 3965   5109   
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
 3966   5110   
new file mode 100644
 3967   5111   
index 0000000..7bee5c7
 3968         -
-- /dev/null
        5112  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 3969   5113   
@@ -0,0 +1,12 @@
        5114  +
{
        5115  +
    "credentials": {
        5116  +
        "access_key_id": "AKIDEXAMPLE",
        5117  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5118  +
    },
        5119  +
    "expiration_in_seconds": 3600,
        5120  +
    "normalize": false,
        5121  +
    "region": "us-east-1",
        5122  +
    "service": "service",
        5123  +
    "sign_body": false,
        5124  +
    "timestamp": "2015-08-30T12:36:00Z"
        5125  +
}
              \
 No newline at end of file
 3970   5126   
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
 3971   5127   
new file mode 100644
 3972   5128   
index 0000000..0b2b616
 3973         -
-- /dev/null
        5129  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 3974   5130   
@@ -0,0 +1,9 @@
        5131  +
GET
        5132  +
/example%20space/
        5133  +
        5134  +
host:example.amazonaws.com
        5135  +
x-amz-date:20150830T123600Z
        5136  +
x-amz-region-set:us-east-1
        5137  +
        5138  +
host;x-amz-date;x-amz-region-set
        5139  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3975   5140   
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
 3976   5141   
new file mode 100644
 3977   5142   
index 0000000..e75ae08
 3978         -
-- /dev/null
        5143  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 3979   5144   
@@ -0,0 +1 @@
        5145  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 3980   5146   
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
 3981   5147   
new file mode 100644
 3982   5148   
index 0000000..cb089db
 3983         -
-- /dev/null
        5149  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 3984   5150   
@@ -0,0 +1,6 @@
        5151  +
GET /example space/ HTTP/1.1
        5152  +
Host:example.amazonaws.com
        5153  +
X-Amz-Date:20150830T123600Z
        5154  +
X-Amz-Region-Set:us-east-1
        5155  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        5156  +
 3985   5157   
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
 3986   5158   
new file mode 100644
 3987   5159   
index 0000000..ddae6e2
 3988         -
-- /dev/null
        5160  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 3989   5161   
@@ -0,0 +1,4 @@
        5162  +
AWS4-ECDSA-P256-SHA256
        5163  +
20150830T123600Z
        5164  +
20150830/service/aws4_request
        5165  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 3990   5166   
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
 3991   5167   
new file mode 100644
 3992   5168   
index 0000000..379dcb2
 3993         -
-- /dev/null
        5169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 3994   5170   
@@ -0,0 +1,4 @@
        5171  +
{
        5172  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5173  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5174  +
}
 3995   5175   
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
 3996   5176   
new file mode 100644
 3997   5177   
index 0000000..a66b3cb
 3998         -
-- /dev/null
        5178  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 3999   5179   
@@ -0,0 +1,7 @@
        5180  +
GET
        5181  +
/example%20space/
        5182  +
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
        5183  +
host:example.amazonaws.com
        5184  +
        5185  +
host
        5186  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4000   5187   
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
 4001   5188   
new file mode 100644
 4002   5189   
index 0000000..66a80c3
 4003         -
-- /dev/null
        5190  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 4004   5191   
@@ -0,0 +1 @@
        5192  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 4005   5193   
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
 4006   5194   
new file mode 100644
 4007   5195   
index 0000000..7d1b9d9
 4008         -
-- /dev/null
        5196  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 4009   5197   
@@ -0,0 +1,3 @@
        5198  +
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
        5199  +
Host:example.amazonaws.com
        5200  +
 4010   5201   
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
 4011   5202   
new file mode 100644
 4012   5203   
index 0000000..b6ff6fb
 4013         -
-- /dev/null
        5204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 4014   5205   
@@ -0,0 +1,4 @@
        5206  +
AWS4-ECDSA-P256-SHA256
        5207  +
20150830T123600Z
        5208  +
20150830/service/aws4_request
        5209  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4015   5210   
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
 4016   5211   
new file mode 100644
 4017   5212   
index 0000000..ab509ab
 4018         -
-- /dev/null
        5213  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 4019   5214   
@@ -0,0 +1,2 @@
        5215  +
GET /example space/ HTTP/1.1
        5216  +
Host:example.amazonaws.com
 4020   5217   
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
 4021   5218   
new file mode 100644
 4022   5219   
index 0000000..0468d80
 4023         -
-- /dev/null
        5220  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 4024   5221   
@@ -0,0 +1,12 @@
        5222  +
{
        5223  +
    "credentials": {
        5224  +
        "access_key_id": "AKIDEXAMPLE",
        5225  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5226  +
    },
        5227  +
    "expiration_in_seconds": 3600,
        5228  +
    "normalize": true,
        5229  +
    "region": "us-east-1",
        5230  +
    "service": "service",
        5231  +
    "sign_body": false,
        5232  +
    "timestamp": "2015-08-30T12:36:00Z"
        5233  +
}
              \
 No newline at end of file
 4025   5234   
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
 4026   5235   
similarity index 99%
 4027   5236   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 4028   5237   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4029   5238   
index b0db648..46d76bb 100644
 4030   5239   
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
 4031   5240   
new file mode 100644
 4032   5241   
index 0000000..53c0cb6
 4033         -
-- /dev/null
        5242  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 4034   5243   
@@ -0,0 +1 @@
        5244  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 4035   5245   
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
 4036   5246   
new file mode 100644
 4037   5247   
index 0000000..3bdb653
 4038         -
-- /dev/null
        5248  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 4039   5249   
@@ -0,0 +1,6 @@
        5250  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5251  +
Host:example.amazonaws.com
        5252  +
X-Amz-Date:20150830T123600Z
        5253  +
X-Amz-Region-Set:us-east-1
        5254  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        5255  +
 4040   5256   
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
 4041   5257   
similarity index 99%
 4042   5258   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 4043   5259   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4044   5260   
index 20c7cd6..3b30173 100644
 4045   5261   
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
 4046   5262   
new file mode 100644
 4047   5263   
index 0000000..379dcb2
 4048         -
-- /dev/null
        5264  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 4049   5265   
@@ -0,0 +1,4 @@
        5266  +
{
        5267  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5268  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5269  +
}
 4050   5270   
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
 4051   5271   
similarity index 99%
 4052   5272   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 4053   5273   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4054   5274   
index f9fb726..7e93f58 100644
 4055   5275   
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
 4056   5276   
new file mode 100644
 4057   5277   
index 0000000..48311a8
 4058         -
-- /dev/null
        5278  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 4059   5279   
@@ -0,0 +1 @@
        5280  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 4060   5281   
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
 4061   5282   
new file mode 100644
 4062   5283   
index 0000000..82da9be
 4063         -
-- /dev/null
        5284  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 4064   5285   
@@ -0,0 +1,3 @@
        5286  +
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
        5287  +
Host:example.amazonaws.com
        5288  +
 4065   5289   
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
 4066   5290   
similarity index 99%
 4067   5291   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 4068   5292   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4069   5293   
index ef06e89..4aab9a2 100644
 4070   5294   
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
 4071   5295   
similarity index 80%
 4072   5296   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 4073   5297   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4074   5298   
index da760cd..a149694 100644
 4075         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        5299  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4076   5300   
@@ -1,3 +1,2 @@
 4077   5301   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4078   5302   
Host:example.amazonaws.com
 4079         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4080   5303   
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
 4081   5304   
new file mode 100644
 4082   5305   
index 0000000..0468d80
 4083         -
-- /dev/null
        5306  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 4084   5307   
@@ -0,0 +1,12 @@
        5308  +
{
        5309  +
    "credentials": {
        5310  +
        "access_key_id": "AKIDEXAMPLE",
        5311  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5312  +
    },
        5313  +
    "expiration_in_seconds": 3600,
        5314  +
    "normalize": true,
        5315  +
    "region": "us-east-1",
        5316  +
    "service": "service",
        5317  +
    "sign_body": false,
        5318  +
    "timestamp": "2015-08-30T12:36:00Z"
        5319  +
}
              \
 No newline at end of file
 4085   5320   
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
 4086   5321   
new file mode 100644
 4087   5322   
index 0000000..0f1afe7
 4088         -
-- /dev/null
        5323  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 4089   5324   
@@ -0,0 +1,9 @@
        5325  +
GET
        5326  +
/%E1%88%B4
        5327  +
        5328  +
host:example.amazonaws.com
        5329  +
x-amz-date:20150830T123600Z
        5330  +
x-amz-region-set:us-east-1
        5331  +
        5332  +
host;x-amz-date;x-amz-region-set
        5333  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4090   5334   
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
 4091   5335   
new file mode 100644
 4092   5336   
index 0000000..4b9af6c
 4093         -
-- /dev/null
        5337  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 4094   5338   
@@ -0,0 +1 @@
        5339  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 4095   5340   
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
 4096   5341   
new file mode 100644
 4097   5342   
index 0000000..d42d7b3
 4098         -
-- /dev/null
        5343  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 4099   5344   
@@ -0,0 +1,6 @@
        5345  +
GET /ሴ HTTP/1.1
        5346  +
Host:example.amazonaws.com
        5347  +
X-Amz-Date:20150830T123600Z
        5348  +
X-Amz-Region-Set:us-east-1
        5349  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        5350  +
 4100   5351   
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
 4101   5352   
new file mode 100644
 4102   5353   
index 0000000..0827f62
 4103         -
-- /dev/null
        5354  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 4104   5355   
@@ -0,0 +1,4 @@
        5356  +
AWS4-ECDSA-P256-SHA256
        5357  +
20150830T123600Z
        5358  +
20150830/service/aws4_request
        5359  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 4105   5360   
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
 4106   5361   
new file mode 100644
 4107   5362   
index 0000000..379dcb2
 4108         -
-- /dev/null
        5363  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 4109   5364   
@@ -0,0 +1,4 @@
        5365  +
{
        5366  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5367  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5368  +
}
 4110   5369   
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
 4111   5370   
new file mode 100644
 4112   5371   
index 0000000..a41a2f8
 4113         -
-- /dev/null
        5372  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 4114   5373   
@@ -0,0 +1,7 @@
        5374  +
GET
        5375  +
/%E1%88%B4
        5376  +
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
        5377  +
host:example.amazonaws.com
        5378  +
        5379  +
host
        5380  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4115   5381   
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
 4116   5382   
new file mode 100644
 4117   5383   
index 0000000..a5c7f4f
 4118         -
-- /dev/null
        5384  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 4119   5385   
@@ -0,0 +1 @@
        5386  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 4120   5387   
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
 4121   5388   
new file mode 100644
 4122   5389   
index 0000000..492ed33
 4123         -
-- /dev/null
        5390  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 4124   5391   
@@ -0,0 +1,3 @@
        5392  +
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
        5393  +
Host:example.amazonaws.com
        5394  +
 4125   5395   
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
 4126   5396   
new file mode 100644
 4127   5397   
index 0000000..a93108f
 4128         -
-- /dev/null
        5398  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 4129   5399   
@@ -0,0 +1,4 @@
        5400  +
AWS4-ECDSA-P256-SHA256
        5401  +
20150830T123600Z
        5402  +
20150830/service/aws4_request
        5403  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 4130   5404   
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
 4131   5405   
new file mode 100644
 4132   5406   
index 0000000..9e273f6
 4133         -
-- /dev/null
        5407  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 4134   5408   
@@ -0,0 +1,2 @@
        5409  +
GET /ሴ HTTP/1.1
        5410  +
Host:example.amazonaws.com
 4135   5411   
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
 4136   5412   
new file mode 100644
 4137   5413   
index 0000000..0468d80
 4138         -
-- /dev/null
        5414  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 4139   5415   
@@ -0,0 +1,12 @@
        5416  +
{
        5417  +
    "credentials": {
        5418  +
        "access_key_id": "AKIDEXAMPLE",
        5419  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5420  +
    },
        5421  +
    "expiration_in_seconds": 3600,
        5422  +
    "normalize": true,
        5423  +
    "region": "us-east-1",
        5424  +
    "service": "service",
        5425  +
    "sign_body": false,
        5426  +
    "timestamp": "2015-08-30T12:36:00Z"
        5427  +
}
              \
 No newline at end of file
 4140   5428   
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
 4141   5429   
similarity index 99%
 4142   5430   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 4143   5431   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4144   5432   
index bb9d4bf..edc0bb4 100644
 4145   5433   
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
 4146   5434   
new file mode 100644
 4147   5435   
index 0000000..ee9a272
 4148         -
-- /dev/null
        5436  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 4149   5437   
@@ -0,0 +1 @@
        5438  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 4150   5439   
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
 4151   5440   
new file mode 100644
 4152   5441   
index 0000000..2090343
 4153         -
-- /dev/null
        5442  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 4154   5443   
@@ -0,0 +1,6 @@
        5444  +
GET /?Param1=value1 HTTP/1.1
        5445  +
Host:example.amazonaws.com
        5446  +
X-Amz-Date:20150830T123600Z
        5447  +
X-Amz-Region-Set:us-east-1
        5448  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        5449  +
 4155   5450   
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
 4156   5451   
similarity index 99%
 4157   5452   
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
 4158   5453   
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
 4159   5454   
index a176f1d..06ed74f 100644
 4160   5455   
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
 4161   5456   
new file mode 100644
 4162   5457   
index 0000000..379dcb2
 4163         -
-- /dev/null
        5458  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 4164   5459   
@@ -0,0 +1,4 @@
        5460  +
{
        5461  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5462  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5463  +
}
 4165   5464   
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
 4166   5465   
similarity index 99%
 4167   5466   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 4168   5467   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4169   5468   
index 344384b..a875d70 100644
 4170   5469   
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
 4171   5470   
new file mode 100644
 4172   5471   
index 0000000..ef93624
 4173         -
-- /dev/null
        5472  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 4174   5473   
@@ -0,0 +1 @@
        5474  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 4175   5475   
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
 4176   5476   
new file mode 100644
 4177   5477   
index 0000000..92829f7
 4178         -
-- /dev/null
        5478  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 4179   5479   
@@ -0,0 +1,3 @@
        5480  +
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
        5481  +
Host:example.amazonaws.com
        5482  +
 4180   5483   
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
 4181   5484   
similarity index 99%
 4182   5485   
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
 4183   5486   
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
 4184   5487   
index b625052..4ff9191 100644
 4185   5488   
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
 4186   5489   
similarity index 67%
 4187   5490   
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
 4188   5491   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4189   5492   
index 970d0a0..f4a03bb 100644
 4190         -
-- 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
        5493  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4191   5494   
@@ -1,3 +1,2 @@
 4192   5495   
GET /?Param1=value1 HTTP/1.1
 4193   5496   
Host:example.amazonaws.com
 4194         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4195   5497   
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
 4196   5498   
new file mode 100644
 4197   5499   
index 0000000..0468d80
 4198         -
-- /dev/null
        5500  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 4199   5501   
@@ -0,0 +1,12 @@
        5502  +
{
        5503  +
    "credentials": {
        5504  +
        "access_key_id": "AKIDEXAMPLE",
        5505  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5506  +
    },
        5507  +
    "expiration_in_seconds": 3600,
        5508  +
    "normalize": true,
        5509  +
    "region": "us-east-1",
        5510  +
    "service": "service",
        5511  +
    "sign_body": false,
        5512  +
    "timestamp": "2015-08-30T12:36:00Z"
        5513  +
}
              \
 No newline at end of file
 4200   5514   
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
 4201   5515   
new file mode 100644
 4202   5516   
index 0000000..da07537
 4203         -
-- /dev/null
        5517  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 4204   5518   
@@ -0,0 +1,9 @@
        5519  +
GET
        5520  +
/
        5521  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        5522  +
host:example.amazonaws.com
        5523  +
x-amz-date:20150830T123600Z
        5524  +
x-amz-region-set:us-east-1
        5525  +
        5526  +
host;x-amz-date;x-amz-region-set
        5527  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4205   5528   
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
 4206   5529   
new file mode 100644
 4207   5530   
index 0000000..edb21e5
 4208         -
-- /dev/null
        5531  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 4209   5532   
@@ -0,0 +1 @@
        5533  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 4210   5534   
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
 4211   5535   
new file mode 100644
 4212   5536   
index 0000000..e60394c
 4213         -
-- /dev/null
        5537  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 4214   5538   
@@ -0,0 +1,6 @@
        5539  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5540  +
Host:example.amazonaws.com
        5541  +
X-Amz-Date:20150830T123600Z
        5542  +
X-Amz-Region-Set:us-east-1
        5543  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        5544  +
 4215   5545   
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
 4216   5546   
new file mode 100644
 4217   5547   
index 0000000..1dfc886
 4218         -
-- /dev/null
        5548  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 4219   5549   
@@ -0,0 +1,4 @@
        5550  +
AWS4-ECDSA-P256-SHA256
        5551  +
20150830T123600Z
        5552  +
20150830/service/aws4_request
        5553  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 4220   5554   
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
 4221   5555   
new file mode 100644
 4222   5556   
index 0000000..379dcb2
 4223         -
-- /dev/null
        5557  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 4224   5558   
@@ -0,0 +1,4 @@
        5559  +
{
        5560  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5561  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5562  +
}
 4225   5563   
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
 4226   5564   
new file mode 100644
 4227   5565   
index 0000000..e94dc0c
 4228         -
-- /dev/null
        5566  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 4229   5567   
@@ -0,0 +1,7 @@
        5568  +
GET
        5569  +
/
        5570  +
%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
        5571  +
host:example.amazonaws.com
        5572  +
        5573  +
host
        5574  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4230   5575   
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
 4231   5576   
new file mode 100644
 4232   5577   
index 0000000..7489437
 4233         -
-- /dev/null
        5578  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 4234   5579   
@@ -0,0 +1 @@
        5580  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 4235   5581   
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
 4236   5582   
new file mode 100644
 4237   5583   
index 0000000..90c0e73
 4238         -
-- /dev/null
        5584  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 4239   5585   
@@ -0,0 +1,3 @@
        5586  +
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
        5587  +
Host:example.amazonaws.com
        5588  +
 4240   5589   
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
 4241   5590   
new file mode 100644
 4242   5591   
index 0000000..ab8a711
 4243         -
-- /dev/null
        5592  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 4244   5593   
@@ -0,0 +1,4 @@
        5594  +
AWS4-ECDSA-P256-SHA256
        5595  +
20150830T123600Z
        5596  +
20150830/service/aws4_request
        5597  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 4245   5598   
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
 4246   5599   
new file mode 100644
 4247   5600   
index 0000000..368c6e3
 4248         -
-- /dev/null
        5601  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 4249   5602   
@@ -0,0 +1,2 @@
        5603  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5604  +
Host:example.amazonaws.com
 4250   5605   
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
 4251   5606   
new file mode 100644
 4252   5607   
index 0000000..0468d80
 4253         -
-- /dev/null
        5608  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 4254   5609   
@@ -0,0 +1,12 @@
        5610  +
{
        5611  +
    "credentials": {
        5612  +
        "access_key_id": "AKIDEXAMPLE",
        5613  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5614  +
    },
        5615  +
    "expiration_in_seconds": 3600,
        5616  +
    "normalize": true,
        5617  +
    "region": "us-east-1",
        5618  +
    "service": "service",
        5619  +
    "sign_body": false,
        5620  +
    "timestamp": "2015-08-30T12:36:00Z"
        5621  +
}
              \
 No newline at end of file
 4255   5622   
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
 4256   5623   
similarity index 99%
 4257   5624   
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
 4258   5625   
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
 4259   5626   
index 74f625a..3db56f7 100644
 4260   5627   
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
 4261   5628   
new file mode 100644
 4262   5629   
index 0000000..e6042bc
 4263         -
-- /dev/null
        5630  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 4264   5631   
@@ -0,0 +1 @@
        5632  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 4265   5633   
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
 4266   5634   
new file mode 100644
 4267   5635   
index 0000000..5505969
 4268         -
-- /dev/null
        5636  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 4269   5637   
@@ -0,0 +1,6 @@
        5638  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        5639  +
Host:example.amazonaws.com
        5640  +
X-Amz-Date:20150830T123600Z
        5641  +
X-Amz-Region-Set:us-east-1
        5642  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        5643  +
 4270   5644   
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
 4271   5645   
similarity index 99%
 4272   5646   
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
 4273   5647   
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
 4274   5648   
index 44873b7..e8f5e31 100644
 4275   5649   
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
 4276   5650   
new file mode 100644
 4277   5651   
index 0000000..379dcb2
 4278         -
-- /dev/null
        5652  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 4279   5653   
@@ -0,0 +1,4 @@
        5654  +
{
        5655  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5656  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5657  +
}
 4280   5658   
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
 4281   5659   
similarity index 99%
 4282   5660   
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
 4283   5661   
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
 4284   5662   
index 6d30727..3fe6a9f 100644
 4285   5663   
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
 4286   5664   
new file mode 100644
 4287   5665   
index 0000000..3f35de8
 4288         -
-- /dev/null
        5666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 4289   5667   
@@ -0,0 +1 @@
        5668  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 4290   5669   
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
 4291   5670   
new file mode 100644
 4292   5671   
index 0000000..30b336b
 4293         -
-- /dev/null
        5672  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 4294   5673   
@@ -0,0 +1,3 @@
        5674  +
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
        5675  +
Host:example.amazonaws.com
        5676  +
 4295   5677   
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
 4296   5678   
similarity index 99%
 4297   5679   
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
 4298   5680   
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
 4299   5681   
index 99d0510..7f0565f 100644
 4300   5682   
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
 4301   5683   
similarity index 100%
 4302   5684   
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
 4303   5685   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 4304   5686   
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
 4305   5687   
new file mode 100644
 4306   5688   
index 0000000..0468d80
 4307         -
-- /dev/null
        5689  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 4308   5690   
@@ -0,0 +1,12 @@
        5691  +
{
        5692  +
    "credentials": {
        5693  +
        "access_key_id": "AKIDEXAMPLE",
        5694  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5695  +
    },
        5696  +
    "expiration_in_seconds": 3600,
        5697  +
    "normalize": true,
        5698  +
    "region": "us-east-1",
        5699  +
    "service": "service",
        5700  +
    "sign_body": false,
        5701  +
    "timestamp": "2015-08-30T12:36:00Z"
        5702  +
}
              \
 No newline at end of file
 4309   5703   
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
 4310   5704   
similarity index 99%
 4311   5705   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 4312   5706   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 4313   5707   
index 816c862..cc4537a 100644
 4314   5708   
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
 4315   5709   
new file mode 100644
 4316   5710   
index 0000000..70d38c1
 4317         -
-- /dev/null
        5711  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 4318   5712   
@@ -0,0 +1 @@
        5713  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 4319   5714   
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
 4320   5715   
new file mode 100644
 4321   5716   
index 0000000..0647eea
 4322         -
-- /dev/null
        5717  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 4323   5718   
@@ -0,0 +1,6 @@
        5719  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5720  +
Host:example.amazonaws.com
        5721  +
X-Amz-Date:20150830T123600Z
        5722  +
X-Amz-Region-Set:us-east-1
        5723  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        5724  +
 4324   5725   
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
 4325   5726   
similarity index 99%
 4326   5727   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 4327   5728   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 4328   5729   
index 6129fc5..cc19d14 100644
 4329   5730   
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
 4330   5731   
new file mode 100644
 4331   5732   
index 0000000..379dcb2
 4332         -
-- /dev/null
        5733  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 4333   5734   
@@ -0,0 +1,4 @@
        5735  +
{
        5736  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5737  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5738  +
}
 4334   5739   
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
 4335   5740   
similarity index 99%
 4336   5741   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 4337   5742   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 4338   5743   
index b77ee9f..ed6a10e 100644
 4339   5744   
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
 4340   5745   
new file mode 100644
 4341   5746   
index 0000000..2ceba7b
 4342         -
-- /dev/null
        5747  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 4343   5748   
@@ -0,0 +1 @@
        5749  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 4344   5750   
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
 4345   5751   
new file mode 100644
 4346   5752   
index 0000000..0cd6d0a
 4347         -
-- /dev/null
        5753  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 4348   5754   
@@ -0,0 +1,3 @@
        5755  +
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
        5756  +
Host:example.amazonaws.com
        5757  +
 4349   5758   
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
 4350   5759   
similarity index 99%
 4351   5760   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 4352   5761   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 4353   5762   
index 1cfed7a..aad1421 100644
 4354   5763   
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
 4355   5764   
similarity index 86%
 4356   5765   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 4357   5766   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4358   5767   
index d2833b3..36b2fe3 100644
 4359         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        5768  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4360   5769   
@@ -1,3 +1,2 @@
 4361   5770   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4362   5771   
Host:example.amazonaws.com
 4363         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4364   5772   
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
 4365   5773   
new file mode 100644
 4366   5774   
index 0000000..0468d80
 4367         -
-- /dev/null
        5775  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 4368   5776   
@@ -0,0 +1,12 @@
        5777  +
{
        5778  +
    "credentials": {
        5779  +
        "access_key_id": "AKIDEXAMPLE",
        5780  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5781  +
    },
        5782  +
    "expiration_in_seconds": 3600,
        5783  +
    "normalize": true,
        5784  +
    "region": "us-east-1",
        5785  +
    "service": "service",
        5786  +
    "sign_body": false,
        5787  +
    "timestamp": "2015-08-30T12:36:00Z"
        5788  +
}
              \
 No newline at end of file
 4369   5789   
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
 4370   5790   
new file mode 100644
 4371   5791   
index 0000000..76db73d
 4372         -
-- /dev/null
        5792  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 4373   5793   
@@ -0,0 +1,9 @@
        5794  +
GET
        5795  +
/
        5796  +
        5797  +
host:example.amazonaws.com
        5798  +
x-amz-date:20150830T123600Z
        5799  +
x-amz-region-set:us-east-1
        5800  +
        5801  +
host;x-amz-date;x-amz-region-set
        5802  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4374   5803   
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
 4375   5804   
new file mode 100644
 4376   5805   
index 0000000..281cc62
 4377         -
-- /dev/null
        5806  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 4378   5807   
@@ -0,0 +1 @@
        5808  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 4379   5809   
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
 4380   5810   
new file mode 100644
 4381   5811   
index 0000000..cce9925
 4382         -
-- /dev/null
        5812  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 4383   5813   
@@ -0,0 +1,6 @@
        5814  +
GET / HTTP/1.1
        5815  +
Host:example.amazonaws.com
        5816  +
X-Amz-Date:20150830T123600Z
        5817  +
X-Amz-Region-Set:us-east-1
        5818  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        5819  +
 4384   5820   
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
 4385   5821   
new file mode 100644
 4386   5822   
index 0000000..600f1d8
 4387         -
-- /dev/null
        5823  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 4388   5824   
@@ -0,0 +1,4 @@
        5825  +
AWS4-ECDSA-P256-SHA256
        5826  +
20150830T123600Z
        5827  +
20150830/service/aws4_request
        5828  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4389   5829   
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
 4390   5830   
new file mode 100644
 4391   5831   
index 0000000..379dcb2
 4392         -
-- /dev/null
        5832  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 4393   5833   
@@ -0,0 +1,4 @@
        5834  +
{
        5835  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5836  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5837  +
}
 4394   5838   
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
 4395   5839   
new file mode 100644
 4396   5840   
index 0000000..779c51c
 4397         -
-- /dev/null
        5841  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 4398   5842   
@@ -0,0 +1,7 @@
        5843  +
GET
        5844  +
/
        5845  +
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
        5846  +
host:example.amazonaws.com
        5847  +
        5848  +
host
        5849  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4399   5850   
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
 4400   5851   
new file mode 100644
 4401   5852   
index 0000000..2979e5e
 4402         -
-- /dev/null
        5853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 4403   5854   
@@ -0,0 +1 @@
        5855  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 4404   5856   
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
 4405   5857   
new file mode 100644
 4406   5858   
index 0000000..1b3179c
 4407         -
-- /dev/null
        5859  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 4408   5860   
@@ -0,0 +1,3 @@
        5861  +
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
        5862  +
Host:example.amazonaws.com
        5863  +
 4409   5864   
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
 4410   5865   
new file mode 100644
 4411   5866   
index 0000000..6e29a7e
 4412         -
-- /dev/null
        5867  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 4413   5868   
@@ -0,0 +1,4 @@
        5869  +
AWS4-ECDSA-P256-SHA256
        5870  +
20150830T123600Z
        5871  +
20150830/service/aws4_request
        5872  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4414   5873   
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
 4415   5874   
similarity index 60%
 4416   5875   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 4417   5876   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4418   5877   
index 0f7a9bf..e659c3b 100644
 4419         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        5878  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4420   5879   
@@ -1,3 +1,2 @@
 4421   5880   
GET / HTTP/1.1
 4422   5881   
Host:example.amazonaws.com
 4423         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4424   5882   
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
 4425   5883   
new file mode 100644
 4426   5884   
index 0000000..0468d80
 4427         -
-- /dev/null
        5885  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 4428   5886   
@@ -0,0 +1,12 @@
        5887  +
{
        5888  +
    "credentials": {
        5889  +
        "access_key_id": "AKIDEXAMPLE",
        5890  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5891  +
    },
        5892  +
    "expiration_in_seconds": 3600,
        5893  +
    "normalize": true,
        5894  +
    "region": "us-east-1",
        5895  +
    "service": "service",
        5896  +
    "sign_body": false,
        5897  +
    "timestamp": "2015-08-30T12:36:00Z"
        5898  +
}
              \
 No newline at end of file
 4429   5899   
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
 4430   5900   
new file mode 100644
 4431   5901   
index 0000000..8841ddf
 4432         -
-- /dev/null
        5902  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 4433   5903   
@@ -0,0 +1,9 @@
        5904  +
GET
        5905  +
/
        5906  +
%E1%88%B4=bar
        5907  +
host:example.amazonaws.com
        5908  +
x-amz-date:20150830T123600Z
        5909  +
x-amz-region-set:us-east-1
        5910  +
        5911  +
host;x-amz-date;x-amz-region-set
        5912  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4434   5913   
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
 4435   5914   
new file mode 100644
 4436   5915   
index 0000000..1497add
 4437         -
-- /dev/null
        5916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 4438   5917   
@@ -0,0 +1 @@
        5918  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 4439   5919   
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
 4440   5920   
new file mode 100644
 4441   5921   
index 0000000..961bc10
 4442         -
-- /dev/null
        5922  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 4443   5923   
@@ -0,0 +1,6 @@
        5924  +
GET /?ሴ=bar HTTP/1.1
        5925  +
Host:example.amazonaws.com
        5926  +
X-Amz-Date:20150830T123600Z
        5927  +
X-Amz-Region-Set:us-east-1
        5928  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        5929  +
 4444   5930   
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
 4445   5931   
new file mode 100644
 4446   5932   
index 0000000..e78ed70
 4447         -
-- /dev/null
        5933  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 4448   5934   
@@ -0,0 +1,4 @@
        5935  +
AWS4-ECDSA-P256-SHA256
        5936  +
20150830T123600Z
        5937  +
20150830/service/aws4_request
        5938  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 4449   5939   
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
 4450   5940   
new file mode 100644
 4451   5941   
index 0000000..379dcb2
 4452         -
-- /dev/null
        5942  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 4453   5943   
@@ -0,0 +1,4 @@
        5944  +
{
        5945  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5946  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5947  +
}
 4454   5948   
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
 4455   5949   
new file mode 100644
 4456   5950   
index 0000000..6d5ae93
 4457         -
-- /dev/null
        5951  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 4458   5952   
@@ -0,0 +1,7 @@
        5953  +
GET
        5954  +
/
        5955  +
%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
        5956  +
host:example.amazonaws.com
        5957  +
        5958  +
host
        5959  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4459   5960   
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
 4460   5961   
new file mode 100644
 4461   5962   
index 0000000..92107f2
 4462         -
-- /dev/null
        5963  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 4463   5964   
@@ -0,0 +1 @@
        5965  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 4464   5966   
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
 4465   5967   
new file mode 100644
 4466   5968   
index 0000000..bb8a75b
 4467         -
-- /dev/null
        5969  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 4468   5970   
@@ -0,0 +1,3 @@
        5971  +
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
        5972  +
Host:example.amazonaws.com
        5973  +
 4469   5974   
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
 4470   5975   
new file mode 100644
 4471   5976   
index 0000000..9fa94c7
 4472         -
-- /dev/null
        5977  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 4473   5978   
@@ -0,0 +1,4 @@
        5979  +
AWS4-ECDSA-P256-SHA256
        5980  +
20150830T123600Z
        5981  +
20150830/service/aws4_request
        5982  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 4474   5983   
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
 4475   5984   
new file mode 100644
 4476   5985   
index 0000000..aff333a
 4477         -
-- /dev/null
        5986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 4478   5987   
@@ -0,0 +1,2 @@
        5988  +
GET /?ሴ=bar HTTP/1.1
        5989  +
Host:example.amazonaws.com
 4479   5990   
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
 4480   5991   
new file mode 100644
 4481   5992   
index 0000000..a334e18
 4482         -
-- /dev/null
        5993  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 4483   5994   
@@ -0,0 +1,13 @@
        5995  +
{
        5996  +
    "credentials": {
        5997  +
        "access_key_id": "AKIDEXAMPLE",
        5998  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        5999  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        6000  +
    },
        6001  +
    "expiration_in_seconds": 3600,
        6002  +
    "normalize": true,
        6003  +
    "region": "us-east-1",
        6004  +
    "service": "service",
        6005  +
    "sign_body": false,
        6006  +
    "timestamp": "2015-08-30T12:36:00Z"
        6007  +
}
              \
 No newline at end of file
 4484   6008   
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
 4485   6009   
similarity index 99%
 4486   6010   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 4487   6011   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 4488   6012   
index f14defd..0e9ad42 100644
 4489   6013   
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
 4490   6014   
new file mode 100644
 4491   6015   
index 0000000..a7673b5
 4492         -
-- /dev/null
        6016  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 4493   6017   
@@ -0,0 +1 @@
        6018  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 4494   6019   
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
 4495   6020   
new file mode 100644
 4496   6021   
index 0000000..ed16e76
 4497         -
-- /dev/null
        6022  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 4498   6023   
@@ -0,0 +1,7 @@
        6024  +
GET / HTTP/1.1
        6025  +
Host:example.amazonaws.com
        6026  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        6027  +
X-Amz-Date:20150830T123600Z
        6028  +
X-Amz-Region-Set:us-east-1
        6029  +
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
        6030  +
 4499   6031   
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
 4500   6032   
similarity index 99%
 4501   6033   
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
 4502   6034   
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
 4503   6035   
index 4edece5..6c1ec65 100644
 4504   6036   
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
 4505   6037   
new file mode 100644
 4506   6038   
index 0000000..379dcb2
 4507         -
-- /dev/null
        6039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 4508   6040   
@@ -0,0 +1,4 @@
        6041  +
{
        6042  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6043  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6044  +
}
 4509   6045   
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
 4510   6046   
similarity index 99%
 4511   6047   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 4512   6048   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 4513   6049   
index 7c042af..1876b42 100644
 4514   6050   
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
 4515   6051   
new file mode 100644
 4516   6052   
index 0000000..903dfb4
 4517         -
-- /dev/null
        6053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 4518   6054   
@@ -0,0 +1 @@
        6055  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 4519   6056   
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
 4520   6057   
new file mode 100644
 4521   6058   
index 0000000..bf1d246
 4522         -
-- /dev/null
        6059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 4523   6060   
@@ -0,0 +1,3 @@
        6061  +
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
        6062  +
Host:example.amazonaws.com
        6063  +
 4524   6064   
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
 4525   6065   
similarity index 99%
 4526   6066   
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
 4527   6067   
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
 4528   6068   
index 0fd066a..f1b1790 100644
 4529   6069   
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
 4530   6070   
similarity index 60%
 4531   6071   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 4532   6072   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 4533   6073   
index 0f7a9bf..e659c3b 100644
 4534         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        6074  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 4535   6075   
@@ -1,3 +1,2 @@
 4536   6076   
GET / HTTP/1.1
 4537   6077   
Host:example.amazonaws.com
 4538         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4539   6078   
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
 4540   6079   
new file mode 100644
 4541   6080   
index 0000000..76db73d
 4542         -
-- /dev/null
        6081  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 4543   6082   
@@ -0,0 +1,9 @@
        6083  +
GET
        6084  +
/
        6085  +
        6086  +
host:example.amazonaws.com
        6087  +
x-amz-date:20150830T123600Z
        6088  +
x-amz-region-set:us-east-1
        6089  +
        6090  +
host;x-amz-date;x-amz-region-set
        6091  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4544   6092   
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
 4545   6093   
new file mode 100644
 4546   6094   
index 0000000..0468d80
 4547         -
-- /dev/null
        6095  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 4548   6096   
@@ -0,0 +1,12 @@
        6097  +
{
        6098  +
    "credentials": {
        6099  +
        "access_key_id": "AKIDEXAMPLE",
        6100  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6101  +
    },
        6102  +
    "expiration_in_seconds": 3600,
        6103  +
    "normalize": true,
        6104  +
    "region": "us-east-1",
        6105  +
    "service": "service",
        6106  +
    "sign_body": false,
        6107  +
    "timestamp": "2015-08-30T12:36:00Z"
        6108  +
}
              \
 No newline at end of file
 4549   6109   
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
 4550   6110   
new file mode 100644
 4551   6111   
index 0000000..76db73d
 4552         -
-- /dev/null
        6112  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 4553   6113   
@@ -0,0 +1,9 @@
        6114  +
GET
        6115  +
/
        6116  +
        6117  +
host:example.amazonaws.com
        6118  +
x-amz-date:20150830T123600Z
        6119  +
x-amz-region-set:us-east-1
        6120  +
        6121  +
host;x-amz-date;x-amz-region-set
        6122  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4554   6123   
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
 4555   6124   
new file mode 100644
 4556   6125   
index 0000000..a96ff24
 4557         -
-- /dev/null
        6126  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 4558   6127   
@@ -0,0 +1 @@
        6128  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 4559   6129   
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
 4560   6130   
new file mode 100644
 4561   6131   
index 0000000..689078b
 4562         -
-- /dev/null
        6132  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 4563   6133   
@@ -0,0 +1,6 @@
        6134  +
GET / HTTP/1.1
        6135  +
Host:example.amazonaws.com
        6136  +
X-Amz-Date:20150830T123600Z
        6137  +
X-Amz-Region-Set:us-east-1
        6138  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        6139  +
 4564   6140   
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
 4565   6141   
new file mode 100644
 4566   6142   
index 0000000..600f1d8
 4567         -
-- /dev/null
        6143  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 4568   6144   
@@ -0,0 +1,4 @@
        6145  +
AWS4-ECDSA-P256-SHA256
        6146  +
20150830T123600Z
        6147  +
20150830/service/aws4_request
        6148  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4569   6149   
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
 4570   6150   
new file mode 100644
 4571   6151   
index 0000000..379dcb2
 4572         -
-- /dev/null
        6152  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 4573   6153   
@@ -0,0 +1,4 @@
        6154  +
{
        6155  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6156  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6157  +
}
 4574   6158   
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
 4575   6159   
new file mode 100644
 4576   6160   
index 0000000..779c51c
 4577         -
-- /dev/null
        6161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 4578   6162   
@@ -0,0 +1,7 @@
        6163  +
GET
        6164  +
/
        6165  +
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
        6166  +
host:example.amazonaws.com
        6167  +
        6168  +
host
        6169  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4579   6170   
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
 4580   6171   
new file mode 100644
 4581   6172   
index 0000000..cc42158
 4582         -
-- /dev/null
        6173  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 4583   6174   
@@ -0,0 +1 @@
        6175  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 4584   6176   
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
 4585   6177   
new file mode 100644
 4586   6178   
index 0000000..dc6d01d
 4587         -
-- /dev/null
        6179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 4588   6180   
@@ -0,0 +1,3 @@
        6181  +
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
        6182  +
Host:example.amazonaws.com
        6183  +
 4589   6184   
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
 4590   6185   
new file mode 100644
 4591   6186   
index 0000000..6e29a7e
 4592         -
-- /dev/null
        6187  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 4593   6188   
@@ -0,0 +1,4 @@
        6189  +
AWS4-ECDSA-P256-SHA256
        6190  +
20150830T123600Z
        6191  +
20150830/service/aws4_request
        6192  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4594   6193   
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
 4595   6194   
new file mode 100644
 4596   6195   
index 0000000..e659c3b
 4597         -
-- /dev/null
        6196  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 4598   6197   
@@ -0,0 +1,2 @@
        6198  +
GET / HTTP/1.1
        6199  +
Host:example.amazonaws.com
 4599   6200   
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
 4600   6201   
new file mode 100644
 4601   6202   
index 0000000..600f1d8
 4602         -
-- /dev/null
        6203  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 4603   6204   
@@ -0,0 +1,4 @@
        6205  +
AWS4-ECDSA-P256-SHA256
        6206  +
20150830T123600Z
        6207  +
20150830/service/aws4_request
        6208  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4604   6209   
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
 4605   6210   
new file mode 100644
 4606   6211   
index 0000000..0468d80
 4607         -
-- /dev/null
        6212  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 4608   6213   
@@ -0,0 +1,12 @@
        6214  +
{
        6215  +
    "credentials": {
        6216  +
        "access_key_id": "AKIDEXAMPLE",
        6217  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6218  +
    },
        6219  +
    "expiration_in_seconds": 3600,
        6220  +
    "normalize": true,
        6221  +
    "region": "us-east-1",
        6222  +
    "service": "service",
        6223  +
    "sign_body": false,
        6224  +
    "timestamp": "2015-08-30T12:36:00Z"
        6225  +
}
              \
 No newline at end of file
 4609   6226   
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
 4610   6227   
similarity index 99%
 4611   6228   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 4612   6229   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 4613   6230   
index a6942c1..e881ac7 100644
 4614   6231   
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
 4615   6232   
new file mode 100644
 4616   6233   
index 0000000..4210210
 4617         -
-- /dev/null
        6234  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 4618   6235   
@@ -0,0 +1 @@
        6236  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 4619   6237   
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
 4620   6238   
new file mode 100644
 4621   6239   
index 0000000..257b110
 4622         -
-- /dev/null
        6240  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 4623   6241   
@@ -0,0 +1,6 @@
        6242  +
POST / HTTP/1.1
        6243  +
Host:example.amazonaws.com
        6244  +
X-Amz-Date:20150830T123600Z
        6245  +
X-Amz-Region-Set:us-east-1
        6246  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        6247  +
 4624   6248   
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
 4625   6249   
similarity index 99%
 4626   6250   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 4627   6251   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 4628   6252   
index d5650cb..f8adf13 100644
 4629   6253   
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
 4630   6254   
new file mode 100644
 4631   6255   
index 0000000..379dcb2
 4632         -
-- /dev/null
        6256  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 4633   6257   
@@ -0,0 +1,4 @@
        6258  +
{
        6259  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6260  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6261  +
}
 4634   6262   
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
 4635   6263   
similarity index 99%
 4636   6264   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 4637   6265   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 4638   6266   
index e48ce07..5ea8e3c 100644
 4639   6267   
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
 4640   6268   
new file mode 100644
 4641   6269   
index 0000000..9e2069e
 4642         -
-- /dev/null
        6270  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 4643   6271   
@@ -0,0 +1 @@
        6272  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 4644   6273   
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
 4645   6274   
new file mode 100644
 4646   6275   
index 0000000..67f5d29
 4647         -
-- /dev/null
        6276  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 4648   6277   
@@ -0,0 +1,3 @@
        6278  +
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
        6279  +
Host:example.amazonaws.com
        6280  +
 4649   6281   
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
 4650   6282   
similarity index 99%
 4651   6283   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 4652   6284   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 4653   6285   
index 34e3382..711c162 100644
 4654   6286   
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
 4655   6287   
similarity index 61%
 4656   6288   
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
 4657   6289   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 4658   6290   
index 3dc4179..3f0a82a 100644
 4659         -
-- 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
        6291  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 4660   6292   
@@ -1,3 +1,2 @@
 4661   6293   
POST / HTTP/1.1
 4662   6294   
Host:example.amazonaws.com
 4663         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4664   6295   
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
 4665   6296   
new file mode 100644
 4666   6297   
index 0000000..0468d80
 4667         -
-- /dev/null
        6298  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 4668   6299   
@@ -0,0 +1,12 @@
        6300  +
{
        6301  +
    "credentials": {
        6302  +
        "access_key_id": "AKIDEXAMPLE",
        6303  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6304  +
    },
        6305  +
    "expiration_in_seconds": 3600,
        6306  +
    "normalize": true,
        6307  +
    "region": "us-east-1",
        6308  +
    "service": "service",
        6309  +
    "sign_body": false,
        6310  +
    "timestamp": "2015-08-30T12:36:00Z"
        6311  +
}
              \
 No newline at end of file
 4669   6312   
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
 4670   6313   
similarity index 99%
 4671   6314   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 4672   6315   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 4673   6316   
index a8e1727..2883822 100644
 4674   6317   
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
 4675   6318   
new file mode 100644
 4676   6319   
index 0000000..e3c2e6e
 4677         -
-- /dev/null
        6320  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 4678   6321   
@@ -0,0 +1 @@
        6322  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 4679   6323   
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
 4680   6324   
new file mode 100644
 4681   6325   
index 0000000..1d6e288
 4682         -
-- /dev/null
        6326  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 4683   6327   
@@ -0,0 +1,7 @@
        6328  +
POST / HTTP/1.1
        6329  +
Host:example.amazonaws.com
        6330  +
My-Header1:value1
        6331  +
X-Amz-Date:20150830T123600Z
        6332  +
X-Amz-Region-Set:us-east-1
        6333  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        6334  +
 4684   6335   
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
 4685   6336   
similarity index 99%
 4686   6337   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 4687   6338   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 4688   6339   
index f6e3e9b..7c5236a 100644
 4689   6340   
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
 4690   6341   
new file mode 100644
 4691   6342   
index 0000000..379dcb2
 4692         -
-- /dev/null
        6343  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 4693   6344   
@@ -0,0 +1,4 @@
        6345  +
{
        6346  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6347  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6348  +
}
 4694   6349   
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
 4695   6350   
similarity index 99%
 4696   6351   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 4697   6352   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 4698   6353   
index 0ae73e1..2cf3f29 100644
 4699   6354   
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
 4700   6355   
new file mode 100644
 4701   6356   
index 0000000..2a08401
 4702         -
-- /dev/null
        6357  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 4703   6358   
@@ -0,0 +1 @@
        6359  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 4704   6360   
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
 4705   6361   
new file mode 100644
 4706   6362   
index 0000000..8d2343f
 4707         -
-- /dev/null
        6363  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 4708   6364   
@@ -0,0 +1,4 @@
        6365  +
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
        6366  +
Host:example.amazonaws.com
        6367  +
My-Header1:value1
        6368  +
 4709   6369   
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
 4710   6370   
similarity index 99%
 4711   6371   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 4712   6372   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 4713   6373   
index 8cb96bf..2c4db7a 100644
 4714   6374   
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
 4715   6375   
similarity index 69%
 4716   6376   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 4717   6377   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 4718   6378   
index 0253f19..917720e 100644
 4719         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        6379  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 4720   6380   
@@ -1,4 +1,3 @@
 4721   6381   
POST / HTTP/1.1
 4722   6382   
Host:example.amazonaws.com
 4723   6383   
My-Header1:value1
 4724         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4725   6384   
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
 4726   6385   
new file mode 100644
 4727   6386   
index 0000000..0468d80
 4728         -
-- /dev/null
        6387  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 4729   6388   
@@ -0,0 +1,12 @@
        6389  +
{
        6390  +
    "credentials": {
        6391  +
        "access_key_id": "AKIDEXAMPLE",
        6392  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6393  +
    },
        6394  +
    "expiration_in_seconds": 3600,
        6395  +
    "normalize": true,
        6396  +
    "region": "us-east-1",
        6397  +
    "service": "service",
        6398  +
    "sign_body": false,
        6399  +
    "timestamp": "2015-08-30T12:36:00Z"
        6400  +
}
              \
 No newline at end of file
 4730   6401   
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
 4731   6402   
similarity index 99%
 4732   6403   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 4733   6404   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 4734   6405   
index 1dc3ef8..164e65c 100644
 4735   6406   
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
 4736   6407   
new file mode 100644
 4737   6408   
index 0000000..7072b0e
 4738         -
-- /dev/null
        6409  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 4739   6410   
@@ -0,0 +1 @@
        6411  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 4740   6412   
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
 4741   6413   
new file mode 100644
 4742   6414   
index 0000000..17f5e3e
 4743         -
-- /dev/null
        6415  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 4744   6416   
@@ -0,0 +1,7 @@
        6417  +
POST / HTTP/1.1
        6418  +
Host:example.amazonaws.com
        6419  +
My-Header1:VALUE1
        6420  +
X-Amz-Date:20150830T123600Z
        6421  +
X-Amz-Region-Set:us-east-1
        6422  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        6423  +
 4745   6424   
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
 4746   6425   
similarity index 99%
 4747   6426   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 4748   6427   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 4749   6428   
index 59c7e45..620f54e 100644
 4750   6429   
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
 4751   6430   
new file mode 100644
 4752   6431   
index 0000000..379dcb2
 4753         -
-- /dev/null
        6432  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 4754   6433   
@@ -0,0 +1,4 @@
        6434  +
{
        6435  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6436  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6437  +
}
 4755   6438   
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
 4756   6439   
similarity index 99%
 4757   6440   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 4758   6441   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 4759   6442   
index 377e6f3..23e0da3 100644
 4760   6443   
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
 4761   6444   
new file mode 100644
 4762   6445   
index 0000000..a18acb8
 4763         -
-- /dev/null
        6446  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 4764   6447   
@@ -0,0 +1 @@
        6448  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 4765   6449   
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
 4766   6450   
new file mode 100644
 4767   6451   
index 0000000..7cbdcfa
 4768         -
-- /dev/null
        6452  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 4769   6453   
@@ -0,0 +1,4 @@
        6454  +
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
        6455  +
Host:example.amazonaws.com
        6456  +
My-Header1:VALUE1
        6457  +
 4770   6458   
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
 4771   6459   
similarity index 99%
 4772   6460   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 4773   6461   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 4774   6462   
index 84a7afd..0c90627 100644
 4775   6463   
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
 4776   6464   
similarity index 69%
 4777   6465   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 4778   6466   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 4779   6467   
index 3f9987a..5f14c91 100644
 4780         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        6468  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 4781   6469   
@@ -1,4 +1,3 @@
 4782   6470   
POST / HTTP/1.1
 4783   6471   
Host:example.amazonaws.com
 4784   6472   
My-Header1:VALUE1
 4785         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4786   6473   
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
 4787   6474   
new file mode 100644
 4788   6475   
index 0000000..8f1d5ce
 4789         -
-- /dev/null
        6476  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 4790   6477   
@@ -0,0 +1,14 @@
        6478  +
{
        6479  +
    "credentials": {
        6480  +
        "access_key_id": "AKIDEXAMPLE",
        6481  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6482  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6483  +
    },
        6484  +
    "expiration_in_seconds": 3600,
        6485  +
    "normalize": true,
        6486  +
    "region": "us-east-1",
        6487  +
    "service": "service",
        6488  +
    "sign_body": false,
        6489  +
    "timestamp": "2015-08-30T12:36:00Z",
        6490  +
    "omit_session_token": true
        6491  +
}
 4791   6492   
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
 4792   6493   
similarity index 99%
 4793   6494   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 4794   6495   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 4795   6496   
index a6942c1..e881ac7 100644
 4796   6497   
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
 4797   6498   
new file mode 100644
 4798   6499   
index 0000000..9c5ecb9
 4799         -
-- /dev/null
        6500  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 4800   6501   
@@ -0,0 +1 @@
        6502  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 4801   6503   
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
 4802   6504   
similarity index 52%
 4803   6505   
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
 4804   6506   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 4805   6507   
index 9d91775..61b6527 100644
 4806         -
-- 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
        6508  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 4807   6509   
@@ -1,4 +1,7 @@
 4808   6510   
POST / HTTP/1.1
 4809   6511   
Host:example.amazonaws.com
 4810         -
X-Amz-Date:20150830T123600Z
 4811   6512   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6513  +
X-Amz-Date:20150830T123600Z
        6514  +
X-Amz-Region-Set:us-east-1
        6515  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        6516  +
 4812   6517   
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
 4813   6518   
similarity index 99%
 4814   6519   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 4815   6520   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 4816   6521   
index d5650cb..f8adf13 100644
 4817   6522   
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
 4818   6523   
new file mode 100644
 4819   6524   
index 0000000..379dcb2
 4820         -
-- /dev/null
        6525  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 4821   6526   
@@ -0,0 +1,4 @@
        6527  +
{
        6528  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6529  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6530  +
}
 4822   6531   
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
 4823   6532   
similarity index 99%
 4824   6533   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 4825   6534   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 4826   6535   
index e48ce07..5ea8e3c 100644
 4827   6536   
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
 4828   6537   
new file mode 100644
 4829   6538   
index 0000000..ff8823a
 4830         -
-- /dev/null
        6539  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 4831   6540   
@@ -0,0 +1 @@
        6541  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 4832   6542   
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
 4833   6543   
new file mode 100644
 4834   6544   
index 0000000..cfac41b
 4835         -
-- /dev/null
        6545  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 4836   6546   
@@ -0,0 +1,3 @@
        6547  +
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
        6548  +
Host:example.amazonaws.com
        6549  +
 4837   6550   
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
 4838   6551   
similarity index 99%
 4839   6552   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 4840   6553   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 4841   6554   
index 34e3382..711c162 100644
 4842   6555   
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
 4843   6556   
similarity index 61%
 4844   6557   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 4845   6558   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 4846   6559   
index 3dc4179..3f0a82a 100644
 4847         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        6560  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 4848   6561   
@@ -1,3 +1,2 @@
 4849   6562   
POST / HTTP/1.1
 4850   6563   
Host:example.amazonaws.com
 4851         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4852   6564   
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
 4853   6565   
new file mode 100644
 4854   6566   
index 0000000..5187392
 4855         -
-- /dev/null
        6567  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 4856   6568   
@@ -0,0 +1,14 @@
        6569  +
{
        6570  +
    "credentials": {
        6571  +
        "access_key_id": "AKIDEXAMPLE",
        6572  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6573  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6574  +
    },
        6575  +
    "expiration_in_seconds": 3600,
        6576  +
    "normalize": true,
        6577  +
    "region": "us-east-1",
        6578  +
    "service": "service",
        6579  +
    "sign_body": false,
        6580  +
    "timestamp": "2015-08-30T12:36:00Z",
        6581  +
    "omit_session_token": false
        6582  +
}
 4857   6583   
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
 4858   6584   
similarity index 99%
 4859   6585   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 4860   6586   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 4861   6587   
index dd408c8..e95924e 100644
 4862   6588   
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
 4863   6589   
new file mode 100644
 4864   6590   
index 0000000..1573f07
 4865         -
-- /dev/null
        6591  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 4866   6592   
@@ -0,0 +1 @@
        6593  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 4867   6594   
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
 4868   6595   
new file mode 100644
 4869   6596   
index 0000000..6ef9a08
 4870         -
-- /dev/null
        6597  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 4871   6598   
@@ -0,0 +1,7 @@
        6599  +
POST / HTTP/1.1
        6600  +
Host:example.amazonaws.com
        6601  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6602  +
X-Amz-Date:20150830T123600Z
        6603  +
X-Amz-Region-Set:us-east-1
        6604  +
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
        6605  +
 4872   6606   
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
 4873   6607   
similarity index 99%
 4874   6608   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 4875   6609   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 4876   6610   
index f352b54..3c3235f 100644
 4877   6611   
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
 4878   6612   
new file mode 100644
 4879   6613   
index 0000000..379dcb2
 4880         -
-- /dev/null
        6614  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 4881   6615   
@@ -0,0 +1,4 @@
        6616  +
{
        6617  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6618  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6619  +
}
 4882   6620   
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
 4883   6621   
similarity index 99%
 4884   6622   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 4885   6623   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 4886   6624   
index 832cdc0..63b7de5 100644
 4887   6625   
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
 4888   6626   
new file mode 100644
 4889   6627   
index 0000000..713f57c
 4890         -
-- /dev/null
        6628  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 4891   6629   
@@ -0,0 +1 @@
        6630  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 4892   6631   
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
 4893   6632   
new file mode 100644
 4894   6633   
index 0000000..32c3bb3
 4895         -
-- /dev/null
        6634  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 4896   6635   
@@ -0,0 +1,3 @@
        6636  +
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
        6637  +
Host:example.amazonaws.com
        6638  +
 4897   6639   
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
 4898   6640   
similarity index 99%
 4899   6641   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 4900   6642   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 4901   6643   
index d7f3668..b46cd8c 100644
 4902   6644   
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
 4903   6645   
similarity index 60%
 4904   6646   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 4905   6647   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 4906   6648   
index 8b5efc8..3f0a82a 100644
 4907         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        6649  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 4908   6650   
@@ -1,3 +1,2 @@
 4909   6651   
POST / HTTP/1.1
 4910   6652   
Host:example.amazonaws.com
 4911         -
X-Amz-Date:20150830T123600Z
 4912   6653   
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
 4913   6654   
new file mode 100644
 4914   6655   
index 0000000..0468d80
 4915         -
-- /dev/null
        6656  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 4916   6657   
@@ -0,0 +1,12 @@
        6658  +
{
        6659  +
    "credentials": {
        6660  +
        "access_key_id": "AKIDEXAMPLE",
        6661  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6662  +
    },
        6663  +
    "expiration_in_seconds": 3600,
        6664  +
    "normalize": true,
        6665  +
    "region": "us-east-1",
        6666  +
    "service": "service",
        6667  +
    "sign_body": false,
        6668  +
    "timestamp": "2015-08-30T12:36:00Z"
        6669  +
}
              \
 No newline at end of file
 4917   6670   
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
 4918   6671   
similarity index 99%
 4919   6672   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 4920   6673   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 4921   6674   
index 02af60f..34b8c11 100644
 4922   6675   
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
 4923   6676   
new file mode 100644
 4924   6677   
index 0000000..aac6427
 4925         -
-- /dev/null
        6678  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 4926   6679   
@@ -0,0 +1 @@
        6680  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 4927   6681   
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
 4928   6682   
new file mode 100644
 4929   6683   
index 0000000..a611436
 4930         -
-- /dev/null
        6684  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 4931   6685   
@@ -0,0 +1,6 @@
        6686  +
POST /?Param1=value1 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=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        6691  +
 4932   6692   
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
 4933   6693   
similarity index 99%
 4934   6694   
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
 4935   6695   
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
 4936   6696   
index 4256b4f..ad88dff 100644
 4937   6697   
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
 4938   6698   
new file mode 100644
 4939   6699   
index 0000000..379dcb2
 4940         -
-- /dev/null
        6700  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 4941   6701   
@@ -0,0 +1,4 @@
        6702  +
{
        6703  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6704  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6705  +
}
 4942   6706   
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
 4943   6707   
similarity index 99%
 4944   6708   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 4945   6709   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 4946   6710   
index fa84bbd..76d5ad6 100644
 4947   6711   
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
 4948   6712   
new file mode 100644
 4949   6713   
index 0000000..4cb1c94
 4950         -
-- /dev/null
        6714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 4951   6715   
@@ -0,0 +1 @@
        6716  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 4952   6717   
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
 4953   6718   
new file mode 100644
 4954   6719   
index 0000000..bd22b97
 4955         -
-- /dev/null
        6720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 4956   6721   
@@ -0,0 +1,3 @@
        6722  +
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
        6723  +
Host:example.amazonaws.com
        6724  +
 4957   6725   
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
 4958   6726   
similarity index 99%
 4959   6727   
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
 4960   6728   
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
 4961   6729   
index de270ef..8c9d319 100644
 4962   6730   
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
 4963   6731   
similarity index 67%
 4964   6732   
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
 4965   6733   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 4966   6734   
index 9157bc7..c9d6e5d 100644
 4967         -
-- 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
        6735  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 4968   6736   
@@ -1,3 +1,2 @@
 4969   6737   
POST /?Param1=value1 HTTP/1.1
 4970   6738   
Host:example.amazonaws.com
 4971         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4972   6739   
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
 4973   6740   
new file mode 100644
 4974   6741   
index 0000000..0468d80
 4975         -
-- /dev/null
        6742  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 4976   6743   
@@ -0,0 +1,12 @@
        6744  +
{
        6745  +
    "credentials": {
        6746  +
        "access_key_id": "AKIDEXAMPLE",
        6747  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6748  +
    },
        6749  +
    "expiration_in_seconds": 3600,
        6750  +
    "normalize": true,
        6751  +
    "region": "us-east-1",
        6752  +
    "service": "service",
        6753  +
    "sign_body": false,
        6754  +
    "timestamp": "2015-08-30T12:36:00Z"
        6755  +
}
              \
 No newline at end of file
 4977   6756   
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
 4978   6757   
similarity index 99%
 4979   6758   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 4980   6759   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 4981   6760   
index 02af60f..34b8c11 100644
 4982   6761   
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
 4983   6762   
new file mode 100644
 4984   6763   
index 0000000..34f75c8
 4985         -
-- /dev/null
        6764  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 4986   6765   
@@ -0,0 +1 @@
        6766  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 4987   6767   
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
 4988   6768   
new file mode 100644
 4989   6769   
index 0000000..c731408
 4990         -
-- /dev/null
        6770  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 4991   6771   
@@ -0,0 +1,6 @@
        6772  +
POST /?Param1=value1 HTTP/1.1
        6773  +
Host:example.amazonaws.com
        6774  +
X-Amz-Date:20150830T123600Z
        6775  +
X-Amz-Region-Set:us-east-1
        6776  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        6777  +
 4992   6778   
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
 4993   6779   
similarity index 99%
 4994   6780   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 4995   6781   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 4996   6782   
index 4256b4f..ad88dff 100644
 4997   6783   
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
 4998   6784   
new file mode 100644
 4999   6785   
index 0000000..379dcb2
 5000         -
-- /dev/null
        6786  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 5001   6787   
@@ -0,0 +1,4 @@
        6788  +
{
        6789  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6790  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6791  +
}
 5002   6792   
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
 5003   6793   
similarity index 99%
 5004   6794   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 5005   6795   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 5006   6796   
index fa84bbd..76d5ad6 100644
 5007   6797   
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
 5008   6798   
new file mode 100644
 5009   6799   
index 0000000..ae000d6
 5010         -
-- /dev/null
        6800  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 5011   6801   
@@ -0,0 +1 @@
        6802  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 5012   6803   
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
 5013   6804   
new file mode 100644
 5014   6805   
index 0000000..a868f7d
 5015         -
-- /dev/null
        6806  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 5016   6807   
@@ -0,0 +1,3 @@
        6808  +
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
        6809  +
Host:example.amazonaws.com
        6810  +
 5017   6811   
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
 5018   6812   
similarity index 99%
 5019   6813   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 5020   6814   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 5021   6815   
index de270ef..8c9d319 100644
 5022   6816   
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
 5023   6817   
similarity index 67%
 5024   6818   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 5025   6819   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 5026   6820   
index 9157bc7..c9d6e5d 100644
 5027         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        6821  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 5028   6822   
@@ -1,3 +1,2 @@
 5029   6823   
POST /?Param1=value1 HTTP/1.1
 5030   6824   
Host:example.amazonaws.com
 5031         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5032   6825   
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
 5033   6826   
new file mode 100644
 5034   6827   
index 0000000..0468d80
 5035         -
-- /dev/null
        6828  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 5036   6829   
@@ -0,0 +1,12 @@
        6830  +
{
        6831  +
    "credentials": {
        6832  +
        "access_key_id": "AKIDEXAMPLE",
        6833  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6834  +
    },
        6835  +
    "expiration_in_seconds": 3600,
        6836  +
    "normalize": true,
        6837  +
    "region": "us-east-1",
        6838  +
    "service": "service",
        6839  +
    "sign_body": false,
        6840  +
    "timestamp": "2015-08-30T12:36:00Z"
        6841  +
}
              \
 No newline at end of file
 5037   6842   
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
 5038   6843   
similarity index 99%
 5039   6844   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 5040   6845   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 5041   6846   
index a6942c1..e881ac7 100644
 5042   6847   
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
 5043   6848   
new file mode 100644
 5044   6849   
index 0000000..7c5e47b
 5045         -
-- /dev/null
        6850  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 5046   6851   
@@ -0,0 +1 @@
        6852  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 5047   6853   
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
 5048   6854   
new file mode 100644
 5049   6855   
index 0000000..c0e50a0
 5050         -
-- /dev/null
        6856  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 5051   6857   
@@ -0,0 +1,6 @@
        6858  +
POST / HTTP/1.1
        6859  +
Host:example.amazonaws.com
        6860  +
X-Amz-Date:20150830T123600Z
        6861  +
X-Amz-Region-Set:us-east-1
        6862  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        6863  +
 5052   6864   
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
 5053   6865   
similarity index 99%
 5054   6866   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 5055   6867   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 5056   6868   
index d5650cb..f8adf13 100644
 5057   6869   
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
 5058   6870   
new file mode 100644
 5059   6871   
index 0000000..379dcb2
 5060         -
-- /dev/null
        6872  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 5061   6873   
@@ -0,0 +1,4 @@
        6874  +
{
        6875  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6876  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6877  +
}
 5062   6878   
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
 5063   6879   
similarity index 99%
 5064   6880   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 5065   6881   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 5066   6882   
index e48ce07..5ea8e3c 100644
 5067   6883   
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
 5068   6884   
new file mode 100644
 5069   6885   
index 0000000..ea8e3b4
 5070         -
-- /dev/null
        6886  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 5071   6887   
@@ -0,0 +1 @@
        6888  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 5072   6889   
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
 5073   6890   
new file mode 100644
 5074   6891   
index 0000000..616973f
 5075         -
-- /dev/null
        6892  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 5076   6893   
@@ -0,0 +1,3 @@
        6894  +
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
        6895  +
Host:example.amazonaws.com
        6896  +
 5077   6897   
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
 5078   6898   
similarity index 99%
 5079   6899   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 5080   6900   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 5081   6901   
index 34e3382..711c162 100644
 5082   6902   
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
 5083   6903   
new file mode 100644
 5084   6904   
index 0000000..3f0a82a
 5085         -
-- /dev/null
        6905  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 5086   6906   
@@ -0,0 +1,2 @@
        6907  +
POST / HTTP/1.1
        6908  +
Host:example.amazonaws.com
 5087   6909   
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
 5088   6910   
new file mode 100644
 5089   6911   
index 0000000..0db1df1
 5090         -
-- /dev/null
        6912  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 5091   6913   
@@ -0,0 +1,12 @@
        6914  +
{
        6915  +
    "credentials": {
        6916  +
        "access_key_id": "AKIDEXAMPLE",
        6917  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6918  +
    },
        6919  +
    "expiration_in_seconds": 3600,
        6920  +
    "normalize": true,
        6921  +
    "region": "us-east-1",
        6922  +
    "service": "service",
        6923  +
    "sign_body": true,
        6924  +
    "timestamp": "2015-08-30T12:36:00Z"
        6925  +
}
              \
 No newline at end of file
 5092   6926   
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
 5093   6927   
similarity index 62%
 5094   6928   
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
 5095   6929   
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
 5096   6930   
index 05ab787..62639b2 100644
 5097         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        6931  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 5098   6932   
@@ -1,12 +1,12 @@
 5099   6933   
POST
 5100   6934   
/
 5101   6935   
 5102   6936   
content-length:13
 5103   6937   
content-type:application/x-www-form-urlencoded; charset=utf-8
 5104   6938   
host:example.amazonaws.com
 5105         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6939  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 5106   6940   
x-amz-date:20150830T123600Z
 5107   6941   
x-amz-region-set:us-east-1
 5108   6942   
 5109   6943   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 5110         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6944  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5111   6945   
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
 5112   6946   
new file mode 100644
 5113   6947   
index 0000000..006ec2e
 5114         -
-- /dev/null
        6948  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 5115   6949   
@@ -0,0 +1 @@
        6950  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 5116   6951   
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
 5117   6952   
new file mode 100644
 5118   6953   
index 0000000..87a11f2
 5119         -
-- /dev/null
        6954  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 5120   6955   
@@ -0,0 +1,10 @@
        6956  +
POST / HTTP/1.1
        6957  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        6958  +
Host:example.amazonaws.com
        6959  +
Content-Length:13
        6960  +
X-Amz-Date:20150830T123600Z
        6961  +
X-Amz-Region-Set:us-east-1
        6962  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        6963  +
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
        6964  +
        6965  +
Param1=value1
              \
 No newline at end of file
 5121   6966   
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
 5122   6967   
new file mode 100644
 5123   6968   
index 0000000..c047afb
 5124         -
-- /dev/null
        6969  +
++ 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
 5125   6970   
@@ -0,0 +1,4 @@
        6971  +
AWS4-ECDSA-P256-SHA256
        6972  +
20150830T123600Z
        6973  +
20150830/service/aws4_request
        6974  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 5126   6975   
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
 5127   6976   
new file mode 100644
 5128   6977   
index 0000000..379dcb2
 5129         -
-- /dev/null
        6978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 5130   6979   
@@ -0,0 +1,4 @@
        6980  +
{
        6981  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6982  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6983  +
}
 5131   6984   
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
 5132   6985   
similarity index 85%
 5133   6986   
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
 5134   6987   
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
 5135   6988   
index fcc454f..6933a8c 100644
 5136         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        6989  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 5137   6990   
@@ -1,9 +1,9 @@
 5138   6991   
POST
 5139   6992   
/
 5140   6993   
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
 5141   6994   
content-length:13
 5142   6995   
content-type:application/x-www-form-urlencoded; charset=utf-8
 5143   6996   
host:example.amazonaws.com
 5144   6997   
 5145   6998   
content-length;content-type;host
 5146         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6999  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5147   7000   
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
 5148   7001   
new file mode 100644
 5149   7002   
index 0000000..34a2e12
 5150         -
-- /dev/null
        7003  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 5151   7004   
@@ -0,0 +1 @@
        7005  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 5152   7006   
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
 5153   7007   
new file mode 100644
 5154   7008   
index 0000000..197b99e
 5155         -
-- /dev/null
        7009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 5156   7010   
@@ -0,0 +1,6 @@
        7011  +
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
        7012  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        7013  +
Host:example.amazonaws.com
        7014  +
Content-Length:13
        7015  +
        7016  +
Param1=value1
              \
 No newline at end of file
 5157   7017   
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
 5158   7018   
new file mode 100644
 5159   7019   
index 0000000..9d2bc74
 5160         -
-- /dev/null
        7020  +
++ 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
 5161   7021   
@@ -0,0 +1,4 @@
        7022  +
AWS4-ECDSA-P256-SHA256
        7023  +
20150830T123600Z
        7024  +
20150830/service/aws4_request
        7025  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 5162   7026   
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
 5163   7027   
similarity index 80%
 5164   7028   
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
 5165   7029   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 5166   7030   
index 36015f1..8289eaa 100644
 5167         -
-- 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
        7031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 5168   7032   
@@ -1,6 +1,6 @@
 5169   7033   
POST / HTTP/1.1
 5170   7034   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 5171   7035   
Host:example.amazonaws.com
 5172         -
X-Amz-Date:20150830T123600Z
        7036  +
Content-Length:13
 5173   7037   
 5174   7038   
Param1=value1
              \
 No newline at end of file
 5175   7039   
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
 5176   7040   
new file mode 100644
 5177   7041   
index 0000000..0db1df1
 5178         -
-- /dev/null
        7042  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 5179   7043   
@@ -0,0 +1,12 @@
        7044  +
{
        7045  +
    "credentials": {
        7046  +
        "access_key_id": "AKIDEXAMPLE",
        7047  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7048  +
    },
        7049  +
    "expiration_in_seconds": 3600,
        7050  +
    "normalize": true,
        7051  +
    "region": "us-east-1",
        7052  +
    "service": "service",
        7053  +
    "sign_body": true,
        7054  +
    "timestamp": "2015-08-30T12:36:00Z"
        7055  +
}
              \
 No newline at end of file
 5180   7056   
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
 5181   7057   
similarity index 61%
 5182   7058   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 5183   7059   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 5184   7060   
index 69009dc..797632b 100644
 5185         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        7061  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 5186   7062   
@@ -1,12 +1,12 @@
 5187   7063   
POST
 5188   7064   
/
 5189   7065   
 5190   7066   
content-length:13
 5191   7067   
content-type:application/x-www-form-urlencoded
 5192   7068   
host:example.amazonaws.com
 5193         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7069  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 5194   7070   
x-amz-date:20150830T123600Z
 5195   7071   
x-amz-region-set:us-east-1
 5196   7072   
 5197   7073   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 5198         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7074  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5199   7075   
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
 5200   7076   
new file mode 100644
 5201   7077   
index 0000000..f5a641c
 5202         -
-- /dev/null
        7078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 5203   7079   
@@ -0,0 +1 @@
        7080  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 5204   7081   
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
 5205   7082   
new file mode 100644
 5206   7083   
index 0000000..7bd94a7
 5207         -
-- /dev/null
        7084  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 5208   7085   
@@ -0,0 +1,10 @@
        7086  +
POST / HTTP/1.1
        7087  +
Content-Type:application/x-www-form-urlencoded
        7088  +
Host:example.amazonaws.com
        7089  +
Content-Length:13
        7090  +
X-Amz-Date:20150830T123600Z
        7091  +
X-Amz-Region-Set:us-east-1
        7092  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        7093  +
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
        7094  +
        7095  +
Param1=value1
              \
 No newline at end of file
 5209   7096   
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
 5210   7097   
new file mode 100644
 5211   7098   
index 0000000..8d25ba9
 5212         -
-- /dev/null
        7099  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 5213   7100   
@@ -0,0 +1,4 @@
        7101  +
AWS4-ECDSA-P256-SHA256
        7102  +
20150830T123600Z
        7103  +
20150830/service/aws4_request
        7104  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 5214   7105   
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
 5215   7106   
new file mode 100644
 5216   7107   
index 0000000..379dcb2
 5217         -
-- /dev/null
        7108  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 5218   7109   
@@ -0,0 +1,4 @@
        7110  +
{
        7111  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7112  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7113  +
}
 5219   7114   
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
 5220   7115   
similarity index 99%
 5221   7116   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 5222   7117   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 5223   7118   
index 9ed065b..563ff58 100644
 5224   7119   
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
 5225   7120   
new file mode 100644
 5226   7121   
index 0000000..0c77daf
 5227         -
-- /dev/null
        7122  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 5228   7123   
@@ -0,0 +1 @@
        7124  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 5229   7125   
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
 5230   7126   
new file mode 100644
 5231   7127   
index 0000000..71d6de9
 5232         -
-- /dev/null
        7128  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 5233   7129   
@@ -0,0 +1,6 @@
        7130  +
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
        7131  +
Content-Type:application/x-www-form-urlencoded
        7132  +
Host:example.amazonaws.com
        7133  +
Content-Length:13
        7134  +
        7135  +
Param1=value1
              \
 No newline at end of file
 5234   7136   
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
 5235   7137   
similarity index 99%
 5236   7138   
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
 5237   7139   
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
 5238   7140   
index bef3143..cc7a224 100644
 5239   7141   
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
 5240   7142   
new file mode 100644
 5241   7143   
index 0000000..760b2d3
 5242         -
-- /dev/null
        7144  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 5243   7145   
@@ -0,0 +1,6 @@
        7146  +
POST / HTTP/1.1
        7147  +
Content-Type:application/x-www-form-urlencoded
        7148  +
Host:example.amazonaws.com
        7149  +
Content-Length:13
        7150  +
        7151  +
Param1=value1
              \
 No newline at end of file
 5244   7152   
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
 5245   7153   
index 9bd636f..b53f33f 100644
 5246         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        7154  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 5247   7155   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 5248   7156   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 5249   7157   
        }
 5250   7158   
 5251   7159   
        if let SignatureValues::QueryParams(values) = values {
 5252   7160   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 5253   7161   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 5254   7162   
 5255   7163   
            #[cfg(feature = "sigv4a")]
 5256   7164   
            if let Some(regions) = values.region_set {
 5257   7165   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 5258   7166   
            }
 5259   7167   
 5260   7168   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 5261   7169   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 5262   7170   
            add_param(
 5263   7171   
                &mut params,
 5264   7172   
                param::X_AMZ_SIGNED_HEADERS,
 5265   7173   
                values.signed_headers.as_str(),
 5266   7174   
            );
 5267   7175   
 5268   7176   
            if let Some(security_token) = values.security_token {
 5269   7177   
                add_param(
 5270   7178   
                    &mut params,
 5271   7179   
                    settings
 5272   7180   
                        .session_token_name_override
 5273   7181   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 5274   7182   
                    security_token,
 5275   7183   
                );
 5276   7184   
            }
 5277   7185   
        }
 5278         -
        // Sort by param name, and then by param value
        7186  +
        7187  +
        // Sort on the _encoded_ key/value pairs
        7188  +
        let mut params: Vec<(String, String)> = params
        7189  +
            .into_iter()
        7190  +
            .map(|x| {
        7191  +
                use aws_smithy_http::query::fmt_string;
        7192  +
                let enc_k = fmt_string(&x.0);
        7193  +
                let enc_v = fmt_string(&x.1);
        7194  +
                (enc_k, enc_v)
        7195  +
            })
        7196  +
            .collect();
        7197  +
 5279   7198   
        params.sort();
 5280   7199   
 5281   7200   
        let mut query = QueryWriter::new(uri);
 5282   7201   
        query.clear_params();
 5283   7202   
        for (key, value) in params {
 5284         -
            query.insert(&key, &value);
        7203  +
            query.insert_encoded(&key, &value);
 5285   7204   
        }
 5286   7205   
 5287   7206   
        let query = query.build_query();
 5288   7207   
        if query.is_empty() {
 5289   7208   
            None
 5290   7209   
        } else {
 5291   7210   
            Some(query)
 5292   7211   
        }
 5293   7212   
    }
 5294   7213   
 5295   7214   
    fn insert_host_header(
 5296   7215   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 5297   7216   
        uri: &Uri,
 5298   7217   
    ) -> HeaderValue {
 5299   7218   
        match canonical_headers.get(&HOST) {
 5300   7219   
            Some(header) => header.clone(),
 5301   7220   
            None => {
 5302   7221   
                let port = uri.port();
 5303   7222   
                let scheme = uri.scheme();
 5304   7223   
                let authority = uri
 5305   7224   
                    .authority()
 5306   7225   
                    .expect("request uri authority must be set for signing")
 5307   7226   
                    .as_str();
 5308   7227   
                let host = uri
 5309   7228   
                    .host()
 5310   7229   
                    .expect("request uri host must be set for signing");
 5311   7230   
 5312   7231   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 5313   7232   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 5314   7233   
                // sent in the Host header (and Hyper strips default ports if they are present)
 5315   7234   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 5316   7235   
            service,
 5317   7236   
            hashed_creq,
 5318   7237   
            signature_version: SignatureVersion::V4a,
 5319   7238   
        }
 5320   7239   
    }
 5321   7240   
}
 5322   7241   
 5323   7242   
impl fmt::Display for StringToSign<'_> {
 5324   7243   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 5325   7244   
        write!(
 5326   7245   
            f,
 5327   7246   
            "{}\n{}\n{}\n{}",
 5328   7247   
            self.algorithm,
 5329   7248   
            format_date_time(self.time),
 5330   7249   
            match self.signature_version {
 5331   7250   
                SignatureVersion::V4 => self.scope.to_string(),
 5332   7251   
                SignatureVersion::V4a => self.scope.v4a_display(),
 5333   7252   
            },
 5334   7253   
            self.hashed_creq
 5335   7254   
        )
 5336   7255   
    }
 5337   7256   
}
 5338   7257   
 5339   7258   
#[cfg(test)]
 5340   7259   
mod tests {
 5341   7260   
    use crate::date_time::test_parsers::parse_date_time;
 5342   7261   
    use crate::http_request::canonical_request::{
 5343   7262   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 5344   7263   
    };
 5345   7264   
    use crate::http_request::test;
        7265  +
    use crate::http_request::test::SigningSuiteTest;
 5346   7266   
    use crate::http_request::{
 5347   7267   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 5348   7268   
        SigningParams, SigningSettings,
 5349   7269   
    };
 5350   7270   
    use crate::sign::v4;
 5351   7271   
    use crate::sign::v4::sha256_hex_string;
 5352   7272   
    use aws_credential_types::Credentials;
 5353   7273   
    use aws_smithy_http::query_writer::QueryWriter;
 5354   7274   
    use aws_smithy_runtime_api::client::identity::Identity;
 5355   7275   
    use http0::{HeaderValue, Uri};
 5356   7276   
    use pretty_assertions::assert_eq;
 5357   7277   
    use proptest::{prelude::*, proptest};
 5358   7278   
    use std::borrow::Cow;
 5359   7279   
    use std::time::Duration;
 5360   7280   
 5361   7281   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 5362   7282   
        v4::signing_params::Builder::default()
 5363   7283   
            .identity(identity)
 5364   7284   
            .region("test-region")
 5365   7285   
            .name("testservicename")
 5366   7286   
            .time(parse_date_time("20210511T154045Z").unwrap())
 5367   7287   
            .settings(settings)
 5368   7288   
            .build()
 5369   7289   
            .unwrap()
 5370   7290   
            .into()
 5371   7291   
    }
 5372   7292   
 5373   7293   
    #[test]
 5374   7294   
    fn test_repeated_header() {
 5375         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7295  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7296  +
        let mut req = test.request();
 5376   7297   
        req.headers.push((
 5377   7298   
            "x-amz-object-attributes".to_string(),
 5378   7299   
            "Checksum".to_string(),
 5379   7300   
        ));
 5380   7301   
        req.headers.push((
 5381   7302   
            "x-amz-object-attributes".to_string(),
 5382   7303   
            "ObjectSize".to_string(),
 5383   7304   
        ));
 5384   7305   
        let req = SignableRequest::from(&req);
 5385   7306   
        let settings = SigningSettings {
 5386   7307   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5387   7308   
            session_token_mode: SessionTokenMode::Exclude,
 5388   7309   
            ..Default::default()
 5389   7310   
        };
 5390   7311   
        let identity = Credentials::for_tests().into();
 5391   7312   
        let signing_params = signing_params(&identity, settings);
 5392   7313   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5393   7314   
 5394   7315   
        assert_eq!(
 5395   7316   
            creq.values.signed_headers().to_string(),
 5396   7317   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 5397   7318   
        );
 5398   7319   
        assert_eq!(
 5399   7320   
            creq.header_values_for("x-amz-object-attributes"),
 5400   7321   
            "Checksum,ObjectSize",
 5401   7322   
        );
 5402   7323   
    }
 5403   7324   
 5404   7325   
    #[test]
 5405   7326   
    fn test_host_header_properly_handles_ports() {
 5406   7327   
        fn host_header_test_setup(endpoint: String) -> String {
 5407         -
            let mut req = test::v4::test_request("get-vanilla");
        7328  +
            let test = SigningSuiteTest::v4("get-vanilla");
        7329  +
            let mut req = test.request();
 5408   7330   
            req.uri = endpoint;
 5409   7331   
            let req = SignableRequest::from(&req);
 5410   7332   
            let settings = SigningSettings {
 5411   7333   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5412   7334   
                session_token_mode: SessionTokenMode::Exclude,
 5413   7335   
                ..Default::default()
 5414   7336   
            };
 5415   7337   
            let identity = Credentials::for_tests().into();
 5416   7338   
            let signing_params = signing_params(&identity, settings);
 5417   7339   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5418   7340   
            creq.header_values_for("host")
 5419   7341   
        }
 5420   7342   
 5421   7343   
        // HTTP request with 80 port should not be signed with that port
 5422   7344   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 5423   7345   
        assert_eq!(http_80_host_header, "localhost",);
 5424   7346   
 5425   7347   
        // HTTP request with non-80 port should be signed with that port
 5426   7348   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 5427   7349   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 5428   7350   
 5429   7351   
        // HTTPS request with 443 port should not be signed with that port
 5430   7352   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 5431   7353   
        assert_eq!(https_443_host_header, "localhost",);
 5432   7354   
 5433   7355   
        // HTTPS request with non-443 port should be signed with that port
 5434   7356   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 5435   7357   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 5436   7358   
    }
 5437   7359   
 5438   7360   
    #[test]
 5439   7361   
    fn test_set_xamz_sha_256() {
 5440         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7362  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7363  +
        let req = test.request();
 5441   7364   
        let req = SignableRequest::from(&req);
 5442   7365   
        let settings = SigningSettings {
 5443   7366   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5444   7367   
            session_token_mode: SessionTokenMode::Exclude,
 5445   7368   
            ..Default::default()
 5446   7369   
        };
 5447   7370   
        let identity = Credentials::for_tests().into();
 5448   7371   
        let mut signing_params = signing_params(&identity, settings);
 5449   7372   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5450   7373   
        assert_eq!(
 5451   7374   
            creq.values.content_sha256(),
 5452   7375   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 5453   7376   
        );
 5454   7377   
        // assert that the sha256 header was added
 5455   7378   
        assert_eq!(
 5456   7379   
            creq.values.signed_headers().as_str(),
 5457   7380   
            "host;x-amz-content-sha256;x-amz-date"
 5458   7381   
        );
 5459   7382   
 5460   7383   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 5461   7384   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5462   7385   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 5463   7386   
    }
 5464   7387   
 5465   7388   
    #[test]
 5466   7389   
    fn test_unsigned_payload() {
 5467         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7390  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7391  +
        let mut req = test.request();
 5468   7392   
        req.set_body(SignableBody::UnsignedPayload);
 5469   7393   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 5470   7394   
 5471   7395   
        let settings = SigningSettings {
 5472   7396   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5473   7397   
            ..Default::default()
 5474   7398   
        };
 5475   7399   
        let identity = Credentials::for_tests().into();
 5476   7400   
        let signing_params = signing_params(&identity, settings);
 5477   7401   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5478   7402   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 5479   7403   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 5480   7404   
    }
 5481   7405   
 5482   7406   
    #[test]
 5483   7407   
    fn test_precomputed_payload() {
 5484   7408   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 5485         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7409  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7410  +
        let mut req = test.request();
 5486   7411   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 5487   7412   
        let req = SignableRequest::from(&req);
 5488   7413   
        let settings = SigningSettings {
 5489   7414   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5490   7415   
            ..Default::default()
 5491   7416   
        };
 5492   7417   
        let identity = Credentials::for_tests().into();
 5493   7418   
        let signing_params = signing_params(&identity, settings);
 5494   7419   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5495   7420   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 5496   7421   
        assert!(creq.to_string().ends_with(payload_hash));
 5497   7422   
    }
 5498   7423   
 5499   7424   
    #[test]
 5500   7425   
    fn test_generate_scope() {
 5501   7426   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 5502   7427   
        let scope = SigningScope {
 5503   7428   
            time: parse_date_time("20150830T123600Z").unwrap(),
 5504   7429   
            region: "us-east-1",
 5505   7430   
            service: "iam",
 5506   7431   
        };
 5507   7432   
        assert_eq!(format!("{}\n", scope), expected);
 5508   7433   
    }
 5509   7434   
 5510   7435   
    #[test]
 5511   7436   
    fn test_string_to_sign() {
 5512   7437   
        let time = parse_date_time("20150830T123600Z").unwrap();
 5513         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 5514         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        7438  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7439  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        7440  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 5515   7441   
        let encoded = sha256_hex_string(creq.as_bytes());
 5516   7442   
 5517   7443   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 5518   7444   
        assert_eq!(expected_sts, actual.to_string());
 5519   7445   
    }
 5520   7446   
 5521   7447   
    #[test]
 5522   7448   
    fn test_digest_of_canonical_request() {
 5523         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        7449  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7450  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 5524   7451   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 5525   7452   
        let actual = sha256_hex_string(creq.as_bytes());
 5526   7453   
        assert_eq!(expected, actual);
 5527   7454   
    }
 5528   7455   
 5529   7456   
    #[test]
 5530   7457   
    fn test_double_url_encode_path() {
 5531         -
        let req = test::v4::test_request("double-encode-path");
        7458  +
        let test = SigningSuiteTest::v4("double-encode-path");
        7459  +
        let req = test.request();
 5532   7460   
        let req = SignableRequest::from(&req);
 5533   7461   
        let identity = Credentials::for_tests().into();
 5534   7462   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5535   7463   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5536   7464   
 5537         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        7465  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 5538   7466   
        let actual = format!("{}", creq);
 5539   7467   
        assert_eq!(actual, expected);
 5540   7468   
    }
 5541   7469   
 5542   7470   
    #[test]
 5543   7471   
    fn test_double_url_encode() {
 5544         -
        let req = test::v4::test_request("double-url-encode");
        7472  +
        let test = SigningSuiteTest::v4("double-url-encode");
        7473  +
        let req = test.request();
 5545   7474   
        let req = SignableRequest::from(&req);
 5546   7475   
        let identity = Credentials::for_tests().into();
 5547   7476   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5548   7477   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5549         -
 5550         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        7478  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 5551   7479   
        let actual = format!("{}", creq);
 5552   7480   
        assert_eq!(actual, expected);
 5553   7481   
    }
 5554   7482   
 5555   7483   
    #[test]
 5556   7484   
    fn test_tilde_in_uri() {
 5557   7485   
        let req = http0::Request::builder()
 5558   7486   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 5559   7487   
        let req = SignableRequest::from(&req);
 5560   7488   
        let identity = Credentials::for_tests().into();
 5561   7489   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5562   7490   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5563   7491   
        assert_eq!(
 5564   7492   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 5565   7493   
            creq.params.as_deref(),
 5566   7494   
        );
 5567   7495   
    }
 5568   7496   
 5569   7497   
    #[test]
 5570   7498   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 5571   7499   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 5572   7500   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 5573   7501   
 5574   7502   
        let mut query_writer = QueryWriter::new(&uri);
 5575   7503   
        query_writer.insert("list-type", "2");
 5576   7504   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 5577   7505   
 5578   7506   
        let req = http0::Request::builder()
 5579   7507   
            .uri(query_writer.build_uri())
 5580   7508   
            .body("")
 5581   7509   
            .unwrap()
 5582   7510   
            .into();
 5583   7511   
        let req = SignableRequest::from(&req);
 5584   7512   
        let identity = Credentials::for_tests().into();
 5585   7513   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5586   7514   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5587   7515   
 5588   7516   
        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~";
 5589   7517   
        let actual = creq.params.unwrap();
 5590   7518   
        assert_eq!(expected, actual);
 5591   7519   
    }
 5592   7520   
 5593   7521   
    #[test]
 5594   7522   
    fn test_omit_session_token() {
 5595         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7523  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7524  +
        let req = test.request();
 5596   7525   
        let req = SignableRequest::from(&req);
 5597   7526   
        let settings = SigningSettings {
 5598   7527   
            session_token_mode: SessionTokenMode::Include,
 5599   7528   
            ..Default::default()
 5600   7529   
        };
 5601   7530   
        let identity = Credentials::for_tests_with_session_token().into();
 5602   7531   
        let mut signing_params = signing_params(&identity, settings);
 5603   7532   
 5604   7533   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5605   7534   
        assert_eq!(
 5606   7535   
            creq.values.signed_headers().as_str(),
 5607   7536   
            "host;x-amz-date;x-amz-security-token"
 5608   7537   
        );
 5609   7538   
        assert_eq!(
 5610   7539   
            creq.headers.get("x-amz-security-token").unwrap(),
 5611   7540   
            "notarealsessiontoken"
 5612   7541   
        );
 5613   7542   
 5614   7543   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 5615   7544   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5616   7545   
        assert_eq!(
 5617   7546   
            creq.headers.get("x-amz-security-token").unwrap(),
 5618   7547   
            "notarealsessiontoken"
 5619   7548   
        );
 5620   7549   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 5621   7550   
    }
 5622   7551   
 5623   7552   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 5624   7553   
    #[test]
 5625   7554   
    fn non_presigning_header_exclusion() {
 5626   7555   
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
 5627   7556   
index c4bbbee..363fc2c 100644
 5628         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        7557  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 5629   7558   
@@ -6,60 +6,62 @@
 5630   7559   
use super::error::SigningError;
 5631   7560   
use super::{PayloadChecksumKind, SignatureLocation};
 5632   7561   
use crate::http_request::canonical_request::header;
 5633   7562   
use crate::http_request::canonical_request::param;
 5634   7563   
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 5635   7564   
use crate::http_request::error::CanonicalRequestError;
 5636   7565   
use crate::http_request::SigningParams;
 5637   7566   
use crate::sign::v4;
 5638   7567   
#[cfg(feature = "sigv4a")]
 5639   7568   
use crate::sign::v4a;
 5640   7569   
use crate::{SignatureVersion, SigningOutput};
 5641   7570   
use http0::Uri;
 5642   7571   
use std::borrow::Cow;
 5643   7572   
use std::fmt::{Debug, Formatter};
 5644   7573   
use std::str;
 5645   7574   
 5646   7575   
const LOG_SIGNABLE_BODY: &str = "LOG_SIGNABLE_BODY";
 5647   7576   
 5648   7577   
/// Represents all of the information necessary to sign an HTTP request.
 5649   7578   
#[derive(Debug)]
 5650   7579   
#[non_exhaustive]
 5651   7580   
pub struct SignableRequest<'a> {
 5652   7581   
    method: &'a str,
 5653   7582   
    uri: Uri,
 5654   7583   
    headers: Vec<(&'a str, &'a str)>,
 5655   7584   
    body: SignableBody<'a>,
 5656   7585   
}
 5657   7586   
 5658   7587   
impl<'a> SignableRequest<'a> {
 5659   7588   
    /// Creates a new `SignableRequest`.
        7589  +
    ///
        7590  +
    /// NOTE: The `uri` is expected to already in encoded form.
 5660   7591   
    pub fn new(
 5661   7592   
        method: &'a str,
 5662   7593   
        uri: impl Into<Cow<'a, str>>,
 5663   7594   
        headers: impl Iterator<Item = (&'a str, &'a str)>,
 5664   7595   
        body: SignableBody<'a>,
 5665   7596   
    ) -> Result<Self, SigningError> {
 5666   7597   
        let uri = uri
 5667   7598   
            .into()
 5668   7599   
            .parse()
 5669   7600   
            .map_err(|e| SigningError::from(CanonicalRequestError::from(e)))?;
 5670   7601   
        let headers = headers.collect();
 5671   7602   
        Ok(Self {
 5672   7603   
            method,
 5673   7604   
            uri,
 5674   7605   
            headers,
 5675   7606   
            body,
 5676   7607   
        })
 5677   7608   
    }
 5678   7609   
 5679   7610   
    /// Returns the signable URI
 5680   7611   
    pub(crate) fn uri(&self) -> &Uri {
 5681   7612   
        &self.uri
 5682   7613   
    }
 5683   7614   
 5684   7615   
    /// Returns the signable HTTP method
 5685   7616   
    pub(crate) fn method(&self) -> &str {
 5686   7617   
        self.method
 5687   7618   
    }
 5688   7619   
 5689   7620   
    /// Returns the request headers
 5690   7621   
@@ -478,436 +480,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 5691   7622   
        sensitive,
 5692   7623   
    });
 5693   7624   
}
 5694   7625   
 5695   7626   
// add signature to authorization header
 5696   7627   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 5697   7628   
fn build_authorization_header(
 5698   7629   
    access_key: &str,
 5699   7630   
    creq: &CanonicalRequest<'_>,
 5700   7631   
    sts: StringToSign<'_>,
 5701   7632   
    signature: &str,
 5702   7633   
    signature_version: SignatureVersion,
 5703   7634   
) -> String {
 5704   7635   
    let scope = match signature_version {
 5705   7636   
        SignatureVersion::V4 => sts.scope.to_string(),
 5706   7637   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 5707   7638   
    };
 5708   7639   
    format!(
 5709   7640   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 5710   7641   
        sts.algorithm,
 5711   7642   
        access_key,
 5712   7643   
        scope,
 5713   7644   
        creq.values.signed_headers().as_str(),
 5714   7645   
        signature
 5715   7646   
    )
 5716   7647   
}
 5717   7648   
#[cfg(test)]
 5718   7649   
mod tests {
 5719   7650   
    use crate::date_time::test_parsers::parse_date_time;
 5720   7651   
    use crate::http_request::sign::{add_header, SignableRequest};
        7652  +
    use crate::http_request::test::SigningSuiteTest;
 5721   7653   
    use crate::http_request::{
 5722         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        7654  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 5723   7655   
        SigningSettings,
 5724   7656   
    };
 5725   7657   
    use crate::sign::v4;
 5726   7658   
    use aws_credential_types::Credentials;
 5727   7659   
    use http0::{HeaderValue, Request};
 5728   7660   
    use pretty_assertions::assert_eq;
 5729   7661   
    use proptest::proptest;
 5730   7662   
    use std::borrow::Cow;
 5731   7663   
    use std::iter;
 5732         -
    use std::time::Duration;
 5733   7664   
 5734   7665   
    macro_rules! assert_req_eq {
 5735   7666   
        (http: $expected:expr, $actual:expr) => {
 5736   7667   
            let mut expected = ($expected).map(|_b|"body");
 5737   7668   
            let mut actual = ($actual).map(|_b|"body");
 5738   7669   
            make_headers_comparable(&mut expected);
 5739   7670   
            make_headers_comparable(&mut actual);
 5740   7671   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 5741   7672   
        };
 5742   7673   
        ($expected:tt, $actual:tt) => {
 5743   7674   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 5744   7675   
        };
 5745   7676   
    }
 5746   7677   
 5747   7678   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 5748   7679   
        for (_name, value) in request.headers_mut() {
 5749   7680   
            value.set_sensitive(false);
 5750   7681   
        }
 5751   7682   
    }
 5752   7683   
 5753         -
    #[test]
 5754         -
    fn test_sign_vanilla_with_headers() {
 5755         -
        let settings = SigningSettings::default();
 5756         -
        let identity = &Credentials::for_tests().into();
 5757         -
        let params = v4::SigningParams {
 5758         -
            identity,
 5759         -
            region: "us-east-1",
 5760         -
            name: "service",
 5761         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 5762         -
            settings,
 5763         -
        }
 5764         -
        .into();
 5765         -
 5766         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 5767         -
        let signable = SignableRequest::from(&original);
 5768         -
        let out = sign(signable, &params).unwrap();
 5769         -
        assert_eq!(
 5770         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 5771         -
            out.signature
 5772         -
        );
 5773         -
 5774         -
        let mut signed = original.as_http_request();
 5775         -
        out.output.apply_to_request_http0x(&mut signed);
 5776         -
 5777         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 5778         -
        assert_req_eq!(expected, signed);
 5779         -
    }
 5780         -
        7684  +
    // Sigv4A suite tests
 5781   7685   
    #[cfg(feature = "sigv4a")]
 5782         -
    mod sigv4a_tests {
 5783         -
        use super::*;
 5784         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 5785         -
        use crate::http_request::{sign, test, SigningParams};
 5786         -
        use crate::sign::v4a;
 5787         -
        use p256::ecdsa::signature::{Signature, Verifier};
 5788         -
        use p256::ecdsa::{DerSignature, SigningKey};
 5789         -
        use pretty_assertions::assert_eq;
 5790         -
 5791         -
        fn new_v4a_signing_params_from_context(
 5792         -
            test_context: &'_ test::v4a::TestContext,
 5793         -
            signature_location: SignatureLocation,
 5794         -
        ) -> SigningParams<'_> {
 5795         -
            let mut params = v4a::SigningParams::from(test_context);
 5796         -
            params.settings.signature_location = signature_location;
 5797         -
 5798         -
            params.into()
 5799         -
        }
 5800         -
 5801         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 5802         -
            let tc = test::v4a::test_context(test_name);
 5803         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 5804         -
 5805         -
            let req = test::v4a::test_request(test_name);
 5806         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 5807         -
            let signable_req = SignableRequest::from(&req);
 5808         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        7686  +
    mod v4a_suite {
        7687  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 5809   7688   
 5810         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
 5811         -
 5812         -
            let expected_string_to_sign =
 5813         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 5814         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 5815         -
            let actual_string_to_sign = StringToSign::new_v4a(
 5816         -
                *params.time(),
 5817         -
                params.region_set().unwrap(),
 5818         -
                params.name(),
 5819         -
                hashed_creq,
 5820         -
            )
 5821         -
            .to_string();
 5822         -
 5823         -
            assert_eq!(
 5824         -
                expected_string_to_sign, actual_string_to_sign,
 5825         -
                "'string to sign' didn't match"
 5826         -
            );
 5827         -
 5828         -
            let out = sign(signable_req, &params).unwrap();
 5829         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 5830         -
            out.output
 5831         -
                .apply_to_request_http0x(&mut req.as_http_request());
 5832         -
 5833         -
            let creds = params.credentials().unwrap();
 5834         -
            let signing_key =
 5835         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 5836         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 5837         -
            let sig = sig
 5838         -
                .try_into()
 5839         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 5840         -
 5841         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 5842         -
            let peer_public_key = signing_key.verifying_key();
 5843         -
            let sts = actual_string_to_sign.as_bytes();
 5844         -
            peer_public_key.verify(sts, &sig).unwrap();
        7689  +
        #[test]
        7690  +
        fn test_get_header_key_duplicate() {
        7691  +
            run_test_suite_v4a("get-header-key-duplicate")
 5845   7692   
        }
 5846   7693   
 5847   7694   
        #[test]
 5848         -
        fn test_get_header_key_duplicate() {
 5849         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        7695  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        7696  +
        fn test_get_header_value_multiline() {
        7697  +
            run_test_suite_v4a("get-header-value-multiline")
 5850   7698   
        }
 5851   7699   
 5852   7700   
        #[test]
 5853   7701   
        fn test_get_header_value_order() {
 5854         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        7702  +
            run_test_suite_v4a("get-header-value-order")
 5855   7703   
        }
 5856   7704   
 5857   7705   
        #[test]
 5858   7706   
        fn test_get_header_value_trim() {
 5859         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        7707  +
            run_test_suite_v4a("get-header-value-trim");
 5860   7708   
        }
 5861   7709   
 5862   7710   
        #[test]
 5863   7711   
        fn test_get_relative_normalized() {
 5864         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        7712  +
            run_test_suite_v4a("get-relative-normalized");
 5865   7713   
        }
 5866   7714   
 5867   7715   
        #[test]
 5868   7716   
        fn test_get_relative_relative_normalized() {
 5869         -
            run_v4a_test_suite(
 5870         -
                "get-relative-relative-normalized",
 5871         -
                SignatureLocation::Headers,
 5872         -
            );
        7717  +
            run_test_suite_v4a("get-relative-relative-normalized");
 5873   7718   
        }
 5874   7719   
 5875   7720   
        #[test]
 5876   7721   
        fn test_get_relative_relative_unnormalized() {
 5877         -
            run_v4a_test_suite(
 5878         -
                "get-relative-relative-unnormalized",
 5879         -
                SignatureLocation::Headers,
 5880         -
            );
        7722  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 5881   7723   
        }
 5882   7724   
 5883   7725   
        #[test]
 5884   7726   
        fn test_get_relative_unnormalized() {
 5885         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        7727  +
            run_test_suite_v4a("get-relative-unnormalized");
 5886   7728   
        }
 5887   7729   
 5888   7730   
        #[test]
 5889   7731   
        fn test_get_slash_dot_slash_normalized() {
 5890         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        7732  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 5891   7733   
        }
 5892   7734   
 5893   7735   
        #[test]
 5894   7736   
        fn test_get_slash_dot_slash_unnormalized() {
 5895         -
            run_v4a_test_suite(
 5896         -
                "get-slash-dot-slash-unnormalized",
 5897         -
                SignatureLocation::Headers,
 5898         -
            );
        7737  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 5899   7738   
        }
 5900   7739   
 5901   7740   
        #[test]
 5902   7741   
        fn test_get_slash_normalized() {
 5903         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        7742  +
            run_test_suite_v4a("get-slash-normalized");
 5904   7743   
        }
 5905   7744   
 5906   7745   
        #[test]
 5907   7746   
        fn test_get_slash_pointless_dot_normalized() {
 5908         -
            run_v4a_test_suite(
 5909         -
                "get-slash-pointless-dot-normalized",
 5910         -
                SignatureLocation::Headers,
 5911         -
            );
        7747  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 5912   7748   
        }
 5913   7749   
 5914   7750   
        #[test]
 5915   7751   
        fn test_get_slash_pointless_dot_unnormalized() {
 5916         -
            run_v4a_test_suite(
 5917         -
                "get-slash-pointless-dot-unnormalized",
 5918         -
                SignatureLocation::Headers,
 5919         -
            );
        7752  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 5920   7753   
        }
 5921   7754   
 5922   7755   
        #[test]
 5923   7756   
        fn test_get_slash_unnormalized() {
 5924         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        7757  +
            run_test_suite_v4a("get-slash-unnormalized");
 5925   7758   
        }
 5926   7759   
 5927   7760   
        #[test]
 5928   7761   
        fn test_get_slashes_normalized() {
 5929         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        7762  +
            run_test_suite_v4a("get-slashes-normalized");
 5930   7763   
        }
 5931   7764   
 5932   7765   
        #[test]
 5933   7766   
        fn test_get_slashes_unnormalized() {
 5934         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        7767  +
            run_test_suite_v4a("get-slashes-unnormalized");
        7768  +
        }
        7769  +
        7770  +
        #[test]
        7771  +
        #[ignore = "relies on single encode of path segments"]
        7772  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        7773  +
        // skipped until we add control over double_uri_encode in context.json
        7774  +
        fn test_get_space_normalized() {
        7775  +
            run_test_suite_v4a("get-space-normalized");
        7776  +
        }
        7777  +
        7778  +
        #[test]
        7779  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        7780  +
        // the input request has unencoded space ' ' in the path which fails to parse
        7781  +
        fn test_get_space_unnormalized() {
        7782  +
            run_test_suite_v4a("get-space-unnormalized");
 5935   7783   
        }
 5936   7784   
 5937   7785   
        #[test]
 5938   7786   
        fn test_get_unreserved() {
 5939         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        7787  +
            run_test_suite_v4a("get-unreserved");
        7788  +
        }
        7789  +
        7790  +
        #[test]
        7791  +
        #[ignore = "httparse fails on invalid uri character"]
        7792  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7793  +
        fn test_get_utf8() {
        7794  +
            run_test_suite_v4a("get-utf8");
 5940   7795   
        }
 5941   7796   
 5942   7797   
        #[test]
 5943   7798   
        fn test_get_vanilla() {
 5944         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        7799  +
            run_test_suite_v4a("get-vanilla");
 5945   7800   
        }
 5946   7801   
 5947   7802   
        #[test]
 5948   7803   
        fn test_get_vanilla_empty_query_key() {
 5949         -
            run_v4a_test_suite(
 5950         -
                "get-vanilla-empty-query-key",
 5951         -
                SignatureLocation::QueryParams,
 5952         -
            );
        7804  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 5953   7805   
        }
 5954   7806   
 5955   7807   
        #[test]
 5956   7808   
        fn test_get_vanilla_query() {
 5957         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        7809  +
            run_test_suite_v4a("get-vanilla-query");
        7810  +
        }
        7811  +
        7812  +
        #[test]
        7813  +
        fn test_get_vanilla_query_order_encoded() {
        7814  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 5958   7815   
        }
 5959   7816   
 5960   7817   
        #[test]
 5961   7818   
        fn test_get_vanilla_query_order_key_case() {
 5962         -
            run_v4a_test_suite(
 5963         -
                "get-vanilla-query-order-key-case",
 5964         -
                SignatureLocation::QueryParams,
 5965         -
            );
        7819  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 5966   7820   
        }
 5967   7821   
 5968   7822   
        #[test]
 5969   7823   
        fn test_get_vanilla_query_unreserved() {
 5970         -
            run_v4a_test_suite(
 5971         -
                "get-vanilla-query-unreserved",
 5972         -
                SignatureLocation::QueryParams,
 5973         -
            );
        7824  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        7825  +
        }
        7826  +
        7827  +
        #[test]
        7828  +
        #[ignore = "httparse fails on invalid uri character"]
        7829  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7830  +
        fn test_get_vanilla_utf8_query() {
        7831  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 5974   7832   
        }
 5975   7833   
 5976   7834   
        #[test]
 5977   7835   
        fn test_get_vanilla_with_session_token() {
 5978         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        7836  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 5979   7837   
        }
 5980   7838   
 5981   7839   
        #[test]
 5982   7840   
        fn test_post_header_key_case() {
 5983         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        7841  +
            run_test_suite_v4a("post-header-key-case");
 5984   7842   
        }
 5985   7843   
 5986   7844   
        #[test]
 5987   7845   
        fn test_post_header_key_sort() {
 5988         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        7846  +
            run_test_suite_v4a("post-header-key-sort");
 5989   7847   
        }
 5990   7848   
 5991   7849   
        #[test]
 5992   7850   
        fn test_post_header_value_case() {
 5993         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        7851  +
            run_test_suite_v4a("post-header-value-case");
 5994   7852   
        }
 5995   7853   
 5996   7854   
        #[test]
 5997   7855   
        fn test_post_sts_header_after() {
 5998         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        7856  +
            run_test_suite_v4a("post-sts-header-after");
 5999   7857   
        }
 6000   7858   
 6001   7859   
        #[test]
 6002   7860   
        fn test_post_sts_header_before() {
 6003         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        7861  +
            run_test_suite_v4a("post-sts-header-before");
 6004   7862   
        }
 6005   7863   
 6006   7864   
        #[test]
 6007   7865   
        fn test_post_vanilla() {
 6008         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        7866  +
            run_test_suite_v4a("post-vanilla");
 6009   7867   
        }
 6010   7868   
 6011   7869   
        #[test]
 6012   7870   
        fn test_post_vanilla_empty_query_value() {
 6013         -
            run_v4a_test_suite(
 6014         -
                "post-vanilla-empty-query-value",
 6015         -
                SignatureLocation::QueryParams,
 6016         -
            );
        7871  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 6017   7872   
        }
 6018   7873   
 6019   7874   
        #[test]
 6020   7875   
        fn test_post_vanilla_query() {
 6021         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        7876  +
            run_test_suite_v4a("post-vanilla-query");
 6022   7877   
        }
 6023   7878   
 6024   7879   
        #[test]
 6025   7880   
        fn test_post_x_www_form_urlencoded() {
 6026         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        7881  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 6027   7882   
        }
 6028   7883   
 6029   7884   
        #[test]
 6030   7885   
        fn test_post_x_www_form_urlencoded_parameters() {
 6031         -
            run_v4a_test_suite(
 6032         -
                "post-x-www-form-urlencoded-parameters",
 6033         -
                SignatureLocation::QueryParams,
 6034         -
            );
        7886  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 6035   7887   
        }
 6036   7888   
    }
 6037   7889   
 6038   7890   
    #[test]
 6039   7891   
    fn test_sign_url_escape() {
 6040         -
        let test = "double-encode-path";
        7892  +
        let test = SigningSuiteTest::v4("double-encode-path");
 6041   7893   
        let settings = SigningSettings::default();
 6042   7894   
        let identity = &Credentials::for_tests().into();
 6043   7895   
        let params = v4::SigningParams {
 6044   7896   
            identity,
 6045   7897   
            region: "us-east-1",
 6046   7898   
            name: "service",
 6047   7899   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6048   7900   
            settings,
 6049   7901   
        }
 6050   7902   
        .into();
 6051   7903   
 6052         -
        let original = test::v4::test_request(test);
        7904  +
        let original = test.request();
 6053   7905   
        let signable = SignableRequest::from(&original);
 6054   7906   
        let out = sign(signable, &params).unwrap();
 6055   7907   
        assert_eq!(
 6056   7908   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 6057   7909   
            out.signature
 6058   7910   
        );
 6059   7911   
 6060   7912   
        let mut signed = original.as_http_request();
 6061   7913   
        out.output.apply_to_request_http0x(&mut signed);
 6062   7914   
 6063         -
        let expected = test::v4::test_signed_request(test);
 6064         -
        assert_req_eq!(expected, signed);
 6065         -
    }
 6066         -
 6067         -
    #[test]
 6068         -
    fn test_sign_vanilla_with_query_params() {
 6069         -
        let settings = SigningSettings {
 6070         -
            signature_location: SignatureLocation::QueryParams,
 6071         -
            expires_in: Some(Duration::from_secs(35)),
 6072         -
            ..Default::default()
 6073         -
        };
 6074         -
        let identity = &Credentials::for_tests().into();
 6075         -
        let params = v4::SigningParams {
 6076         -
            identity,
 6077         -
            region: "us-east-1",
 6078         -
            name: "service",
 6079         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 6080         -
            settings,
 6081         -
        }
 6082         -
        .into();
 6083         -
 6084         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 6085         -
        let signable = SignableRequest::from(&original);
 6086         -
        let out = sign(signable, &params).unwrap();
 6087         -
        assert_eq!(
 6088         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 6089         -
            out.signature
 6090         -
        );
 6091         -
 6092         -
        let mut signed = original.as_http_request();
 6093         -
        out.output.apply_to_request_http0x(&mut signed);
 6094         -
 6095         -
        let expected =
 6096         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        7915  +
        let expected = test.signed_request(SignatureLocation::Headers);
 6097   7916   
        assert_req_eq!(expected, signed);
 6098   7917   
    }
 6099   7918   
 6100   7919   
    #[test]
 6101   7920   
    fn test_sign_headers_utf8() {
 6102   7921   
        let settings = SigningSettings::default();
 6103   7922   
        let identity = &Credentials::for_tests().into();
 6104   7923   
        let params = v4::SigningParams {
 6105   7924   
            identity,
 6106   7925   
            region: "us-east-1",
 6107   7926   
            name: "service",
 6108   7927   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6109   7928   
            settings,
 6110   7929   
        }
 6111   7930   
        .into();
 6112   7931   
 6113   7932   
        let original = http0::Request::builder()
 6114   7933   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 6115   7934   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 6116   7935   
            .body("")
 6117   7936   
            .unwrap()
 6118   7937   
            .into();
 6119   7938   
        let signable = SignableRequest::from(&original);
 6120   7939   
        let out = sign(signable, &params).unwrap();
 6121   7940   
        assert_eq!(
 6122   7941   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 6123   7942   
            out.signature
 6124   7943   
        );
 6125   7944   
 6126   7945   
        let mut signed = original.as_http_request();
 6127   7946   
@@ -1138,31 +1028,236 @@ mod tests {
 6128   7947   
        let mut request = http::Request::builder()
 6129   7948   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 6130   7949   
            .body("")
 6131   7950   
            .unwrap();
 6132   7951   
 6133   7952   
        instructions.apply_to_request_http1x(&mut request);
 6134   7953   
 6135   7954   
        assert_eq!(
 6136   7955   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 6137   7956   
            request.uri().path_and_query().unwrap().to_string()
 6138   7957   
        );
 6139   7958   
    }
 6140   7959   
 6141   7960   
    #[test]
 6142   7961   
    fn test_debug_signable_body() {
 6143   7962   
        let sut = SignableBody::Bytes(b"hello signable body");
 6144   7963   
        assert_eq!(
 6145   7964   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 6146   7965   
            format!("{sut:?}")
 6147   7966   
        );
 6148   7967   
 6149   7968   
        let sut = SignableBody::UnsignedPayload;
 6150   7969   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 6151   7970   
 6152   7971   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 6153   7972   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 6154   7973   
 6155   7974   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 6156   7975   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 6157   7976   
    }
        7977  +
        7978  +
    // v4 test suite
        7979  +
    mod v4_suite {
        7980  +
        use crate::http_request::test::run_test_suite_v4;
        7981  +
        7982  +
        #[test]
        7983  +
        fn test_get_header_key_duplicate() {
        7984  +
            run_test_suite_v4("get-header-key-duplicate");
        7985  +
        }
        7986  +
        7987  +
        #[test]
        7988  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        7989  +
        fn test_get_header_value_multiline() {
        7990  +
            run_test_suite_v4("get-header-value-multiline");
        7991  +
        }
        7992  +
        7993  +
        #[test]
        7994  +
        fn test_get_header_value_order() {
        7995  +
            run_test_suite_v4("get-header-value-order");
        7996  +
        }
        7997  +
        7998  +
        #[test]
        7999  +
        fn test_get_header_value_trim() {
        8000  +
            run_test_suite_v4("get-header-value-trim");
        8001  +
        }
        8002  +
        8003  +
        #[test]
        8004  +
        fn test_get_relative_normalized() {
        8005  +
            run_test_suite_v4("get-relative-normalized");
        8006  +
        }
        8007  +
        8008  +
        #[test]
        8009  +
        fn test_get_relative_relative_normalized() {
        8010  +
            run_test_suite_v4("get-relative-relative-normalized");
        8011  +
        }
        8012  +
        8013  +
        #[test]
        8014  +
        fn test_get_relative_relative_unnormalized() {
        8015  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        8016  +
        }
        8017  +
        8018  +
        #[test]
        8019  +
        fn test_get_relative_unnormalized() {
        8020  +
            run_test_suite_v4("get-relative-unnormalized");
        8021  +
        }
        8022  +
        8023  +
        #[test]
        8024  +
        fn test_get_slash_dot_slash_normalized() {
        8025  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        8026  +
        }
        8027  +
        8028  +
        #[test]
        8029  +
        fn test_get_slash_dot_slash_unnormalized() {
        8030  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        8031  +
        }
        8032  +
        8033  +
        #[test]
        8034  +
        fn test_get_slash_normalized() {
        8035  +
            run_test_suite_v4("get-slash-normalized");
        8036  +
        }
        8037  +
        8038  +
        #[test]
        8039  +
        fn test_get_slash_pointless_dot_normalized() {
        8040  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        8041  +
        }
        8042  +
        8043  +
        #[test]
        8044  +
        fn test_get_slash_pointless_dot_unnormalized() {
        8045  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        8046  +
        }
        8047  +
        8048  +
        #[test]
        8049  +
        fn test_get_slash_unnormalized() {
        8050  +
            run_test_suite_v4("get-slash-unnormalized");
        8051  +
        }
        8052  +
        8053  +
        #[test]
        8054  +
        fn test_get_slashes_normalized() {
        8055  +
            run_test_suite_v4("get-slashes-normalized");
        8056  +
        }
        8057  +
        8058  +
        #[test]
        8059  +
        fn test_get_slashes_unnormalized() {
        8060  +
            run_test_suite_v4("get-slashes-unnormalized");
        8061  +
        }
        8062  +
        8063  +
        #[test]
        8064  +
        #[ignore = "relies on single encode of path segments"]
        8065  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        8066  +
        // skipped until we add control over double_uri_encode in context.json
        8067  +
        fn test_get_space_normalized() {
        8068  +
            run_test_suite_v4("get-space-normalized");
        8069  +
        }
        8070  +
        8071  +
        #[test]
        8072  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        8073  +
        // the input request has unencoded space ' ' in the path which fails to parse
        8074  +
        fn test_get_space_unnormalized() {
        8075  +
            run_test_suite_v4("get-space-unnormalized");
        8076  +
        }
        8077  +
        8078  +
        #[test]
        8079  +
        fn test_get_unreserved() {
        8080  +
            run_test_suite_v4("get-unreserved");
        8081  +
        }
        8082  +
        8083  +
        #[test]
        8084  +
        #[ignore = "httparse fails on invalid uri character"]
        8085  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8086  +
        fn test_get_utf8() {
        8087  +
            run_test_suite_v4("get-utf8");
        8088  +
        }
        8089  +
        8090  +
        #[test]
        8091  +
        fn test_get_vanilla() {
        8092  +
            run_test_suite_v4("get-vanilla");
        8093  +
        }
        8094  +
        8095  +
        #[test]
        8096  +
        fn test_get_vanilla_empty_query_key() {
        8097  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        8098  +
        }
        8099  +
        8100  +
        #[test]
        8101  +
        fn test_get_vanilla_query() {
        8102  +
            run_test_suite_v4("get-vanilla-query");
        8103  +
        }
        8104  +
        8105  +
        #[test]
        8106  +
        fn test_get_vanilla_query_order_encoded() {
        8107  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        8108  +
        }
        8109  +
        8110  +
        #[test]
        8111  +
        fn test_get_vanilla_query_order_key_case() {
        8112  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        8113  +
        }
        8114  +
        8115  +
        #[test]
        8116  +
        fn test_get_vanilla_query_unreserved() {
        8117  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        8118  +
        }
        8119  +
        8120  +
        #[test]
        8121  +
        #[ignore = "httparse fails on invalid uri character"]
        8122  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8123  +
        fn test_get_vanilla_utf8_query() {
        8124  +
            run_test_suite_v4("get-vanilla-utf8-query");
        8125  +
        }
        8126  +
        8127  +
        #[test]
        8128  +
        fn test_get_vanilla_with_session_token() {
        8129  +
            run_test_suite_v4("get-vanilla-with-session-token");
        8130  +
        }
        8131  +
        8132  +
        #[test]
        8133  +
        fn test_post_header_key_case() {
        8134  +
            run_test_suite_v4("post-header-key-case");
        8135  +
        }
        8136  +
        8137  +
        #[test]
        8138  +
        fn test_post_header_key_sort() {
        8139  +
            run_test_suite_v4("post-header-key-sort");
        8140  +
        }
        8141  +
        8142  +
        #[test]
        8143  +
        fn test_post_header_value_case() {
        8144  +
            run_test_suite_v4("post-header-value-case");
        8145  +
        }
        8146  +
        8147  +
        #[test]
        8148  +
        fn test_post_sts_header_after() {
        8149  +
            run_test_suite_v4("post-sts-header-after");
        8150  +
        }
        8151  +
        8152  +
        #[test]
        8153  +
        fn test_post_sts_header_before() {
        8154  +
            run_test_suite_v4("post-sts-header-before");
        8155  +
        }
        8156  +
        8157  +
        #[test]
        8158  +
        fn test_post_vanilla() {
        8159  +
            run_test_suite_v4("post-vanilla");
        8160  +
        }
        8161  +
        8162  +
        #[test]
        8163  +
        fn test_post_vanilla_empty_query_value() {
        8164  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        8165  +
        }
        8166  +
        8167  +
        #[test]
        8168  +
        fn test_post_vanilla_query() {
        8169  +
            run_test_suite_v4("post-vanilla-query");
        8170  +
        }
        8171  +
        8172  +
        #[test]
        8173  +
        fn test_post_x_www_form_urlencoded() {
        8174  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        8175  +
        }
        8176  +
        8177  +
        #[test]
        8178  +
        fn test_post_x_www_form_urlencoded_parameters() {
        8179  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        8180  +
        }
        8181  +
    }
 6158   8182   
}
 6159   8183   
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
 6160   8184   
index be6c496..86eec20 100644
 6161         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        8185  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 6162   8186   
@@ -1,242 +1,453 @@
 6163   8187   
/*
 6164   8188   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 6165   8189   
 * SPDX-License-Identifier: Apache-2.0
 6166   8190   
 */
 6167   8191   
 6168   8192   
//! Functions shared between the tests of several modules.
 6169   8193   
 6170         -
use crate::http_request::{SignableBody, SignableRequest};
        8194  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        8195  +
use crate::http_request::{
        8196  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        8197  +
    SigningSettings,
        8198  +
};
        8199  +
use aws_credential_types::Credentials;
        8200  +
use aws_smithy_runtime_api::client::identity::Identity;
 6171   8201   
use http0::{Method, Uri};
        8202  +
use std::borrow::Cow;
 6172   8203   
use std::error::Error as StdError;
        8204  +
use std::time::{Duration, SystemTime};
        8205  +
use time::format_description::well_known::Rfc3339;
        8206  +
use time::OffsetDateTime;
        8207  +
        8208  +
/// Common test suite collection
        8209  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        8210  +
enum Collection {
        8211  +
    V4,
        8212  +
    V4A,
        8213  +
}
 6173   8214   
 6174         -
pub(crate) mod v4 {
 6175         -
    use super::*;
        8215  +
/// A test from the common CRT test suite
        8216  +
#[derive(Debug, Clone)]
        8217  +
pub(crate) struct SigningSuiteTest {
        8218  +
    test_name: &'static str,
        8219  +
    collection: Collection,
        8220  +
}
 6176   8221   
 6177         -
    fn path(name: &str, ext: &str) -> String {
 6178         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        8222  +
impl SigningSuiteTest {
        8223  +
    /// Create a new test from the V4 test suite
        8224  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        8225  +
        Self {
        8226  +
            test_name,
        8227  +
            collection: Collection::V4,
 6179   8228   
        }
 6180         -
 6181         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 6182         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 6183         -
        read(&path(name, "creq")).trim().to_string()
 6184   8229   
    }
 6185   8230   
 6186         -
    pub(crate) fn test_sts(name: &str) -> String {
 6187         -
        read(&path(name, "sts"))
        8231  +
    /// Create a new test from the V4a test suite
        8232  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        8233  +
        Self {
        8234  +
            test_name,
        8235  +
            collection: Collection::V4A,
 6188   8236   
        }
 6189         -
 6190         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 6191         -
        test_parsed_request(name, "req")
 6192   8237   
    }
 6193   8238   
 6194         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 6195         -
        test_parsed_request(name, "sreq")
        8239  +
    /// Get the path to a file in this test suite directory
        8240  +
    fn path(&self, filename: &str) -> String {
        8241  +
        let dir = match self.collection {
        8242  +
            Collection::V4 => "v4",
        8243  +
            Collection::V4A => "v4a",
        8244  +
        };
        8245  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 6196   8246   
    }
 6197   8247   
 6198         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 6199         -
        test_parsed_request(name, "qpsreq")
        8248  +
    /// Get the HTTP request for the test
        8249  +
    pub(crate) fn request(&self) -> TestRequest {
        8250  +
        test_parsed_request(&self.path("request.txt"))
 6200   8251   
    }
 6201   8252   
 6202         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 6203         -
        let path = path(name, ext);
 6204         -
        match parse_request(read(&path).as_bytes()) {
 6205         -
            Ok(parsed) => parsed,
 6206         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        8253  +
    /// Get the signed HTTP request for the test
        8254  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        8255  +
        match signature_location {
        8256  +
            SignatureLocation::QueryParams => {
        8257  +
                test_parsed_request(&self.path("query-signed-request.txt"))
 6207   8258   
            }
        8259  +
            SignatureLocation::Headers => {
        8260  +
                test_parsed_request(&self.path("header-signed-request.txt"))
 6208   8261   
            }
 6209         -
 6210         -
    #[test]
 6211         -
    fn test_parse() {
 6212         -
        test_request("post-header-key-case");
 6213   8262   
        }
 6214         -
 6215         -
    #[test]
 6216         -
    fn test_read_query_params() {
 6217         -
        test_request("get-vanilla-query-order-key-case");
 6218   8263   
    }
 6219         -
}
 6220         -
 6221         -
#[cfg(feature = "sigv4a")]
 6222         -
pub(crate) mod v4a {
 6223         -
    use super::*;
 6224         -
    use crate::http_request::{
 6225         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 6226         -
    };
 6227         -
    use aws_credential_types::Credentials;
 6228         -
    use aws_smithy_runtime_api::client::identity::Identity;
 6229         -
    use serde_derive::Deserialize;
 6230         -
    use std::time::{Duration, SystemTime};
 6231         -
    use time::format_description::well_known::Rfc3339;
 6232         -
    use time::OffsetDateTime;
 6233   8264   
 6234         -
    fn path(test_name: &str, definition_name: &str) -> String {
 6235         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        8265  +
    /// Get the canonical request for the test
        8266  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        8267  +
        match signature_location {
        8268  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        8269  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
 6236   8270   
        }
 6237         -
 6238         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 6239         -
        test_parsed_request(&path(name, "request"))
 6240   8271   
    }
 6241   8272   
 6242         -
    pub(crate) fn test_canonical_request(
 6243         -
        name: &str,
 6244         -
        signature_location: SignatureLocation,
 6245         -
    ) -> String {
        8273  +
    /// Get the string to sign for the test
        8274  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
 6246   8275   
        match signature_location {
 6247         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 6248         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        8276  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        8277  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 6249   8278   
        }
 6250   8279   
    }
 6251   8280   
 6252         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
        8281  +
    /// Get the signature for the test
        8282  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
 6253   8283   
        match signature_location {
 6254         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 6255         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        8284  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        8285  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        8286  +
        }
 6256   8287   
    }
        8288  +
        8289  +
    /// Get the test context for the test
        8290  +
    pub(crate) fn context(&self) -> TestContext {
        8291  +
        let context = read(&self.path("context.json"));
        8292  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        8293  +
        tc_builder.build()
 6257   8294   
    }
        8295  +
}
 6258   8296   
 6259         -
    fn test_parsed_request(path: &str) -> TestRequest {
        8297  +
fn test_parsed_request(path: &str) -> TestRequest {
 6260   8298   
    match parse_request(read(path).as_bytes()) {
 6261   8299   
        Ok(parsed) => parsed,
 6262   8300   
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 6263   8301   
    }
 6264         -
    }
        8302  +
}
 6265   8303   
 6266         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 6267         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 6268         -
        let context = read(&path);
 6269         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 6270         -
        tc_builder.build()
 6271         -
    }
        8304  +
fn new_v4_signing_params_from_context(
        8305  +
    test_context: &'_ TestContext,
        8306  +
    signature_location: SignatureLocation,
        8307  +
) -> crate::http_request::SigningParams<'_> {
        8308  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        8309  +
    params.settings.signature_location = signature_location;
        8310  +
    params.into()
        8311  +
}
        8312  +
        8313  +
/// Run the given test from the v4 suite for both header and query
        8314  +
/// signature locations
        8315  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        8316  +
    run_v4_test(test_name, SignatureLocation::Headers);
        8317  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        8318  +
}
        8319  +
        8320  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        8321  +
    assert_eq!(expected.scheme(), actual.scheme());
        8322  +
    assert_eq!(expected.authority(), actual.authority());
        8323  +
    assert_eq!(expected.path(), actual.path());
        8324  +
        8325  +
    // query params may be out of order
        8326  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        8327  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        8328  +
    expected_params.sort();
        8329  +
        8330  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        8331  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        8332  +
    actual_params.sort();
        8333  +
        8334  +
    assert_eq!(expected_params, actual_params);
        8335  +
}
 6272   8336   
 6273         -
    pub(crate) struct TestContext {
        8337  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        8338  +
    let expected = expected.as_http_request();
        8339  +
    let actual = actual;
        8340  +
    assert_eq!(expected.method(), actual.method());
        8341  +
    assert_eq!(
        8342  +
        expected.headers().len(),
        8343  +
        actual.headers().len(),
        8344  +
        "extra or missing headers"
        8345  +
    );
        8346  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        8347  +
    assert_uri_eq(expected.uri(), actual.uri());
        8348  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        8349  +
}
        8350  +
        8351  +
/// Run the given test from the v4 suite for the given signature location
        8352  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        8353  +
    let test = SigningSuiteTest::v4(test_name);
        8354  +
    let tc = test.context();
        8355  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        8356  +
        8357  +
    let req = test.request();
        8358  +
    let expected_creq = test.canonical_request(signature_location);
        8359  +
    let signable_req = SignableRequest::from(&req);
        8360  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8361  +
        8362  +
    // check canonical request
        8363  +
    assert_eq!(
        8364  +
        expected_creq,
        8365  +
        actual_creq.to_string(),
        8366  +
        "canonical request didn't match (signature location: {signature_location:?})"
        8367  +
    );
        8368  +
        8369  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        8370  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8371  +
    let actual_string_to_sign = StringToSign::new_v4(
        8372  +
        *params.time(),
        8373  +
        params.region().unwrap(),
        8374  +
        params.name(),
        8375  +
        hashed_creq,
        8376  +
    )
        8377  +
    .to_string();
        8378  +
        8379  +
    // check string to sign
        8380  +
    assert_eq!(
        8381  +
        expected_string_to_sign, actual_string_to_sign,
        8382  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        8383  +
    );
        8384  +
        8385  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        8386  +
    let mut signed = req.as_http_request();
        8387  +
    out.output.apply_to_request_http0x(&mut signed);
        8388  +
        8389  +
    // check signature
        8390  +
    assert_eq!(
        8391  +
        test.signature(signature_location),
        8392  +
        out.signature,
        8393  +
        "signature didn't match (signature location: {signature_location:?})"
        8394  +
    );
        8395  +
        8396  +
    let expected = test.signed_request(signature_location);
        8397  +
    assert_requests_eq(expected, signed);
        8398  +
}
        8399  +
        8400  +
/// Test suite context.json
        8401  +
pub(crate) struct TestContext {
 6274   8402   
    pub(crate) identity: Identity,
 6275   8403   
    pub(crate) expiration_in_seconds: u64,
 6276   8404   
    pub(crate) normalize: bool,
 6277   8405   
    pub(crate) region: String,
 6278   8406   
    pub(crate) service: String,
 6279   8407   
    pub(crate) timestamp: String,
 6280   8408   
    pub(crate) omit_session_token: bool,
 6281   8409   
    pub(crate) sign_body: bool,
 6282         -
    }
 6283         -
 6284         -
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 6285         -
        fn from(tc: &'a TestContext) -> Self {
 6286         -
            crate::sign::v4a::SigningParams {
 6287         -
                identity: &tc.identity,
 6288         -
                region_set: &tc.region,
 6289         -
                name: &tc.service,
 6290         -
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 6291         -
                    .unwrap()
 6292         -
                    .into(),
 6293         -
                settings: SigningSettings {
 6294         -
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6295         -
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 6296         -
                    uri_path_normalization_mode: tc.normalize.into(),
 6297         -
                    session_token_mode: if tc.omit_session_token {
 6298         -
                        SessionTokenMode::Exclude
 6299         -
                    } else {
 6300         -
                        SessionTokenMode::Include
 6301         -
                    },
 6302         -
                    payload_checksum_kind: if tc.sign_body {
 6303         -
                        PayloadChecksumKind::XAmzSha256
 6304         -
                    } else {
 6305         -
                        PayloadChecksumKind::NoHeader
 6306         -
                    },
 6307         -
                    ..Default::default()
 6308         -
                },
 6309         -
            }
 6310         -
        }
 6311         -
    }
        8410  +
}
 6312   8411   
 6313         -
    // Serde has limitations requiring this odd workaround.
 6314         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 6315         -
    fn return_true() -> bool {
        8412  +
// Serde has limitations requiring this odd workaround.
        8413  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        8414  +
fn return_true() -> bool {
 6316   8415   
    true
 6317         -
    }
        8416  +
}
 6318   8417   
 6319         -
    #[derive(Deserialize)]
 6320         -
    pub(crate) struct TestContextBuilder {
        8418  +
#[derive(serde_derive::Deserialize)]
        8419  +
pub(crate) struct TestContextBuilder {
 6321   8420   
    credentials: TestContextCreds,
 6322   8421   
    expiration_in_seconds: u64,
 6323   8422   
    normalize: bool,
 6324   8423   
    region: String,
 6325   8424   
    service: String,
 6326   8425   
    timestamp: String,
 6327   8426   
    #[serde(default)]
 6328   8427   
    omit_session_token: bool,
 6329   8428   
    #[serde(default = "return_true")]
 6330   8429   
    sign_body: bool,
 6331         -
    }
        8430  +
}
 6332   8431   
 6333         -
    impl TestContextBuilder {
        8432  +
impl TestContextBuilder {
 6334   8433   
    pub(crate) fn build(self) -> TestContext {
 6335   8434   
        let identity = Identity::new(
 6336   8435   
            Credentials::from_keys(
 6337   8436   
                &self.credentials.access_key_id,
 6338   8437   
                &self.credentials.secret_access_key,
 6339   8438   
                self.credentials.token.clone(),
 6340   8439   
            ),
 6341   8440   
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 6342   8441   
        );
 6343   8442   
 6344   8443   
        TestContext {
 6345   8444   
            identity,
 6346   8445   
            expiration_in_seconds: self.expiration_in_seconds,
 6347   8446   
            normalize: self.normalize,
 6348   8447   
            region: self.region,
 6349   8448   
            service: self.service,
 6350   8449   
            timestamp: self.timestamp,
 6351   8450   
            omit_session_token: self.omit_session_token,
 6352   8451   
            sign_body: self.sign_body,
 6353   8452   
        }
 6354   8453   
    }
 6355         -
    }
        8454  +
}
 6356   8455   
 6357         -
    #[derive(Deserialize)]
 6358         -
    pub(crate) struct TestContextCreds {
        8456  +
#[derive(serde_derive::Deserialize)]
        8457  +
pub(crate) struct TestContextCreds {
 6359   8458   
    access_key_id: String,
 6360   8459   
    secret_access_key: String,
 6361   8460   
    token: Option<String>,
        8461  +
}
        8462  +
        8463  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        8464  +
    fn from(tc: &'a TestContext) -> Self {
        8465  +
        crate::sign::v4::SigningParams {
        8466  +
            identity: &tc.identity,
        8467  +
            region: &tc.region,
        8468  +
            name: &tc.service,
        8469  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8470  +
                .unwrap()
        8471  +
                .into(),
        8472  +
            settings: SigningSettings {
        8473  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8474  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8475  +
                uri_path_normalization_mode: tc.normalize.into(),
        8476  +
                session_token_mode: if tc.omit_session_token {
        8477  +
                    SessionTokenMode::Exclude
        8478  +
                } else {
        8479  +
                    SessionTokenMode::Include
        8480  +
                },
        8481  +
                payload_checksum_kind: if tc.sign_body {
        8482  +
                    PayloadChecksumKind::XAmzSha256
        8483  +
                } else {
        8484  +
                    PayloadChecksumKind::NoHeader
        8485  +
                },
        8486  +
                ..Default::default()
        8487  +
            },
        8488  +
        }
        8489  +
    }
        8490  +
}
        8491  +
        8492  +
#[cfg(feature = "sigv4a")]
        8493  +
pub(crate) mod v4a {
        8494  +
    use super::*;
        8495  +
    use crate::http_request::{
        8496  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        8497  +
    };
        8498  +
    use crate::sign::v4a;
        8499  +
    use p256::ecdsa::signature::{Signature, Verifier};
        8500  +
    use p256::ecdsa::{DerSignature, SigningKey};
        8501  +
    use std::time::Duration;
        8502  +
    use time::format_description::well_known::Rfc3339;
        8503  +
    use time::OffsetDateTime;
        8504  +
        8505  +
    fn new_v4a_signing_params_from_context(
        8506  +
        test_context: &'_ TestContext,
        8507  +
        signature_location: SignatureLocation,
        8508  +
    ) -> crate::http_request::SigningParams<'_> {
        8509  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        8510  +
        params.settings.signature_location = signature_location;
        8511  +
        params.into()
        8512  +
    }
        8513  +
        8514  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        8515  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        8516  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
        8517  +
    }
        8518  +
        8519  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        8520  +
        let test = SigningSuiteTest::v4a(test_name);
        8521  +
        let tc = test.context();
        8522  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        8523  +
        8524  +
        let req = test.request();
        8525  +
        let expected_creq = test.canonical_request(signature_location);
        8526  +
        let signable_req = SignableRequest::from(&req);
        8527  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8528  +
        8529  +
        assert_eq!(
        8530  +
            expected_creq,
        8531  +
            actual_creq.to_string(),
        8532  +
            "canonical request didn't match (signature location: {signature_location:?})"
        8533  +
        );
        8534  +
        8535  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        8536  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8537  +
        let actual_string_to_sign = StringToSign::new_v4a(
        8538  +
            *params.time(),
        8539  +
            params.region_set().unwrap(),
        8540  +
            params.name(),
        8541  +
            hashed_creq,
        8542  +
        )
        8543  +
        .to_string();
        8544  +
        8545  +
        assert_eq!(
        8546  +
            expected_string_to_sign, actual_string_to_sign,
        8547  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        8548  +
        );
        8549  +
        8550  +
        let out = sign(signable_req, &params).unwrap();
        8551  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        8552  +
        out.output
        8553  +
            .apply_to_request_http0x(&mut req.as_http_request());
        8554  +
        8555  +
        let creds = params.credentials().unwrap();
        8556  +
        let signing_key =
        8557  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        8558  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        8559  +
        let sig = sig
        8560  +
            .try_into()
        8561  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        8562  +
        8563  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        8564  +
        let peer_public_key = signing_key.verifying_key();
        8565  +
        let sts = actual_string_to_sign.as_bytes();
        8566  +
        peer_public_key.verify(sts, &sig).unwrap();
        8567  +
        // TODO(sigv4a) - use public.key.json as verifying key?
        8568  +
    }
        8569  +
        8570  +
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
        8571  +
        fn from(tc: &'a TestContext) -> Self {
        8572  +
            crate::sign::v4a::SigningParams {
        8573  +
                identity: &tc.identity,
        8574  +
                region_set: &tc.region,
        8575  +
                name: &tc.service,
        8576  +
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8577  +
                    .unwrap()
        8578  +
                    .into(),
        8579  +
                settings: SigningSettings {
        8580  +
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8581  +
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8582  +
                    uri_path_normalization_mode: tc.normalize.into(),
        8583  +
                    session_token_mode: if tc.omit_session_token {
        8584  +
                        SessionTokenMode::Exclude
        8585  +
                    } else {
        8586  +
                        SessionTokenMode::Include
        8587  +
                    },
        8588  +
                    payload_checksum_kind: if tc.sign_body {
        8589  +
                        PayloadChecksumKind::XAmzSha256
        8590  +
                    } else {
        8591  +
                        PayloadChecksumKind::NoHeader
        8592  +
                    },
        8593  +
                    ..Default::default()
        8594  +
                },
        8595  +
            }
        8596  +
        }
 6362   8597   
    }
 6363   8598   
 6364   8599   
    #[test]
 6365   8600   
    fn test_parse() {
 6366         -
        let req = test_request("post-header-key-case");
        8601  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 6367   8602   
        assert_eq!(req.method, "POST");
 6368   8603   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 6369   8604   
        assert!(req.headers.is_empty());
 6370   8605   
    }
 6371   8606   
 6372   8607   
    #[test]
 6373   8608   
    fn test_read_query_params() {
 6374         -
        let req = test_request("get-header-value-trim");
        8609  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 6375   8610   
        assert_eq!(req.method, "GET");
 6376   8611   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 6377   8612   
        assert!(!req.headers.is_empty());
 6378   8613   
    }
 6379   8614   
}
 6380   8615   
 6381   8616   
fn read(path: &str) -> String {
 6382   8617   
    println!("Loading `{}` for test case...", path);
 6383   8618   
    let v = {
 6384   8619   
        match std::fs::read_to_string(path) {
 6385   8620   
            // This replacement is necessary for tests to pass on Windows, as reading the
 6386   8621   
            // test snapshots from the file system results in CRLF line endings being inserted.
 6387   8622   
            Ok(value) => value.replace("\r\n", "\n"),
 6388   8623   
            Err(err) => {
 6389   8624   
                panic!("failed to load test case `{}`: {}", path, err);
 6390   8625   
            }
 6391   8626   
        }
 6392   8627   
    };
 6393   8628   
 6394   8629   
    v.trim().to_string()
 6395   8630   
}
 6396   8631   
 6397   8632   
pub(crate) struct TestRequest {
 6398   8633   
    pub(crate) uri: String,
 6399   8634   
    pub(crate) method: String,
 6400   8635   
    pub(crate) headers: Vec<(String, String)>,
 6401   8636   
    pub(crate) body: TestSignedBody,
 6402   8637   
}
 6403   8638   
 6404   8639   
pub(crate) enum TestSignedBody {
 6405   8640   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 6406   8641   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 6407   8642   
                    )
 6408   8643   
                })
 6409   8644   
                .collect::<Vec<_>>(),
 6410   8645   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 6411   8646   
        }
 6412   8647   
    }
 6413   8648   
}
 6414   8649   
 6415   8650   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 6416   8651   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 6417   8652   
        SignableRequest::new(
 6418   8653   
            &request.method,
 6419   8654   
            &request.uri,
 6420   8655   
            request
 6421   8656   
                .headers
 6422   8657   
                .iter()
 6423   8658   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 6424   8659   
            request.body.as_signable_body(),
 6425   8660   
        )
 6426   8661   
        .expect("URI MUST be valid")
 6427   8662   
    }
 6428   8663   
}
 6429   8664   
 6430   8665   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 6431   8666   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 6432   8667   
    // httparse 1.5 requires two trailing newlines to head the header section.
 6433   8668   
    let mut with_newline = Vec::from(s);
 6434   8669   
    with_newline.push(b'\n');
 6435   8670   
    let mut req = httparse::Request::new(&mut headers);
 6436         -
    let _ = req.parse(&with_newline).unwrap();
        8671  +
    let status = req.parse(&with_newline).unwrap();
        8672  +
        8673  +
    let body = if status.is_complete() {
        8674  +
        let body_offset = status.unwrap();
        8675  +
        // ignore the newline we added, take from original
        8676  +
        &s[body_offset..]
        8677  +
    } else {
        8678  +
        &[]
        8679  +
    };
 6437   8680   
 6438   8681   
    let mut uri_builder = Uri::builder().scheme("https");
 6439   8682   
    if let Some(path) = req.path {
 6440   8683   
        uri_builder = uri_builder.path_and_query(path);
 6441   8684   
    }
 6442   8685   
 6443   8686   
    let mut headers = vec![];
 6444   8687   
    for header in req.headers {
 6445   8688   
        let name = header.name.to_lowercase();
 6446   8689   
        if name == "host" {
 6447   8690   
            uri_builder = uri_builder.authority(header.value);
 6448   8691   
        } else if !name.is_empty() {
 6449   8692   
            headers.push((
 6450   8693   
                header.name.to_string(),
 6451   8694   
                std::str::from_utf8(header.value)?.to_string(),
 6452   8695   
            ));
 6453   8696   
        }
 6454   8697   
    }
 6455   8698   
 6456   8699   
    Ok(TestRequest {
 6457   8700   
        uri: uri_builder.build()?.to_string(),
 6458   8701   
        method: req.method.unwrap().to_string(),
 6459   8702   
        headers,
 6460         -
        body: TestSignedBody::Bytes(vec![]),
        8703  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 6461   8704   
    })
 6462   8705   
}
 6463   8706   
 6464   8707   
#[test]
 6465   8708   
fn test_parse_headers() {
 6466   8709   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 6467   8710   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 6468   8711   
    assert_eq!(
 6469   8712   
        httparse::parse_headers(buf, &mut headers),
 6470   8713   
        Ok(httparse::Status::Complete((
 6471   8714   
            56,
 6472   8715   
            &[
 6473   8716   
                httparse::Header {
 6474   8717   
                    name: "Host",
 6475   8718   
                    value: b"example.amazonaws.com",
 6476   8719   
                },
 6477   8720   
                httparse::Header {
 6478   8721   
                    name: "X-Amz-Date",
 6479   8722   
                    value: b"20150830T123600Z",
 6480   8723   
                }
 6481   8724   
            ][..]
 6482   8725   
        )))
 6483   8726   
    );
 6484   8727   
}
 6485   8728   
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
 6486   8729   
index a208453..fc00249 100644
 6487         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        8730  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 6488   8731   
@@ -168,52 +168,54 @@ pub mod signing_params {
 6489   8732   
        );
 6490   8733   
 6491   8734   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 6492   8735   
        /// a required argument was not given.
 6493   8736   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 6494   8737   
            Ok(SigningParams {
 6495   8738   
                identity: self
 6496   8739   
                    .identity
 6497   8740   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 6498   8741   
                region: self
 6499   8742   
                    .region
 6500   8743   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 6501   8744   
                name: self
 6502   8745   
                    .name
 6503   8746   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 6504   8747   
                time: self
 6505   8748   
                    .time
 6506   8749   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 6507   8750   
                settings: self
 6508   8751   
                    .settings
 6509   8752   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 6510   8753   
            })
 6511   8754   
        }
 6512   8755   
    }
 6513   8756   
}
 6514   8757   
 6515   8758   
#[cfg(test)]
 6516   8759   
mod tests {
 6517   8760   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 6518   8761   
    use crate::date_time::test_parsers::parse_date_time;
 6519         -
    use crate::http_request::test;
 6520   8762   
 6521   8763   
    #[test]
 6522   8764   
    fn test_signature_calculation() {
 6523   8765   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 6524         -
        let creq = test::v4::test_canonical_request("iam");
        8766  +
        let creq = r#"AWS4-HMAC-SHA256
        8767  +
20150830T123600Z
        8768  +
20150830/us-east-1/iam/aws4_request
        8769  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 6525   8770   
        let time = parse_date_time("20150830T123600Z").unwrap();
 6526   8771   
 6527   8772   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 6528   8773   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 6529   8774   
 6530   8775   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 6531   8776   
        assert_eq!(expected, &signature);
 6532   8777   
    }
 6533   8778   
 6534   8779   
    #[test]
 6535   8780   
    fn sign_payload_empty_string() {
 6536   8781   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 6537   8782   
        let actual = sha256_hex_string([]);
 6538   8783   
        assert_eq!(expected, actual);
 6539   8784   
    }
 6540   8785   
}
 6541   8786   
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
 6542   8787   
index ce78c38..8c2f591 100644
 6543         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
        8788  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 6544   8789   
@@ -1,43 +1,43 @@
 6545   8790   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6546   8791   
[package]
 6547   8792   
name = "aws-smithy-checksums"
 6548   8793   
version = "0.63.5"
 6549   8794   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 6550   8795   
description = "Checksum calculation and verification callbacks"
 6551   8796   
edition = "2021"
 6552   8797   
license = "Apache-2.0"
 6553   8798   
repository = "https://github.com/smithy-lang/smithy-rs"
 6554   8799   
[package.metadata.docs.rs]
 6555   8800   
all-features = true
 6556   8801   
targets = ["x86_64-unknown-linux-gnu"]
 6557   8802   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6558   8803   
rustdoc-args = ["--cfg", "docsrs"]
 6559   8804   
 6560   8805   
[dependencies]
 6561   8806   
bytes = "1.10.0"
 6562   8807   
crc-fast = "1.3.0"
 6563   8808   
hex = "0.4.3"
 6564   8809   
http = "0.2.9"
 6565   8810   
http-body = "0.4.5"
 6566   8811   
md-5 = "0.10"
 6567   8812   
pin-project-lite = "0.2.14"
 6568   8813   
sha1 = "0.10"
 6569   8814   
sha2 = "0.10"
 6570   8815   
tracing = "0.1.40"
 6571   8816   
 6572   8817   
[dependencies.aws-smithy-http]
 6573   8818   
path = "../aws-smithy-http"
 6574         -
version = "0.62.2"
        8819  +
version = "0.62.3"
 6575   8820   
 6576   8821   
[dependencies.aws-smithy-types]
 6577   8822   
path = "../aws-smithy-types"
 6578   8823   
version = "1.3.2"
 6579   8824   
 6580   8825   
[dev-dependencies]
 6581   8826   
bytes-utils = "0.1.2"
 6582   8827   
pretty_assertions = "1.3"
 6583   8828   
tracing-test = "0.2.1"
 6584   8829   
 6585   8830   
[dev-dependencies.tokio]
 6586   8831   
version = "1.23.1"
 6587   8832   
features = ["macros", "rt"]
 6588   8833   
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
 6589   8834   
index 970c99e..d3c7a49 100644
 6590         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
        8835  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 6591   8836   
@@ -1,34 +1,34 @@
 6592   8837   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6593   8838   
[package]
 6594   8839   
name = "aws-smithy-http"
 6595         -
version = "0.62.2"
        8840  +
version = "0.62.3"
 6596   8841   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6597   8842   
description = "Smithy HTTP logic for smithy-rs."
 6598   8843   
edition = "2021"
 6599   8844   
license = "Apache-2.0"
 6600   8845   
repository = "https://github.com/smithy-lang/smithy-rs"
 6601   8846   
[package.metadata.docs.rs]
 6602   8847   
all-features = true
 6603   8848   
targets = ["x86_64-unknown-linux-gnu"]
 6604   8849   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6605   8850   
rustdoc-args = ["--cfg", "docsrs"]
 6606   8851   
 6607   8852   
[features]
 6608   8853   
event-stream = ["aws-smithy-eventstream"]
 6609   8854   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 6610   8855   
 6611   8856   
[dependencies]
 6612   8857   
bytes = "1.10.0"
 6613   8858   
bytes-utils = "0.1"
 6614   8859   
percent-encoding = "2.3.1"
 6615   8860   
pin-project-lite = "0.2.14"
 6616   8861   
pin-utils = "0.1.0"
 6617   8862   
tracing = "0.1.40"
 6618   8863   
futures-core = "0.3.31"
 6619   8864   
 6620   8865   
[dependencies.aws-smithy-eventstream]
 6621   8866   
path = "../aws-smithy-eventstream"
 6622   8867   
optional = true
 6623   8868   
version = "0.60.10"
 6624   8869   
 6625   8870   
[dependencies.aws-smithy-runtime-api]
 6626   8871   
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
 6627   8872   
index 508f7a2..361545e 100644
 6628         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
        8873  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 6629   8874   
@@ -1,27 +1,27 @@
 6630   8875   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6631   8876   
[[bin]]
 6632   8877   
name = "read_many_from_str"
 6633   8878   
path = "fuzz_targets/read_many_from_str.rs"
 6634   8879   
test = false
 6635   8880   
doc = false
 6636   8881   
 6637   8882   
[package]
 6638   8883   
name = "aws-smithy-http-fuzz"
 6639   8884   
version = "0.0.0"
 6640   8885   
authors = ["Automatically generated"]
 6641   8886   
publish = false
 6642   8887   
edition = "2021"
 6643   8888   
 6644   8889   
[package.metadata]
 6645   8890   
cargo-fuzz = true
 6646   8891   
 6647   8892   
[dependencies]
 6648   8893   
libfuzzer-sys = "=0.4.7"
 6649   8894   
http = "0.2.3"
 6650   8895   
 6651   8896   
[dependencies.aws-smithy-http]
 6652   8897   
path = ".."
 6653         -
version = "0.62.2"
        8898  +
version = "0.62.3"
 6654   8899   
 6655   8900   
[workspace]
 6656   8901   
members = ["."]
 6657   8902   
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
 6658   8903   
index fef41d0..7694da6 100644
 6659         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
        8904  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 6660   8905   
@@ -25,68 +25,73 @@ impl QueryWriter {
 6661   8906   
    pub fn new(uri: &Uri) -> Self {
 6662   8907   
        let new_path_and_query = uri
 6663   8908   
            .path_and_query()
 6664   8909   
            .map(|pq| pq.to_string())
 6665   8910   
            .unwrap_or_default();
 6666   8911   
        let prefix = if uri.query().is_none() {
 6667   8912   
            Some('?')
 6668   8913   
        } else if !uri.query().unwrap_or_default().is_empty() {
 6669   8914   
            Some('&')
 6670   8915   
        } else {
 6671   8916   
            None
 6672   8917   
        };
 6673   8918   
        QueryWriter {
 6674   8919   
            base_uri: uri.clone(),
 6675   8920   
            new_path_and_query,
 6676   8921   
            prefix,
 6677   8922   
        }
 6678   8923   
    }
 6679   8924   
 6680   8925   
    /// Clears all query parameters.
 6681   8926   
    pub fn clear_params(&mut self) {
 6682   8927   
        if let Some(index) = self.new_path_and_query.find('?') {
 6683   8928   
            self.new_path_and_query.truncate(index);
 6684   8929   
            self.prefix = Some('?');
 6685   8930   
        }
 6686   8931   
    }
 6687   8932   
 6688   8933   
    /// Inserts a new query parameter. The key and value are percent encoded
 6689   8934   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 6690   8935   
    pub fn insert(&mut self, k: &str, v: &str) {
        8936  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
        8937  +
    }
        8938  +
        8939  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
        8940  +
    /// as is.
        8941  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 6691   8942   
        if let Some(prefix) = self.prefix {
 6692   8943   
            self.new_path_and_query.push(prefix);
 6693   8944   
        }
 6694   8945   
        self.prefix = Some('&');
 6695         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
        8946  +
        self.new_path_and_query.push_str(encoded_k);
 6696   8947   
        self.new_path_and_query.push('=');
 6697         -
 6698         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
        8948  +
        self.new_path_and_query.push_str(encoded_v)
 6699   8949   
    }
 6700   8950   
 6701   8951   
    /// Returns just the built query string.
 6702   8952   
    pub fn build_query(self) -> String {
 6703   8953   
        self.build_uri().query().unwrap_or_default().to_string()
 6704   8954   
    }
 6705   8955   
 6706   8956   
    /// Returns a full [`Uri`] with the query string updated.
 6707   8957   
    pub fn build_uri(self) -> Uri {
 6708   8958   
        let mut parts = self.base_uri.into_parts();
 6709   8959   
        parts.path_and_query = Some(
 6710   8960   
            self.new_path_and_query
 6711   8961   
                .parse()
 6712   8962   
                .expect("adding query should not invalidate URI"),
 6713   8963   
        );
 6714   8964   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 6715   8965   
    }
 6716   8966   
}
 6717   8967   
 6718   8968   
#[cfg(test)]
 6719   8969   
mod test {
 6720   8970   
    use super::QueryWriter;
 6721   8971   
    use http_02x::Uri;
 6722   8972   
 6723   8973   
    #[test]
 6724   8974   
    fn empty_uri() {
 6725   8975   
        let uri = Uri::from_static("http://www.example.com");
 6726   8976   
        let mut query_writer = QueryWriter::new(&uri);
 6727   8977   
        query_writer.insert("key", "val%ue");
 6728   8978   
        query_writer.insert("another", "value");
 6729   8979   
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
 6730   8980   
index f108978..df7a9fe 100644
 6731         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
        8981  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 6732   8982   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 6733   8983   
 6734   8984   
[package.metadata.smithy-rs-release-tooling]
 6735   8985   
stable = true
 6736   8986   
[package.metadata.cargo-udeps.ignore]
 6737   8987   
normal = ["aws-smithy-http"]
 6738   8988   
 6739   8989   
[features]
 6740   8990   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 6741   8991   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 6742   8992   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 6743   8993   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 6744   8994   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 6745   8995   
rt-tokio = ["tokio/rt"]
 6746   8996   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 6747   8997   
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"]
 6748   8998   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 6749   8999   
 6750   9000   
[dependencies]
 6751   9001   
bytes = "1.10.0"
 6752   9002   
fastrand = "2.3.0"
 6753   9003   
pin-project-lite = "0.2.14"
 6754   9004   
pin-utils = "0.1.0"
 6755   9005   
tracing = "0.1.40"
 6756   9006   
 6757   9007   
[dependencies.aws-smithy-async]
 6758   9008   
path = "../aws-smithy-async"
 6759   9009   
version = "1.2.5"
 6760   9010   
 6761   9011   
[dependencies.aws-smithy-http]
 6762   9012   
path = "../aws-smithy-http"
 6763         -
version = "0.62.2"
        9013  +
version = "0.62.3"
 6764   9014   
 6765   9015   
[dependencies.aws-smithy-observability]
 6766   9016   
path = "../aws-smithy-observability"
 6767   9017   
version = "0.1.3"
 6768   9018   
 6769   9019   
[dependencies.aws-smithy-runtime-api]
 6770   9020   
path = "../aws-smithy-runtime-api"
 6771   9021   
version = "1.8.5"
 6772   9022   
 6773   9023   
[dependencies.aws-smithy-types]
 6774   9024   
path = "../aws-smithy-types"
 6775   9025   
features = ["http-body-0-4-x"]
 6776   9026   
version = "1.3.2"
 6777   9027   
 6778   9028   
[dependencies.aws-smithy-http-client]
 6779   9029   
path = "../aws-smithy-http-client"
 6780   9030   
optional = true
 6781   9031   
version = "1.0.6"
 6782   9032   
 6783   9033   
[dependencies.http-02x]
 6784   9034   
package = "http"
 6785   9035   
version = "0.2.9"
 6786   9036   
 6787   9037   
[dependencies.http-1x]
 6788   9038   
package = "http"
 6789   9039   
version = "1"
 6790   9040   
 6791   9041   
[dependencies.http-body-04x]
 6792   9042   
package = "http-body"
 6793   9043   
version = "0.4.5"
 6794   9044   
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
 6795   9045   
index 4e050c6..f58eb1c 100644
 6796         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
        9046  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 6797   9047   
@@ -1,33 +1,33 @@
 6798   9048   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6799   9049   
[package]
 6800   9050   
name = "aws-smithy-wasm"
 6801   9051   
version = "0.1.4"
 6802   9052   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 6803   9053   
description = "Smithy WebAssembly configuration for smithy-rs."
 6804   9054   
edition = "2021"
 6805   9055   
license = "Apache-2.0"
 6806   9056   
repository = "https://github.com/awslabs/smithy-rs"
 6807   9057   
[package.metadata.docs.rs]
 6808   9058   
all-features = true
 6809   9059   
targets = ["x86_64-unknown-linux-gnu"]
 6810   9060   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6811   9061   
rustdoc-args = ["--cfg", "docsrs"]
 6812   9062   
 6813   9063   
[dependencies]
 6814   9064   
bytes = "1.10.0"
 6815   9065   
http = "1.0.0"
 6816   9066   
tracing = "0.1.40"
 6817   9067   
wasi = "0.12.1"
 6818   9068   
 6819   9069   
[dependencies.aws-smithy-runtime-api]
 6820   9070   
path = "../aws-smithy-runtime-api"
 6821   9071   
features = ["http-1x"]
 6822   9072   
version = "1.8.5"
 6823   9073   
 6824   9074   
[dependencies.aws-smithy-http]
 6825   9075   
path = "../aws-smithy-http"
 6826         -
version = "0.62.2"
        9076  +
version = "0.62.3"
 6827   9077   
 6828   9078   
[dependencies.aws-smithy-types]
 6829   9079   
path = "../aws-smithy-types"
 6830   9080   
version = "1.3.2"
 6831   9081   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 6832   9082   
index a880648..139e808 100644
 6833         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
        9083  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 6834   9084   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 6835   9085   
edition = "2021"
 6836   9086   
license = "Apache-2.0"
 6837   9087   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6838   9088   
rust-version = "1.86.0"
 6839   9089   
readme = "README.md"
 6840   9090   
[package.metadata.smithy]
 6841   9091   
codegen-version = "ci"
 6842   9092   
[package.metadata.docs.rs]
 6843   9093   
all-features = true
 6844   9094   
targets = ["x86_64-unknown-linux-gnu"]
 6845   9095   
[dependencies.aws-credential-types]
 6846   9096   
path = "../aws-credential-types"
 6847   9097   
version = "1.2.4"
 6848   9098   
 6849   9099   
[dependencies.aws-runtime]
 6850   9100   
path = "../aws-runtime"
 6851   9101   
features = ["event-stream"]
 6852   9102   
version = "1.5.9"
 6853   9103   
 6854   9104   
[dependencies.aws-smithy-async]
 6855   9105   
path = "../aws-smithy-async"
 6856   9106   
version = "1.2.5"
 6857   9107   
 6858   9108   
[dependencies.aws-smithy-eventstream]
 6859   9109   
path = "../aws-smithy-eventstream"
 6860   9110   
version = "0.60.10"
 6861   9111   
 6862   9112   
[dependencies.aws-smithy-http]
 6863   9113   
path = "../aws-smithy-http"
 6864   9114   
features = ["event-stream"]
 6865         -
version = "0.62.2"
        9115  +
version = "0.62.3"
 6866   9116   
 6867   9117   
[dependencies.aws-smithy-json]
 6868   9118   
path = "../aws-smithy-json"
 6869   9119   
version = "0.61.4"
 6870   9120   
 6871   9121   
[dependencies.aws-smithy-runtime]
 6872   9122   
path = "../aws-smithy-runtime"
 6873   9123   
features = ["client"]
 6874   9124   
version = "1.8.5"
 6875   9125   
 6876   9126   
[dependencies.aws-smithy-runtime-api]
 6877   9127   
path = "../aws-smithy-runtime-api"
 6878   9128   
features = ["client", "http-02x"]
 6879   9129   
version = "1.8.5"
 6880   9130   
 6881   9131   
[dependencies.aws-smithy-types]
 6882   9132   
path = "../aws-smithy-types"
 6883   9133   
version = "1.3.2"
 6884   9134   
 6885   9135   
[dependencies.aws-types]
 6886   9136   
path = "../aws-types"
 6887   9137   
version = "1.3.8"
 6888   9138   
 6889   9139   
[dependencies.bytes]
 6890   9140   
version = "1.4.0"
 6891   9141   
 6892   9142   
[dependencies.fastrand]
 6893   9143   
version = "2.0.0"
 6894   9144   
 6895   9145   
[dependencies.http]
 6896   9146   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 6897   9147   
index 415ecc9..667d12b 100644
 6898         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
        9148  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 6899   9149   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 6900   9150   
edition = "2021"
 6901   9151   
license = "Apache-2.0"
 6902   9152   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6903   9153   
rust-version = "1.86.0"
 6904   9154   
readme = "README.md"
 6905   9155   
[package.metadata.smithy]
 6906   9156   
codegen-version = "ci"
 6907   9157   
[package.metadata.docs.rs]
 6908   9158   
all-features = true
 6909   9159   
targets = ["x86_64-unknown-linux-gnu"]
 6910   9160   
[dependencies.aws-credential-types]
 6911   9161   
path = "../aws-credential-types"
 6912   9162   
version = "1.2.4"
 6913   9163   
 6914   9164   
[dependencies.aws-runtime]
 6915   9165   
path = "../aws-runtime"
 6916   9166   
features = ["event-stream"]
 6917   9167   
version = "1.5.9"
 6918   9168   
 6919   9169   
[dependencies.aws-smithy-async]
 6920   9170   
path = "../aws-smithy-async"
 6921   9171   
version = "1.2.5"
 6922   9172   
 6923   9173   
[dependencies.aws-smithy-eventstream]
 6924   9174   
path = "../aws-smithy-eventstream"
 6925   9175   
version = "0.60.10"
 6926   9176   
 6927   9177   
[dependencies.aws-smithy-http]
 6928   9178   
path = "../aws-smithy-http"
 6929   9179   
features = ["event-stream"]
 6930         -
version = "0.62.2"
        9180  +
version = "0.62.3"
 6931   9181   
 6932   9182   
[dependencies.aws-smithy-json]
 6933   9183   
path = "../aws-smithy-json"
 6934   9184   
version = "0.61.4"
 6935   9185   
 6936   9186   
[dependencies.aws-smithy-runtime]
 6937   9187   
path = "../aws-smithy-runtime"
 6938   9188   
features = ["client"]
 6939   9189   
version = "1.8.5"
 6940   9190   
 6941   9191   
[dependencies.aws-smithy-runtime-api]
 6942   9192   
path = "../aws-smithy-runtime-api"
 6943   9193   
features = ["client", "http-02x"]
 6944   9194   
version = "1.8.5"
 6945   9195   
 6946   9196   
[dependencies.aws-smithy-types]
 6947   9197   
path = "../aws-smithy-types"
 6948   9198   
version = "1.3.2"
 6949   9199   
 6950   9200   
[dependencies.aws-types]
 6951   9201   
path = "../aws-types"
 6952   9202   
version = "1.3.8"
 6953   9203   
 6954   9204   
[dependencies.bytes]
 6955   9205   
version = "1.4.0"
 6956   9206   
 6957   9207   
[dependencies.fastrand]
 6958   9208   
version = "2.0.0"
 6959   9209   
 6960   9210   
[dependencies.http]
 6961   9211   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 6962   9212   
index 8871cab..ed88de6 100644
 6963         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
        9213  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 6964   9214   
@@ -1,61 +1,61 @@
 6965   9215   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6966   9216   
[package]
 6967   9217   
name = "aws-sdk-codecatalyst"
 6968   9218   
version = "0.0.0-local"
 6969   9219   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6970   9220   
description = "AWS SDK for Amazon CodeCatalyst"
 6971   9221   
edition = "2021"
 6972   9222   
license = "Apache-2.0"
 6973   9223   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6974   9224   
rust-version = "1.86.0"
 6975   9225   
readme = "README.md"
 6976   9226   
[package.metadata.smithy]
 6977   9227   
codegen-version = "ci"
 6978   9228   
[package.metadata.docs.rs]
 6979   9229   
all-features = true
 6980   9230   
targets = ["x86_64-unknown-linux-gnu"]
 6981   9231   
[dependencies.aws-credential-types]
 6982   9232   
path = "../aws-credential-types"
 6983   9233   
version = "1.2.4"
 6984   9234   
 6985   9235   
[dependencies.aws-runtime]
 6986   9236   
path = "../aws-runtime"
 6987   9237   
version = "1.5.9"
 6988   9238   
 6989   9239   
[dependencies.aws-smithy-async]
 6990   9240   
path = "../aws-smithy-async"
 6991   9241   
version = "1.2.5"
 6992   9242   
 6993   9243   
[dependencies.aws-smithy-http]
 6994   9244   
path = "../aws-smithy-http"
 6995         -
version = "0.62.2"
        9245  +
version = "0.62.3"
 6996   9246   
 6997   9247   
[dependencies.aws-smithy-json]
 6998   9248   
path = "../aws-smithy-json"
 6999   9249   
version = "0.61.4"
 7000   9250   
 7001   9251   
[dependencies.aws-smithy-runtime]
 7002   9252   
path = "../aws-smithy-runtime"
 7003   9253   
features = ["client", "http-auth"]
 7004   9254   
version = "1.8.5"
 7005   9255   
 7006   9256   
[dependencies.aws-smithy-runtime-api]
 7007   9257   
path = "../aws-smithy-runtime-api"
 7008   9258   
features = ["client", "http-02x", "http-auth"]
 7009   9259   
version = "1.8.5"
 7010   9260   
 7011   9261   
[dependencies.aws-smithy-types]
 7012   9262   
path = "../aws-smithy-types"
 7013   9263   
version = "1.3.2"
 7014   9264   
 7015   9265   
[dependencies.aws-types]
 7016   9266   
path = "../aws-types"
 7017   9267   
version = "1.3.8"
 7018   9268   
 7019   9269   
[dependencies.bytes]
 7020   9270   
version = "1.4.0"
 7021   9271   
 7022   9272   
[dependencies.fastrand]
 7023   9273   
version = "2.0.0"
 7024   9274   
 7025   9275   
[dependencies.http]
 7026   9276   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 7027   9277   
index 89573ff..05238af 100644
 7028         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
        9278  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 7029   9279   
@@ -1,61 +1,61 @@
 7030   9280   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7031   9281   
[package]
 7032   9282   
name = "aws-sdk-config"
 7033   9283   
version = "0.0.0-local"
 7034   9284   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7035   9285   
description = "AWS SDK for AWS Config"
 7036   9286   
edition = "2021"
 7037   9287   
license = "Apache-2.0"
 7038   9288   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7039   9289   
rust-version = "1.86.0"
 7040   9290   
readme = "README.md"
 7041   9291   
[package.metadata.smithy]
 7042   9292   
codegen-version = "ci"
 7043   9293   
[package.metadata.docs.rs]
 7044   9294   
all-features = true
 7045   9295   
targets = ["x86_64-unknown-linux-gnu"]
 7046   9296   
[dependencies.aws-credential-types]
 7047   9297   
path = "../aws-credential-types"
 7048   9298   
version = "1.2.4"
 7049   9299   
 7050   9300   
[dependencies.aws-runtime]
 7051   9301   
path = "../aws-runtime"
 7052   9302   
version = "1.5.9"
 7053   9303   
 7054   9304   
[dependencies.aws-smithy-async]
 7055   9305   
path = "../aws-smithy-async"
 7056   9306   
version = "1.2.5"
 7057   9307   
 7058   9308   
[dependencies.aws-smithy-http]
 7059   9309   
path = "../aws-smithy-http"
 7060         -
version = "0.62.2"
        9310  +
version = "0.62.3"
 7061   9311   
 7062   9312   
[dependencies.aws-smithy-json]
 7063   9313   
path = "../aws-smithy-json"
 7064   9314   
version = "0.61.4"
 7065   9315   
 7066   9316   
[dependencies.aws-smithy-runtime]
 7067   9317   
path = "../aws-smithy-runtime"
 7068   9318   
features = ["client"]
 7069   9319   
version = "1.8.5"
 7070   9320   
 7071   9321   
[dependencies.aws-smithy-runtime-api]
 7072   9322   
path = "../aws-smithy-runtime-api"
 7073   9323   
features = ["client", "http-02x"]
 7074   9324   
version = "1.8.5"
 7075   9325   
 7076   9326   
[dependencies.aws-smithy-types]
 7077   9327   
path = "../aws-smithy-types"
 7078   9328   
version = "1.3.2"
 7079   9329   
 7080   9330   
[dependencies.aws-types]
 7081   9331   
path = "../aws-types"
 7082   9332   
version = "1.3.8"
 7083   9333   
 7084   9334   
[dependencies.bytes]
 7085   9335   
version = "1.4.0"
 7086   9336   
 7087   9337   
[dependencies.fastrand]
 7088   9338   
version = "2.0.0"
 7089   9339   
 7090   9340   
[dependencies.http]
 7091   9341   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 7092   9342   
index d397c58..2c1062b 100644
 7093         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
        9343  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 7094   9344   
@@ -1,61 +1,61 @@
 7095   9345   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7096   9346   
[package]
 7097   9347   
name = "aws-sdk-dynamodb"
 7098   9348   
version = "0.0.0-local"
 7099   9349   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7100   9350   
description = "AWS SDK for Amazon DynamoDB"
 7101   9351   
edition = "2021"
 7102   9352   
license = "Apache-2.0"
 7103   9353   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7104   9354   
rust-version = "1.86.0"
 7105   9355   
readme = "README.md"
 7106   9356   
[package.metadata.smithy]
 7107   9357   
codegen-version = "ci"
 7108   9358   
[package.metadata.docs.rs]
 7109   9359   
all-features = true
 7110   9360   
targets = ["x86_64-unknown-linux-gnu"]
 7111   9361   
[dependencies.aws-credential-types]
 7112   9362   
path = "../aws-credential-types"
 7113   9363   
version = "1.2.4"
 7114   9364   
 7115   9365   
[dependencies.aws-runtime]
 7116   9366   
path = "../aws-runtime"
 7117   9367   
version = "1.5.9"
 7118   9368   
 7119   9369   
[dependencies.aws-smithy-async]
 7120   9370   
path = "../aws-smithy-async"
 7121   9371   
version = "1.2.5"
 7122   9372   
 7123   9373   
[dependencies.aws-smithy-http]
 7124   9374   
path = "../aws-smithy-http"
 7125         -
version = "0.62.2"
        9375  +
version = "0.62.3"
 7126   9376   
 7127   9377   
[dependencies.aws-smithy-json]
 7128   9378   
path = "../aws-smithy-json"
 7129   9379   
version = "0.61.4"
 7130   9380   
 7131   9381   
[dependencies.aws-smithy-runtime]
 7132   9382   
path = "../aws-smithy-runtime"
 7133   9383   
features = ["client"]
 7134   9384   
version = "1.8.5"
 7135   9385   
 7136   9386   
[dependencies.aws-smithy-runtime-api]
 7137   9387   
path = "../aws-smithy-runtime-api"
 7138   9388   
features = ["client", "http-02x"]
 7139   9389   
version = "1.8.5"
 7140   9390   
 7141   9391   
[dependencies.aws-smithy-types]
 7142   9392   
path = "../aws-smithy-types"
 7143   9393   
version = "1.3.2"
 7144   9394   
 7145   9395   
[dependencies.aws-types]
 7146   9396   
path = "../aws-types"
 7147   9397   
version = "1.3.8"
 7148   9398   
 7149   9399   
[dependencies.bytes]
 7150   9400   
version = "1.4.0"
 7151   9401   
 7152   9402   
[dependencies.fastrand]
 7153   9403   
version = "2.0.0"
 7154   9404   
 7155   9405   
[dependencies.http]
 7156   9406   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 7157   9407   
index c0ba315..46168af 100644
 7158         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
        9408  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 7159   9409   
@@ -1,61 +1,61 @@
 7160   9410   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7161   9411   
[package]
 7162   9412   
name = "aws-sdk-ec2"
 7163   9413   
version = "0.0.0-local"
 7164   9414   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7165   9415   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 7166   9416   
edition = "2021"
 7167   9417   
license = "Apache-2.0"
 7168   9418   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7169   9419   
rust-version = "1.86.0"
 7170   9420   
readme = "README.md"
 7171   9421   
[package.metadata.smithy]
 7172   9422   
codegen-version = "ci"
 7173   9423   
[package.metadata.docs.rs]
 7174   9424   
all-features = true
 7175   9425   
targets = ["x86_64-unknown-linux-gnu"]
 7176   9426   
[dependencies.aws-credential-types]
 7177   9427   
path = "../aws-credential-types"
 7178   9428   
version = "1.2.4"
 7179   9429   
 7180   9430   
[dependencies.aws-runtime]
 7181   9431   
path = "../aws-runtime"
 7182   9432   
version = "1.5.9"
 7183   9433   
 7184   9434   
[dependencies.aws-smithy-async]
 7185   9435   
path = "../aws-smithy-async"
 7186   9436   
version = "1.2.5"
 7187   9437   
 7188   9438   
[dependencies.aws-smithy-http]
 7189   9439   
path = "../aws-smithy-http"
 7190         -
version = "0.62.2"
        9440  +
version = "0.62.3"
 7191   9441   
 7192   9442   
[dependencies.aws-smithy-json]
 7193   9443   
path = "../aws-smithy-json"
 7194   9444   
version = "0.61.4"
 7195   9445   
 7196   9446   
[dependencies.aws-smithy-query]
 7197   9447   
path = "../aws-smithy-query"
 7198   9448   
version = "0.60.7"
 7199   9449   
 7200   9450   
[dependencies.aws-smithy-runtime]
 7201   9451   
path = "../aws-smithy-runtime"
 7202   9452   
features = ["client"]
 7203   9453   
version = "1.8.5"
 7204   9454   
 7205   9455   
[dependencies.aws-smithy-runtime-api]
 7206   9456   
path = "../aws-smithy-runtime-api"
 7207   9457   
features = ["client", "http-02x"]
 7208   9458   
version = "1.8.5"
 7209   9459   
 7210   9460   
[dependencies.aws-smithy-types]
 7211   9461   
path = "../aws-smithy-types"
 7212   9462   
version = "1.3.2"
 7213   9463   
 7214   9464   
[dependencies.aws-smithy-xml]
 7215   9465   
path = "../aws-smithy-xml"
 7216   9466   
version = "0.60.10"
 7217   9467   
 7218   9468   
[dependencies.aws-types]
 7219   9469   
path = "../aws-types"
 7220   9470   
version = "1.3.8"
 7221   9471   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 7222   9472   
index 4474d17..095d40e 100644
 7223         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
        9473  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 7224   9474   
@@ -1,61 +1,61 @@
 7225   9475   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7226   9476   
[package]
 7227   9477   
name = "aws-sdk-ecs"
 7228   9478   
version = "0.0.0-local"
 7229   9479   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7230   9480   
description = "AWS SDK for Amazon EC2 Container Service"
 7231   9481   
edition = "2021"
 7232   9482   
license = "Apache-2.0"
 7233   9483   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7234   9484   
rust-version = "1.86.0"
 7235   9485   
readme = "README.md"
 7236   9486   
[package.metadata.smithy]
 7237   9487   
codegen-version = "ci"
 7238   9488   
[package.metadata.docs.rs]
 7239   9489   
all-features = true
 7240   9490   
targets = ["x86_64-unknown-linux-gnu"]
 7241   9491   
[dependencies.aws-credential-types]
 7242   9492   
path = "../aws-credential-types"
 7243   9493   
version = "1.2.4"
 7244   9494   
 7245   9495   
[dependencies.aws-runtime]
 7246   9496   
path = "../aws-runtime"
 7247   9497   
version = "1.5.9"
 7248   9498   
 7249   9499   
[dependencies.aws-smithy-async]
 7250   9500   
path = "../aws-smithy-async"
 7251   9501   
version = "1.2.5"
 7252   9502   
 7253   9503   
[dependencies.aws-smithy-http]
 7254   9504   
path = "../aws-smithy-http"
 7255         -
version = "0.62.2"
        9505  +
version = "0.62.3"
 7256   9506   
 7257   9507   
[dependencies.aws-smithy-json]
 7258   9508   
path = "../aws-smithy-json"
 7259   9509   
version = "0.61.4"
 7260   9510   
 7261   9511   
[dependencies.aws-smithy-runtime]
 7262   9512   
path = "../aws-smithy-runtime"
 7263   9513   
features = ["client"]
 7264   9514   
version = "1.8.5"
 7265   9515   
 7266   9516   
[dependencies.aws-smithy-runtime-api]
 7267   9517   
path = "../aws-smithy-runtime-api"
 7268   9518   
features = ["client", "http-02x"]
 7269   9519   
version = "1.8.5"
 7270   9520   
 7271   9521   
[dependencies.aws-smithy-types]
 7272   9522   
path = "../aws-smithy-types"
 7273   9523   
version = "1.3.2"
 7274   9524   
 7275   9525   
[dependencies.aws-types]
 7276   9526   
path = "../aws-types"
 7277   9527   
version = "1.3.8"
 7278   9528   
 7279   9529   
[dependencies.bytes]
 7280   9530   
version = "1.4.0"
 7281   9531   
 7282   9532   
[dependencies.fastrand]
 7283   9533   
version = "2.0.0"
 7284   9534   
 7285   9535   
[dependencies.http]
 7286   9536   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 7287   9537   
index 15b1d77..16d7d89 100644
 7288         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
        9538  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 7289   9539   
@@ -1,65 +1,65 @@
 7290   9540   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7291   9541   
[package]
 7292   9542   
name = "aws-sdk-glacier"
 7293   9543   
version = "0.0.0-local"
 7294   9544   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7295   9545   
description = "AWS SDK for Amazon Glacier"
 7296   9546   
edition = "2021"
 7297   9547   
license = "Apache-2.0"
 7298   9548   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7299   9549   
rust-version = "1.86.0"
 7300   9550   
readme = "README.md"
 7301   9551   
[package.metadata.smithy]
 7302   9552   
codegen-version = "ci"
 7303   9553   
[package.metadata.docs.rs]
 7304   9554   
all-features = true
 7305   9555   
targets = ["x86_64-unknown-linux-gnu"]
 7306   9556   
[dependencies.aws-credential-types]
 7307   9557   
path = "../aws-credential-types"
 7308   9558   
version = "1.2.4"
 7309   9559   
 7310   9560   
[dependencies.aws-runtime]
 7311   9561   
path = "../aws-runtime"
 7312   9562   
version = "1.5.9"
 7313   9563   
 7314   9564   
[dependencies.aws-sigv4]
 7315   9565   
path = "../aws-sigv4"
 7316         -
version = "1.3.3"
        9566  +
version = "1.3.4"
 7317   9567   
 7318   9568   
[dependencies.aws-smithy-async]
 7319   9569   
path = "../aws-smithy-async"
 7320   9570   
version = "1.2.5"
 7321   9571   
 7322   9572   
[dependencies.aws-smithy-http]
 7323   9573   
path = "../aws-smithy-http"
 7324         -
version = "0.62.2"
        9574  +
version = "0.62.3"
 7325   9575   
 7326   9576   
[dependencies.aws-smithy-json]
 7327   9577   
path = "../aws-smithy-json"
 7328   9578   
version = "0.61.4"
 7329   9579   
 7330   9580   
[dependencies.aws-smithy-runtime]
 7331   9581   
path = "../aws-smithy-runtime"
 7332   9582   
features = ["client"]
 7333   9583   
version = "1.8.5"
 7334   9584   
 7335   9585   
[dependencies.aws-smithy-runtime-api]
 7336   9586   
path = "../aws-smithy-runtime-api"
 7337   9587   
features = ["client", "http-02x"]
 7338   9588   
version = "1.8.5"
 7339   9589   
 7340   9590   
[dependencies.aws-smithy-types]
 7341   9591   
path = "../aws-smithy-types"
 7342   9592   
version = "1.3.2"
 7343   9593   
 7344   9594   
[dependencies.aws-types]
 7345   9595   
path = "../aws-types"
 7346   9596   
version = "1.3.8"
 7347   9597   
 7348   9598   
[dependencies.bytes]
 7349   9599   
version = "1.4.0"
 7350   9600   
 7351   9601   
[dependencies.fastrand]
 7352   9602   
version = "2.0.0"
 7353   9603   
 7354   9604   
[dependencies.hex]
 7355   9605   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 7356   9606   
index d718a3a..65e6f24 100644
 7357         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
        9607  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 7358   9608   
@@ -1,61 +1,61 @@
 7359   9609   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7360   9610   
[package]
 7361   9611   
name = "aws-sdk-iam"
 7362   9612   
version = "0.0.0-local"
 7363   9613   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7364   9614   
description = "AWS SDK for AWS Identity and Access Management"
 7365   9615   
edition = "2021"
 7366   9616   
license = "Apache-2.0"
 7367   9617   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7368   9618   
rust-version = "1.86.0"
 7369   9619   
readme = "README.md"
 7370   9620   
[package.metadata.smithy]
 7371   9621   
codegen-version = "ci"
 7372   9622   
[package.metadata.docs.rs]
 7373   9623   
all-features = true
 7374   9624   
targets = ["x86_64-unknown-linux-gnu"]
 7375   9625   
[dependencies.aws-credential-types]
 7376   9626   
path = "../aws-credential-types"
 7377   9627   
version = "1.2.4"
 7378   9628   
 7379   9629   
[dependencies.aws-runtime]
 7380   9630   
path = "../aws-runtime"
 7381   9631   
version = "1.5.9"
 7382   9632   
 7383   9633   
[dependencies.aws-smithy-async]
 7384   9634   
path = "../aws-smithy-async"
 7385   9635   
version = "1.2.5"
 7386   9636   
 7387   9637   
[dependencies.aws-smithy-http]
 7388   9638   
path = "../aws-smithy-http"
 7389         -
version = "0.62.2"
        9639  +
version = "0.62.3"
 7390   9640   
 7391   9641   
[dependencies.aws-smithy-json]
 7392   9642   
path = "../aws-smithy-json"
 7393   9643   
version = "0.61.4"
 7394   9644   
 7395   9645   
[dependencies.aws-smithy-query]
 7396   9646   
path = "../aws-smithy-query"
 7397   9647   
version = "0.60.7"
 7398   9648   
 7399   9649   
[dependencies.aws-smithy-runtime]
 7400   9650   
path = "../aws-smithy-runtime"
 7401   9651   
features = ["client"]
 7402   9652   
version = "1.8.5"
 7403   9653   
 7404   9654   
[dependencies.aws-smithy-runtime-api]
 7405   9655   
path = "../aws-smithy-runtime-api"
 7406   9656   
features = ["client", "http-02x"]
 7407   9657   
version = "1.8.5"
 7408   9658   
 7409   9659   
[dependencies.aws-smithy-types]
 7410   9660   
path = "../aws-smithy-types"
 7411   9661   
version = "1.3.2"
 7412   9662   
 7413   9663   
[dependencies.aws-smithy-xml]
 7414   9664   
path = "../aws-smithy-xml"
 7415   9665   
version = "0.60.10"
 7416   9666   
 7417   9667   
[dependencies.aws-types]
 7418   9668   
path = "../aws-types"
 7419   9669   
version = "1.3.8"
 7420   9670   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 7421   9671   
index 0ed4302..3d828a5 100644
 7422         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
        9672  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 7423   9673   
@@ -1,61 +1,61 @@
 7424   9674   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7425   9675   
[package]
 7426   9676   
name = "aws-sdk-kms"
 7427   9677   
version = "0.0.0-local"
 7428   9678   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7429   9679   
description = "AWS SDK for AWS Key Management Service"
 7430   9680   
edition = "2021"
 7431   9681   
license = "Apache-2.0"
 7432   9682   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7433   9683   
rust-version = "1.86.0"
 7434   9684   
readme = "README.md"
 7435   9685   
[package.metadata.smithy]
 7436   9686   
codegen-version = "ci"
 7437   9687   
[package.metadata.docs.rs]
 7438   9688   
all-features = true
 7439   9689   
targets = ["x86_64-unknown-linux-gnu"]
 7440   9690   
[dependencies.aws-credential-types]
 7441   9691   
path = "../aws-credential-types"
 7442   9692   
version = "1.2.4"
 7443   9693   
 7444   9694   
[dependencies.aws-runtime]
 7445   9695   
path = "../aws-runtime"
 7446   9696   
version = "1.5.9"
 7447   9697   
 7448   9698   
[dependencies.aws-smithy-async]
 7449   9699   
path = "../aws-smithy-async"
 7450   9700   
version = "1.2.5"
 7451   9701   
 7452   9702   
[dependencies.aws-smithy-http]
 7453   9703   
path = "../aws-smithy-http"
 7454         -
version = "0.62.2"
        9704  +
version = "0.62.3"
 7455   9705   
 7456   9706   
[dependencies.aws-smithy-json]
 7457   9707   
path = "../aws-smithy-json"
 7458   9708   
version = "0.61.4"
 7459   9709   
 7460   9710   
[dependencies.aws-smithy-runtime]
 7461   9711   
path = "../aws-smithy-runtime"
 7462   9712   
features = ["client"]
 7463   9713   
version = "1.8.5"
 7464   9714   
 7465   9715   
[dependencies.aws-smithy-runtime-api]
 7466   9716   
path = "../aws-smithy-runtime-api"
 7467   9717   
features = ["client", "http-02x"]
 7468   9718   
version = "1.8.5"
 7469   9719   
 7470   9720   
[dependencies.aws-smithy-types]
 7471   9721   
path = "../aws-smithy-types"
 7472   9722   
version = "1.3.2"
 7473   9723   
 7474   9724   
[dependencies.aws-types]
 7475   9725   
path = "../aws-types"
 7476   9726   
version = "1.3.8"
 7477   9727   
 7478   9728   
[dependencies.bytes]
 7479   9729   
version = "1.4.0"
 7480   9730   
 7481   9731   
[dependencies.fastrand]
 7482   9732   
version = "2.0.0"
 7483   9733   
 7484   9734   
[dependencies.http]
 7485   9735   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 7486   9736   
index 6518dfc..6b94752 100644
 7487         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
        9737  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 7488   9738   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 7489   9739   
edition = "2021"
 7490   9740   
license = "Apache-2.0"
 7491   9741   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7492   9742   
rust-version = "1.86.0"
 7493   9743   
readme = "README.md"
 7494   9744   
[package.metadata.smithy]
 7495   9745   
codegen-version = "ci"
 7496   9746   
[package.metadata.docs.rs]
 7497   9747   
all-features = true
 7498   9748   
targets = ["x86_64-unknown-linux-gnu"]
 7499   9749   
[dependencies.aws-credential-types]
 7500   9750   
path = "../aws-credential-types"
 7501   9751   
version = "1.2.4"
 7502   9752   
 7503   9753   
[dependencies.aws-runtime]
 7504   9754   
path = "../aws-runtime"
 7505   9755   
features = ["event-stream"]
 7506   9756   
version = "1.5.9"
 7507   9757   
 7508   9758   
[dependencies.aws-smithy-async]
 7509   9759   
path = "../aws-smithy-async"
 7510   9760   
version = "1.2.5"
 7511   9761   
 7512   9762   
[dependencies.aws-smithy-eventstream]
 7513   9763   
path = "../aws-smithy-eventstream"
 7514   9764   
version = "0.60.10"
 7515   9765   
 7516   9766   
[dependencies.aws-smithy-http]
 7517   9767   
path = "../aws-smithy-http"
 7518   9768   
features = ["event-stream"]
 7519         -
version = "0.62.2"
        9769  +
version = "0.62.3"
 7520   9770   
 7521   9771   
[dependencies.aws-smithy-json]
 7522   9772   
path = "../aws-smithy-json"
 7523   9773   
version = "0.61.4"
 7524   9774   
 7525   9775   
[dependencies.aws-smithy-runtime]
 7526   9776   
path = "../aws-smithy-runtime"
 7527   9777   
features = ["client"]
 7528   9778   
version = "1.8.5"
 7529   9779   
 7530   9780   
[dependencies.aws-smithy-runtime-api]
 7531   9781   
path = "../aws-smithy-runtime-api"
 7532   9782   
features = ["client", "http-02x"]
 7533   9783   
version = "1.8.5"
 7534   9784   
 7535   9785   
[dependencies.aws-smithy-types]
 7536   9786   
path = "../aws-smithy-types"
 7537   9787   
version = "1.3.2"
 7538   9788   
 7539   9789   
[dependencies.aws-types]
 7540   9790   
path = "../aws-types"
 7541   9791   
version = "1.3.8"
 7542   9792   
 7543   9793   
[dependencies.bytes]
 7544   9794   
version = "1.4.0"
 7545   9795   
 7546   9796   
[dependencies.fastrand]
 7547   9797   
version = "2.0.0"
 7548   9798   
 7549   9799   
[dependencies.http]
 7550   9800   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 7551   9801   
index dabb0e0..34cbc15 100644
 7552         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
        9802  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 7553   9803   
@@ -1,65 +1,65 @@
 7554   9804   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7555   9805   
[package]
 7556   9806   
name = "aws-sdk-polly"
 7557   9807   
version = "0.0.0-local"
 7558   9808   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7559   9809   
description = "AWS SDK for Amazon Polly"
 7560   9810   
edition = "2021"
 7561   9811   
license = "Apache-2.0"
 7562   9812   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7563   9813   
rust-version = "1.86.0"
 7564   9814   
readme = "README.md"
 7565   9815   
[package.metadata.smithy]
 7566   9816   
codegen-version = "ci"
 7567   9817   
[package.metadata.docs.rs]
 7568   9818   
all-features = true
 7569   9819   
targets = ["x86_64-unknown-linux-gnu"]
 7570   9820   
[dependencies.aws-credential-types]
 7571   9821   
path = "../aws-credential-types"
 7572   9822   
version = "1.2.4"
 7573   9823   
 7574   9824   
[dependencies.aws-runtime]
 7575   9825   
path = "../aws-runtime"
 7576   9826   
version = "1.5.9"
 7577   9827   
 7578   9828   
[dependencies.aws-sigv4]
 7579   9829   
path = "../aws-sigv4"
 7580         -
version = "1.3.3"
        9830  +
version = "1.3.4"
 7581   9831   
 7582   9832   
[dependencies.aws-smithy-async]
 7583   9833   
path = "../aws-smithy-async"
 7584   9834   
version = "1.2.5"
 7585   9835   
 7586   9836   
[dependencies.aws-smithy-http]
 7587   9837   
path = "../aws-smithy-http"
 7588         -
version = "0.62.2"
        9838  +
version = "0.62.3"
 7589   9839   
 7590   9840   
[dependencies.aws-smithy-json]
 7591   9841   
path = "../aws-smithy-json"
 7592   9842   
version = "0.61.4"
 7593   9843   
 7594   9844   
[dependencies.aws-smithy-runtime]
 7595   9845   
path = "../aws-smithy-runtime"
 7596   9846   
features = ["client"]
 7597   9847   
version = "1.8.5"
 7598   9848   
 7599   9849   
[dependencies.aws-smithy-runtime-api]
 7600   9850   
path = "../aws-smithy-runtime-api"
 7601   9851   
features = ["client", "http-02x"]
 7602   9852   
version = "1.8.5"
 7603   9853   
 7604   9854   
[dependencies.aws-smithy-types]
 7605   9855   
path = "../aws-smithy-types"
 7606   9856   
version = "1.3.2"
 7607   9857   
 7608   9858   
[dependencies.aws-types]
 7609   9859   
path = "../aws-types"
 7610   9860   
version = "1.3.8"
 7611   9861   
 7612   9862   
[dependencies.bytes]
 7613   9863   
version = "1.4.0"
 7614   9864   
 7615   9865   
[dependencies.fastrand]
 7616   9866   
version = "2.0.0"
 7617   9867   
 7618   9868   
[dependencies.http]
 7619   9869   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 7620   9870   
index a884716..f3d8713 100644
 7621         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
        9871  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 7622   9872   
@@ -1,61 +1,61 @@
 7623   9873   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7624   9874   
[package]
 7625   9875   
name = "aws-sdk-qldbsession"
 7626   9876   
version = "0.0.0-local"
 7627   9877   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7628   9878   
description = "AWS SDK for Amazon QLDB Session"
 7629   9879   
edition = "2021"
 7630   9880   
license = "Apache-2.0"
 7631   9881   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7632   9882   
rust-version = "1.86.0"
 7633   9883   
readme = "README.md"
 7634   9884   
[package.metadata.smithy]
 7635   9885   
codegen-version = "ci"
 7636   9886   
[package.metadata.docs.rs]
 7637   9887   
all-features = true
 7638   9888   
targets = ["x86_64-unknown-linux-gnu"]
 7639   9889   
[dependencies.aws-credential-types]
 7640   9890   
path = "../aws-credential-types"
 7641   9891   
version = "1.2.4"
 7642   9892   
 7643   9893   
[dependencies.aws-runtime]
 7644   9894   
path = "../aws-runtime"
 7645   9895   
version = "1.5.9"
 7646   9896   
 7647   9897   
[dependencies.aws-smithy-async]
 7648   9898   
path = "../aws-smithy-async"
 7649   9899   
version = "1.2.5"
 7650   9900   
 7651   9901   
[dependencies.aws-smithy-http]
 7652   9902   
path = "../aws-smithy-http"
 7653         -
version = "0.62.2"
        9903  +
version = "0.62.3"
 7654   9904   
 7655   9905   
[dependencies.aws-smithy-json]
 7656   9906   
path = "../aws-smithy-json"
 7657   9907   
version = "0.61.4"
 7658   9908   
 7659   9909   
[dependencies.aws-smithy-runtime]
 7660   9910   
path = "../aws-smithy-runtime"
 7661   9911   
features = ["client"]
 7662   9912   
version = "1.8.5"
 7663   9913   
 7664   9914   
[dependencies.aws-smithy-runtime-api]
 7665   9915   
path = "../aws-smithy-runtime-api"
 7666   9916   
features = ["client", "http-02x"]
 7667   9917   
version = "1.8.5"
 7668   9918   
 7669   9919   
[dependencies.aws-smithy-types]
 7670   9920   
path = "../aws-smithy-types"
 7671   9921   
version = "1.3.2"
 7672   9922   
 7673   9923   
[dependencies.aws-types]
 7674   9924   
path = "../aws-types"
 7675   9925   
version = "1.3.8"
 7676   9926   
 7677   9927   
[dependencies.bytes]
 7678   9928   
version = "1.4.0"
 7679   9929   
 7680   9930   
[dependencies.fastrand]
 7681   9931   
version = "2.0.0"
 7682   9932   
 7683   9933   
[dependencies.http]
 7684   9934   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 7685   9935   
index 32a7dc9..a2c752d 100644
 7686         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
        9936  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 7687   9937   
@@ -1,61 +1,61 @@
 7688   9938   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7689   9939   
[package]
 7690   9940   
name = "aws-sdk-route53"
 7691   9941   
version = "0.0.0-local"
 7692   9942   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7693   9943   
description = "AWS SDK for Amazon Route 53"
 7694   9944   
edition = "2021"
 7695   9945   
license = "Apache-2.0"
 7696   9946   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7697   9947   
rust-version = "1.86.0"
 7698   9948   
readme = "README.md"
 7699   9949   
[package.metadata.smithy]
 7700   9950   
codegen-version = "ci"
 7701   9951   
[package.metadata.docs.rs]
 7702   9952   
all-features = true
 7703   9953   
targets = ["x86_64-unknown-linux-gnu"]
 7704   9954   
[dependencies.aws-credential-types]
 7705   9955   
path = "../aws-credential-types"
 7706   9956   
version = "1.2.4"
 7707   9957   
 7708   9958   
[dependencies.aws-runtime]
 7709   9959   
path = "../aws-runtime"
 7710   9960   
version = "1.5.9"
 7711   9961   
 7712   9962   
[dependencies.aws-smithy-async]
 7713   9963   
path = "../aws-smithy-async"
 7714   9964   
version = "1.2.5"
 7715   9965   
 7716   9966   
[dependencies.aws-smithy-http]
 7717   9967   
path = "../aws-smithy-http"
 7718         -
version = "0.62.2"
        9968  +
version = "0.62.3"
 7719   9969   
 7720   9970   
[dependencies.aws-smithy-json]
 7721   9971   
path = "../aws-smithy-json"
 7722   9972   
version = "0.61.4"
 7723   9973   
 7724   9974   
[dependencies.aws-smithy-runtime]
 7725   9975   
path = "../aws-smithy-runtime"
 7726   9976   
features = ["client"]
 7727   9977   
version = "1.8.5"
 7728   9978   
 7729   9979   
[dependencies.aws-smithy-runtime-api]
 7730   9980   
path = "../aws-smithy-runtime-api"
 7731   9981   
features = ["client", "http-02x"]
 7732   9982   
version = "1.8.5"
 7733   9983   
 7734   9984   
[dependencies.aws-smithy-types]
 7735   9985   
path = "../aws-smithy-types"
 7736   9986   
version = "1.3.2"
 7737   9987   
 7738   9988   
[dependencies.aws-smithy-xml]
 7739   9989   
path = "../aws-smithy-xml"
 7740   9990   
version = "0.60.10"
 7741   9991   
 7742   9992   
[dependencies.aws-types]
 7743   9993   
path = "../aws-types"
 7744   9994   
version = "1.3.8"
 7745   9995   
 7746   9996   
[dependencies.fastrand]
 7747   9997   
version = "2.0.0"
 7748   9998   
 7749   9999   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 7750  10000   
index f65e261..2f6bec0 100644
 7751         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
       10001  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 7752  10002   
@@ -1,75 +1,75 @@
 7753  10003   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7754  10004   
[package]
 7755  10005   
name = "aws-sdk-s3"
 7756  10006   
version = "0.0.0-local"
 7757  10007   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7758  10008   
description = "AWS SDK for Amazon Simple Storage Service"
 7759  10009   
edition = "2021"
 7760  10010   
license = "Apache-2.0"
 7761  10011   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7762  10012   
rust-version = "1.86.0"
 7763  10013   
readme = "README.md"
 7764  10014   
[package.metadata.smithy]
 7765  10015   
codegen-version = "ci"
 7766  10016   
[package.metadata.docs.rs]
 7767  10017   
all-features = true
 7768  10018   
targets = ["x86_64-unknown-linux-gnu"]
 7769  10019   
[dependencies.aws-credential-types]
 7770  10020   
path = "../aws-credential-types"
 7771  10021   
version = "1.2.4"
 7772  10022   
 7773  10023   
[dependencies.aws-runtime]
 7774  10024   
path = "../aws-runtime"
 7775  10025   
features = ["event-stream", "http-02x"]
 7776  10026   
version = "1.5.9"
 7777  10027   
 7778  10028   
[dependencies.aws-sigv4]
 7779  10029   
path = "../aws-sigv4"
 7780         -
version = "1.3.3"
       10030  +
version = "1.3.4"
 7781  10031   
 7782  10032   
[dependencies.aws-smithy-async]
 7783  10033   
path = "../aws-smithy-async"
 7784  10034   
version = "1.2.5"
 7785  10035   
 7786  10036   
[dependencies.aws-smithy-checksums]
 7787  10037   
path = "../aws-smithy-checksums"
 7788  10038   
version = "0.63.5"
 7789  10039   
 7790  10040   
[dependencies.aws-smithy-eventstream]
 7791  10041   
path = "../aws-smithy-eventstream"
 7792  10042   
version = "0.60.10"
 7793  10043   
 7794  10044   
[dependencies.aws-smithy-http]
 7795  10045   
path = "../aws-smithy-http"
 7796  10046   
features = ["event-stream"]
 7797         -
version = "0.62.2"
       10047  +
version = "0.62.3"
 7798  10048   
 7799  10049   
[dependencies.aws-smithy-json]
 7800  10050   
path = "../aws-smithy-json"
 7801  10051   
version = "0.61.4"
 7802  10052   
 7803  10053   
[dependencies.aws-smithy-runtime]
 7804  10054   
path = "../aws-smithy-runtime"
 7805  10055   
features = ["client"]
 7806  10056   
version = "1.8.5"
 7807  10057   
 7808  10058   
[dependencies.aws-smithy-runtime-api]
 7809  10059   
path = "../aws-smithy-runtime-api"
 7810  10060   
features = ["client", "http-02x"]
 7811  10061   
version = "1.8.5"
 7812  10062   
 7813  10063   
[dependencies.aws-smithy-types]
 7814  10064   
path = "../aws-smithy-types"
 7815  10065   
version = "1.3.2"
 7816  10066   
 7817  10067   
[dependencies.aws-smithy-xml]
 7818  10068   
path = "../aws-smithy-xml"
 7819  10069   
version = "0.60.10"
 7820  10070   
 7821  10071   
[dependencies.aws-types]
 7822  10072   
path = "../aws-types"
 7823  10073   
version = "1.3.8"
 7824  10074   
 7825  10075   
[dependencies.bytes]
 7826  10076   
version = "1.4.0"
 7827  10077   
 7828  10078   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 7829  10079   
index b4d1cdd..861c0cc 100644
 7830         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
       10080  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 7831  10081   
@@ -1,61 +1,61 @@
 7832  10082   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7833  10083   
[package]
 7834  10084   
name = "aws-sdk-s3control"
 7835  10085   
version = "0.0.0-local"
 7836  10086   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7837  10087   
description = "AWS SDK for AWS S3 Control"
 7838  10088   
edition = "2021"
 7839  10089   
license = "Apache-2.0"
 7840  10090   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7841  10091   
rust-version = "1.86.0"
 7842  10092   
readme = "README.md"
 7843  10093   
[package.metadata.smithy]
 7844  10094   
codegen-version = "ci"
 7845  10095   
[package.metadata.docs.rs]
 7846  10096   
all-features = true
 7847  10097   
targets = ["x86_64-unknown-linux-gnu"]
 7848  10098   
[dependencies.aws-credential-types]
 7849  10099   
path = "../aws-credential-types"
 7850  10100   
version = "1.2.4"
 7851  10101   
 7852  10102   
[dependencies.aws-runtime]
 7853  10103   
path = "../aws-runtime"
 7854  10104   
version = "1.5.9"
 7855  10105   
 7856  10106   
[dependencies.aws-smithy-async]
 7857  10107   
path = "../aws-smithy-async"
 7858  10108   
version = "1.2.5"
 7859  10109   
 7860  10110   
[dependencies.aws-smithy-http]
 7861  10111   
path = "../aws-smithy-http"
 7862         -
version = "0.62.2"
       10112  +
version = "0.62.3"
 7863  10113   
 7864  10114   
[dependencies.aws-smithy-json]
 7865  10115   
path = "../aws-smithy-json"
 7866  10116   
version = "0.61.4"
 7867  10117   
 7868  10118   
[dependencies.aws-smithy-runtime]
 7869  10119   
path = "../aws-smithy-runtime"
 7870  10120   
features = ["client"]
 7871  10121   
version = "1.8.5"
 7872  10122   
 7873  10123   
[dependencies.aws-smithy-runtime-api]
 7874  10124   
path = "../aws-smithy-runtime-api"
 7875  10125   
features = ["client", "http-02x"]
 7876  10126   
version = "1.8.5"
 7877  10127   
 7878  10128   
[dependencies.aws-smithy-types]
 7879  10129   
path = "../aws-smithy-types"
 7880  10130   
version = "1.3.2"
 7881  10131   
 7882  10132   
[dependencies.aws-smithy-xml]
 7883  10133   
path = "../aws-smithy-xml"
 7884  10134   
version = "0.60.10"
 7885  10135   
 7886  10136   
[dependencies.aws-types]
 7887  10137   
path = "../aws-types"
 7888  10138   
version = "1.3.8"
 7889  10139   
 7890  10140   
[dependencies.fastrand]
 7891  10141   
version = "2.0.0"
 7892  10142   
 7893  10143   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 7894  10144   
index 2cde182..fc367f4 100644
 7895         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
       10145  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 7896  10146   
@@ -1,61 +1,61 @@
 7897  10147   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7898  10148   
[package]
 7899  10149   
name = "aws-sdk-sso"
 7900  10150   
version = "0.0.0-local"
 7901  10151   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7902  10152   
description = "AWS SDK for AWS Single Sign-On"
 7903  10153   
edition = "2021"
 7904  10154   
license = "Apache-2.0"
 7905  10155   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7906  10156   
rust-version = "1.86.0"
 7907  10157   
readme = "README.md"
 7908  10158   
[package.metadata.smithy]
 7909  10159   
codegen-version = "ci"
 7910  10160   
[package.metadata.docs.rs]
 7911  10161   
all-features = true
 7912  10162   
targets = ["x86_64-unknown-linux-gnu"]
 7913  10163   
[dependencies.aws-credential-types]
 7914  10164   
path = "../aws-credential-types"
 7915  10165   
version = "1.2.4"
 7916  10166   
 7917  10167   
[dependencies.aws-runtime]
 7918  10168   
path = "../aws-runtime"
 7919  10169   
version = "1.5.9"
 7920  10170   
 7921  10171   
[dependencies.aws-smithy-async]
 7922  10172   
path = "../aws-smithy-async"
 7923  10173   
version = "1.2.5"
 7924  10174   
 7925  10175   
[dependencies.aws-smithy-http]
 7926  10176   
path = "../aws-smithy-http"
 7927         -
version = "0.62.2"
       10177  +
version = "0.62.3"
 7928  10178   
 7929  10179   
[dependencies.aws-smithy-json]
 7930  10180   
path = "../aws-smithy-json"
 7931  10181   
version = "0.61.4"
 7932  10182   
 7933  10183   
[dependencies.aws-smithy-runtime]
 7934  10184   
path = "../aws-smithy-runtime"
 7935  10185   
features = ["client"]
 7936  10186   
version = "1.8.5"
 7937  10187   
 7938  10188   
[dependencies.aws-smithy-runtime-api]
 7939  10189   
path = "../aws-smithy-runtime-api"
 7940  10190   
features = ["client", "http-02x"]
 7941  10191   
version = "1.8.5"
 7942  10192   
 7943  10193   
[dependencies.aws-smithy-types]
 7944  10194   
path = "../aws-smithy-types"
 7945  10195   
version = "1.3.2"
 7946  10196   
 7947  10197   
[dependencies.aws-types]
 7948  10198   
path = "../aws-types"
 7949  10199   
version = "1.3.8"
 7950  10200   
 7951  10201   
[dependencies.bytes]
 7952  10202   
version = "1.4.0"
 7953  10203   
 7954  10204   
[dependencies.fastrand]
 7955  10205   
version = "2.0.0"
 7956  10206   
 7957  10207   
[dependencies.http]
 7958  10208   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 7959  10209   
index 7a34c16..588d0bd 100644
 7960         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
       10210  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 7961  10211   
@@ -1,61 +1,61 @@
 7962  10212   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7963  10213   
[package]
 7964  10214   
name = "aws-sdk-ssooidc"
 7965  10215   
version = "0.0.0-local"
 7966  10216   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7967  10217   
description = "AWS SDK for AWS SSO OIDC"
 7968  10218   
edition = "2021"
 7969  10219   
license = "Apache-2.0"
 7970  10220   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7971  10221   
rust-version = "1.86.0"
 7972  10222   
readme = "README.md"
 7973  10223   
[package.metadata.smithy]
 7974  10224   
codegen-version = "ci"
 7975  10225   
[package.metadata.docs.rs]
 7976  10226   
all-features = true
 7977  10227   
targets = ["x86_64-unknown-linux-gnu"]
 7978  10228   
[dependencies.aws-credential-types]
 7979  10229   
path = "../aws-credential-types"
 7980  10230   
version = "1.2.4"
 7981  10231   
 7982  10232   
[dependencies.aws-runtime]
 7983  10233   
path = "../aws-runtime"
 7984  10234   
version = "1.5.9"
 7985  10235   
 7986  10236   
[dependencies.aws-smithy-async]
 7987  10237   
path = "../aws-smithy-async"
 7988  10238   
version = "1.2.5"
 7989  10239   
 7990  10240   
[dependencies.aws-smithy-http]
 7991  10241   
path = "../aws-smithy-http"
 7992         -
version = "0.62.2"
       10242  +
version = "0.62.3"
 7993  10243   
 7994  10244   
[dependencies.aws-smithy-json]
 7995  10245   
path = "../aws-smithy-json"
 7996  10246   
version = "0.61.4"
 7997  10247   
 7998  10248   
[dependencies.aws-smithy-runtime]
 7999  10249   
path = "../aws-smithy-runtime"
 8000  10250   
features = ["client"]
 8001  10251   
version = "1.8.5"
 8002  10252   
 8003  10253   
[dependencies.aws-smithy-runtime-api]
 8004  10254   
path = "../aws-smithy-runtime-api"
 8005  10255   
features = ["client", "http-02x"]
 8006  10256   
version = "1.8.5"
 8007  10257   
 8008  10258   
[dependencies.aws-smithy-types]
 8009  10259   
path = "../aws-smithy-types"
 8010  10260   
version = "1.3.2"
 8011  10261   
 8012  10262   
[dependencies.aws-types]
 8013  10263   
path = "../aws-types"
 8014  10264   
version = "1.3.8"
 8015  10265   
 8016  10266   
[dependencies.bytes]
 8017  10267   
version = "1.4.0"
 8018  10268   
 8019  10269   
[dependencies.fastrand]
 8020  10270   
version = "2.0.0"
 8021  10271   
 8022  10272   
[dependencies.http]
 8023  10273   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 8024  10274   
index 895dfb3..f2ce34e 100644
 8025         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
       10275  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 8026  10276   
@@ -1,61 +1,61 @@
 8027  10277   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8028  10278   
[package]
 8029  10279   
name = "aws-sdk-sts"
 8030  10280   
version = "0.0.0-local"
 8031  10281   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8032  10282   
description = "AWS SDK for AWS Security Token Service"
 8033  10283   
edition = "2021"
 8034  10284   
license = "Apache-2.0"
 8035  10285   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8036  10286   
rust-version = "1.86.0"
 8037  10287   
readme = "README.md"
 8038  10288   
[package.metadata.smithy]
 8039  10289   
codegen-version = "ci"
 8040  10290   
[package.metadata.docs.rs]
 8041  10291   
all-features = true
 8042  10292   
targets = ["x86_64-unknown-linux-gnu"]
 8043  10293   
[dependencies.aws-credential-types]
 8044  10294   
path = "../aws-credential-types"
 8045  10295   
version = "1.2.4"
 8046  10296   
 8047  10297   
[dependencies.aws-runtime]
 8048  10298   
path = "../aws-runtime"
 8049  10299   
version = "1.5.9"
 8050  10300   
 8051  10301   
[dependencies.aws-smithy-async]
 8052  10302   
path = "../aws-smithy-async"
 8053  10303   
version = "1.2.5"
 8054  10304   
 8055  10305   
[dependencies.aws-smithy-http]
 8056  10306   
path = "../aws-smithy-http"
 8057         -
version = "0.62.2"
       10307  +
version = "0.62.3"
 8058  10308   
 8059  10309   
[dependencies.aws-smithy-json]
 8060  10310   
path = "../aws-smithy-json"
 8061  10311   
version = "0.61.4"
 8062  10312   
 8063  10313   
[dependencies.aws-smithy-query]
 8064  10314   
path = "../aws-smithy-query"
 8065  10315   
version = "0.60.7"
 8066  10316   
 8067  10317   
[dependencies.aws-smithy-runtime]
 8068  10318   
path = "../aws-smithy-runtime"
 8069  10319   
features = ["client"]
 8070  10320   
version = "1.8.5"
 8071  10321   
 8072  10322   
[dependencies.aws-smithy-runtime-api]
 8073  10323   
path = "../aws-smithy-runtime-api"
 8074  10324   
features = ["client", "http-02x"]
 8075  10325   
version = "1.8.5"
 8076  10326   
 8077  10327   
[dependencies.aws-smithy-types]
 8078  10328   
path = "../aws-smithy-types"
 8079  10329   
version = "1.3.2"
 8080  10330   
 8081  10331   
[dependencies.aws-smithy-xml]
 8082  10332   
path = "../aws-smithy-xml"
 8083  10333   
version = "0.60.10"
 8084  10334   
 8085  10335   
[dependencies.aws-types]
 8086  10336   
path = "../aws-types"
 8087  10337   
version = "1.3.8"
 8088  10338   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 8089  10339   
index d556561..91178b6 100644
 8090         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
       10340  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 8091  10341   
@@ -1,61 +1,61 @@
 8092  10342   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8093  10343   
[package]
 8094  10344   
name = "aws-sdk-timestreamquery"
 8095  10345   
version = "0.0.0-local"
 8096  10346   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8097  10347   
description = "AWS SDK for Amazon Timestream Query"
 8098  10348   
edition = "2021"
 8099  10349   
license = "Apache-2.0"
 8100  10350   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8101  10351   
rust-version = "1.86.0"
 8102  10352   
readme = "README.md"
 8103  10353   
[package.metadata.smithy]
 8104  10354   
codegen-version = "ci"
 8105  10355   
[package.metadata.docs.rs]
 8106  10356   
all-features = true
 8107  10357   
targets = ["x86_64-unknown-linux-gnu"]
 8108  10358   
[dependencies.aws-credential-types]
 8109  10359   
path = "../aws-credential-types"
 8110  10360   
version = "1.2.4"
 8111  10361   
 8112  10362   
[dependencies.aws-runtime]
 8113  10363   
path = "../aws-runtime"
 8114  10364   
version = "1.5.9"
 8115  10365   
 8116  10366   
[dependencies.aws-smithy-async]
 8117  10367   
path = "../aws-smithy-async"
 8118  10368   
version = "1.2.5"
 8119  10369   
 8120  10370   
[dependencies.aws-smithy-http]
 8121  10371   
path = "../aws-smithy-http"
 8122         -
version = "0.62.2"
       10372  +
version = "0.62.3"
 8123  10373   
 8124  10374   
[dependencies.aws-smithy-json]
 8125  10375   
path = "../aws-smithy-json"
 8126  10376   
version = "0.61.4"
 8127  10377   
 8128  10378   
[dependencies.aws-smithy-runtime]
 8129  10379   
path = "../aws-smithy-runtime"
 8130  10380   
features = ["client"]
 8131  10381   
version = "1.8.5"
 8132  10382   
 8133  10383   
[dependencies.aws-smithy-runtime-api]
 8134  10384   
path = "../aws-smithy-runtime-api"
 8135  10385   
features = ["client", "http-02x"]
 8136  10386   
version = "1.8.5"
 8137  10387   
 8138  10388   
[dependencies.aws-smithy-types]
 8139  10389   
path = "../aws-smithy-types"
 8140  10390   
version = "1.3.2"
 8141  10391   
 8142  10392   
[dependencies.aws-types]
 8143  10393   
path = "../aws-types"
 8144  10394   
version = "1.3.8"
 8145  10395   
 8146  10396   
[dependencies.bytes]
 8147  10397   
version = "1.4.0"
 8148  10398   
 8149  10399   
[dependencies.fastrand]
 8150  10400   
version = "2.0.0"
 8151  10401   
 8152  10402   
[dependencies.http]
 8153  10403   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 8154  10404   
index 0c56e4c..95731e3 100644
 8155         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
       10405  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 8156  10406   
@@ -1,61 +1,61 @@
 8157  10407   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8158  10408   
[package]
 8159  10409   
name = "aws-sdk-timestreamwrite"
 8160  10410   
version = "0.0.0-local"
 8161  10411   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8162  10412   
description = "AWS SDK for Amazon Timestream Write"
 8163  10413   
edition = "2021"
 8164  10414   
license = "Apache-2.0"
 8165  10415   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8166  10416   
rust-version = "1.86.0"
 8167  10417   
readme = "README.md"
 8168  10418   
[package.metadata.smithy]
 8169  10419   
codegen-version = "ci"
 8170  10420   
[package.metadata.docs.rs]
 8171  10421   
all-features = true
 8172  10422   
targets = ["x86_64-unknown-linux-gnu"]
 8173  10423   
[dependencies.aws-credential-types]
 8174  10424   
path = "../aws-credential-types"
 8175  10425   
version = "1.2.4"
 8176  10426   
 8177  10427   
[dependencies.aws-runtime]
 8178  10428   
path = "../aws-runtime"
 8179  10429   
version = "1.5.9"
 8180  10430   
 8181  10431   
[dependencies.aws-smithy-async]
 8182  10432   
path = "../aws-smithy-async"
 8183  10433   
version = "1.2.5"
 8184  10434   
 8185  10435   
[dependencies.aws-smithy-http]
 8186  10436   
path = "../aws-smithy-http"
 8187         -
version = "0.62.2"
       10437  +
version = "0.62.3"
 8188  10438   
 8189  10439   
[dependencies.aws-smithy-json]
 8190  10440   
path = "../aws-smithy-json"
 8191  10441   
version = "0.61.4"
 8192  10442   
 8193  10443   
[dependencies.aws-smithy-runtime]
 8194  10444   
path = "../aws-smithy-runtime"
 8195  10445   
features = ["client"]
 8196  10446   
version = "1.8.5"
 8197  10447   
 8198  10448   
[dependencies.aws-smithy-runtime-api]
 8199  10449   
path = "../aws-smithy-runtime-api"
 8200  10450   
features = ["client", "http-02x"]
 8201  10451   
version = "1.8.5"
 8202  10452   
 8203  10453   
[dependencies.aws-smithy-types]
 8204  10454   
path = "../aws-smithy-types"
 8205  10455   
version = "1.3.2"
 8206  10456   
 8207  10457   
[dependencies.aws-types]
 8208  10458   
path = "../aws-types"
 8209  10459   
version = "1.3.8"
 8210  10460   
 8211  10461   
[dependencies.bytes]
 8212  10462   
version = "1.4.0"
 8213  10463   
 8214  10464   
[dependencies.fastrand]
 8215  10465   
version = "2.0.0"
 8216  10466   
 8217  10467   
[dependencies.http]
 8218  10468   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 8219  10469   
index 5b35037..9fb220a 100644
 8220         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       10470  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 8221  10471   
@@ -1,71 +1,71 @@
 8222  10472   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8223  10473   
[package]
 8224  10474   
name = "aws-sdk-transcribestreaming"
 8225  10475   
version = "0.0.0-local"
 8226  10476   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8227  10477   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 8228  10478   
edition = "2021"
 8229  10479   
license = "Apache-2.0"
 8230  10480   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8231  10481   
rust-version = "1.86.0"
 8232  10482   
readme = "README.md"
 8233  10483   
[package.metadata.smithy]
 8234  10484   
codegen-version = "ci"
 8235  10485   
[package.metadata.docs.rs]
 8236  10486   
all-features = true
 8237  10487   
targets = ["x86_64-unknown-linux-gnu"]
 8238  10488   
[dependencies.aws-credential-types]
 8239  10489   
path = "../aws-credential-types"
 8240  10490   
version = "1.2.4"
 8241  10491   
 8242  10492   
[dependencies.aws-runtime]
 8243  10493   
path = "../aws-runtime"
 8244  10494   
features = ["event-stream"]
 8245  10495   
version = "1.5.9"
 8246  10496   
 8247  10497   
[dependencies.aws-sigv4]
 8248  10498   
path = "../aws-sigv4"
 8249         -
version = "1.3.3"
       10499  +
version = "1.3.4"
 8250  10500   
 8251  10501   
[dependencies.aws-smithy-async]
 8252  10502   
path = "../aws-smithy-async"
 8253  10503   
version = "1.2.5"
 8254  10504   
 8255  10505   
[dependencies.aws-smithy-eventstream]
 8256  10506   
path = "../aws-smithy-eventstream"
 8257  10507   
version = "0.60.10"
 8258  10508   
 8259  10509   
[dependencies.aws-smithy-http]
 8260  10510   
path = "../aws-smithy-http"
 8261  10511   
features = ["event-stream"]
 8262         -
version = "0.62.2"
       10512  +
version = "0.62.3"
 8263  10513   
 8264  10514   
[dependencies.aws-smithy-json]
 8265  10515   
path = "../aws-smithy-json"
 8266  10516   
version = "0.61.4"
 8267  10517   
 8268  10518   
[dependencies.aws-smithy-runtime]
 8269  10519   
path = "../aws-smithy-runtime"
 8270  10520   
features = ["client"]
 8271  10521   
version = "1.8.5"
 8272  10522