Add four, basic fuzz tests.

This change adds fuzzing tests for:
  ∙ Certificate parsing
  ∙ Private key parsing
  ∙ ClientHello parsing
  ∙ Server first flow (ServerHello, Certificate, etc) parsing.

Change-Id: I5f53282263eaaff69b1a03c819cca73750433653
Reviewed-on: https://boringssl-review.googlesource.com/6460
Reviewed-by: Adam Langley <agl@google.com>
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 54c71eb..c05e645 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -80,6 +80,16 @@
  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11 -D_XOPEN_SOURCE=700")
 endif()
 
+if(FUZZ)
+  if(!CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+    message("You need to build with Clang for fuzzing to work")
+  endif()
+
+  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsanitize=address -fsanitize-coverage=edge,indirect-calls")
+  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=address -fsanitize-coverage=edge,indirect-calls")
+  set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_C_FLAGS} -fsanitize=address")
+endif()
+
 add_definitions(-DBORINGSSL_IMPLEMENTATION)
 
 if (BUILD_SHARED_LIBS)
@@ -147,6 +157,10 @@
 add_subdirectory(tool)
 add_subdirectory(decrepit)
 
+if(FUZZ)
+  add_subdirectory(fuzz)
+endif()
+
 if (NOT ${CMAKE_VERSION} VERSION_LESS "3.2")
   # USES_TERMINAL is only available in CMake 3.2 or later.
   set(MAYBE_USES_TERMINAL USES_TERMINAL)
diff --git a/FUZZING.md b/FUZZING.md
new file mode 100644
index 0000000..db7bb91
--- /dev/null
+++ b/FUZZING.md
@@ -0,0 +1,25 @@
+# Fuzz testing
+
+Modern fuzz testers are very effective and we wish to use them to ensure that no silly bugs creep into BoringSSL.
+
+We primarily use Clang's [libFuzzer](http://llvm.org/docs/LibFuzzer.html) for fuzz testing and there are a number of fuzz testing functions in `fuzz/`. They are not built by default because they require libFuzzer at build time.
+
+In order to build the fuzz tests you will need at least Clang 3.7. Pass `-DFUZZ` on the CMake command line and enable building BoringSSL with coverage and AddressSanitizer, and to build the fuzz test binaries. In order for the fuzz tests to link, the linker needs to find libFuzzer. This is not commonly provided and you may need to download the [Clang source code](http://llvm.org/releases/download.html) and do the following:
+
+```
+cd llvm-3.7.0.src/lib
+clang -c -g -O2 -std=c++11 Fuzzer/*.cpp -IFuzzer
+ar q libFuzzer.a *.o
+sudo cp libFuzzer.a /usr/lib
+sudo chmod a+r /usr/lib/libFuzzer.a
+```
+
+From the `build/` directory, you can then run the fuzzers. For example:
+
+```
+./fuzz/cert -max_len=4000 -jobs=32 -workers=32 ../fuzz/cert_corpus/
+```
+
+The `max_len` argument is often important because, without it, libFuzzer defaults to limiting all test cases to 64 bytes, which is often insufficient for the formats that we wish to fuzz. The arguments to `jobs` and `workers` should be the number of cores that you wish to dedicate to fuzzing.
+
+There are directories in `fuzz/` for each of the fuzzing tests which contain seed files for fuzzing. Some of the seed files were generated manually but many of them are “interesting” results generated by the fuzzing itself. (Where “interesting” means that it triggered a previously unknown path in the code.)
diff --git a/README.md b/README.md
index 142fc0a..d8a65c2 100644
--- a/README.md
+++ b/README.md
@@ -27,3 +27,4 @@
   * [BUILDING.md](/BUILDING.md): how to build BoringSSL
   * [STYLE.md](/STYLE.md): rules and guidelines for coding style.
   * include/openssl: public headers with API documentation in comments. Also [available online](https://commondatastorage.googleapis.com/chromium-boringssl-docs/headers.html).
+  * [FUZZING.md](/FUZZING.md): information about fuzzing BoringSSL.
diff --git a/fuzz/CMakeLists.txt b/fuzz/CMakeLists.txt
new file mode 100644
index 0000000..0453e7c
--- /dev/null
+++ b/fuzz/CMakeLists.txt
@@ -0,0 +1,39 @@
+include_directories(../include)
+
+add_executable(
+  privkey
+
+  privkey.cc
+)
+
+target_link_libraries(privkey Fuzzer)
+target_link_libraries(privkey crypto)
+
+add_executable(
+  cert
+
+  cert.cc
+)
+
+target_link_libraries(cert Fuzzer)
+target_link_libraries(cert crypto)
+
+add_executable(
+  server
+
+  server.cc
+)
+
+target_link_libraries(server Fuzzer)
+target_link_libraries(server crypto)
+target_link_libraries(server ssl)
+
+add_executable(
+  client
+
+  client.cc
+)
+
+target_link_libraries(client Fuzzer)
+target_link_libraries(client crypto)
+target_link_libraries(client ssl)
diff --git a/fuzz/cert.cc b/fuzz/cert.cc
new file mode 100644
index 0000000..ad40a31
--- /dev/null
+++ b/fuzz/cert.cc
@@ -0,0 +1,7 @@
+#include <openssl/x509.h>
+
+extern "C" int LLVMFuzzerTestOneInput(uint8_t *buf, size_t len) {
+  const uint8_t *bufp = buf;
+  X509_free(d2i_X509(NULL, &bufp, len));
+  return 0;
+}
diff --git a/fuzz/cert_corpus/003c6f57b1e485b75bdb524b7c141350a2f86ec2 b/fuzz/cert_corpus/003c6f57b1e485b75bdb524b7c141350a2f86ec2
new file mode 100644
index 0000000..d6d19d1
--- /dev/null
+++ b/fuzz/cert_corpus/003c6f57b1e485b75bdb524b7c141350a2f86ec2
Binary files differ
diff --git a/fuzz/cert_corpus/00591f1dde4cf571e013dcd11f40e2944cfc8715 b/fuzz/cert_corpus/00591f1dde4cf571e013dcd11f40e2944cfc8715
new file mode 100644
index 0000000..eefab74
--- /dev/null
+++ b/fuzz/cert_corpus/00591f1dde4cf571e013dcd11f40e2944cfc8715
Binary files differ
diff --git a/fuzz/cert_corpus/01705fb53f7cc35f64e5796c78dad8abc6cf25ce b/fuzz/cert_corpus/01705fb53f7cc35f64e5796c78dad8abc6cf25ce
new file mode 100644
index 0000000..b7da84e
--- /dev/null
+++ b/fuzz/cert_corpus/01705fb53f7cc35f64e5796c78dad8abc6cf25ce
Binary files differ
diff --git a/fuzz/cert_corpus/031c5183d8c8c560e8e1818ff82aabf33973f770 b/fuzz/cert_corpus/031c5183d8c8c560e8e1818ff82aabf33973f770
new file mode 100644
index 0000000..f22c66f
--- /dev/null
+++ b/fuzz/cert_corpus/031c5183d8c8c560e8e1818ff82aabf33973f770
@@ -0,0 +1 @@
+Ÿ­œ¹†
\ No newline at end of file
diff --git a/fuzz/cert_corpus/04ed1e2c50886acd723b3a78d4bafd49938bd14d b/fuzz/cert_corpus/04ed1e2c50886acd723b3a78d4bafd49938bd14d
new file mode 100644
index 0000000..2765f00
--- /dev/null
+++ b/fuzz/cert_corpus/04ed1e2c50886acd723b3a78d4bafd49938bd14d
@@ -0,0 +1 @@
+0†:;€0
\ No newline at end of file
diff --git a/fuzz/cert_corpus/0694a2168fe7699e2dcabe3386a80bd4209094fc b/fuzz/cert_corpus/0694a2168fe7699e2dcabe3386a80bd4209094fc
new file mode 100644
index 0000000..2f9e77f
--- /dev/null
+++ b/fuzz/cert_corpus/0694a2168fe7699e2dcabe3386a80bd4209094fc
Binary files differ
diff --git a/fuzz/cert_corpus/0853174f70d58b195813fbdc716c1a4f4b227ed2 b/fuzz/cert_corpus/0853174f70d58b195813fbdc716c1a4f4b227ed2
new file mode 100644
index 0000000..2b1aea2
--- /dev/null
+++ b/fuzz/cert_corpus/0853174f70d58b195813fbdc716c1a4f4b227ed2
@@ -0,0 +1 @@
+0€0€ÿœ°†(;€€1’hí A0‚
\ No newline at end of file
diff --git a/fuzz/cert_corpus/094d3581e71a4316a567e43e6ebfa63b95196b8e b/fuzz/cert_corpus/094d3581e71a4316a567e43e6ebfa63b95196b8e
new file mode 100644
index 0000000..8d21c6f
--- /dev/null
+++ b/fuzz/cert_corpus/094d3581e71a4316a567e43e6ebfa63b95196b8e
Binary files differ
diff --git a/fuzz/cert_corpus/0b2f2af22568510301982a60fba3763b6ca92409 b/fuzz/cert_corpus/0b2f2af22568510301982a60fba3763b6ca92409
new file mode 100644
index 0000000..d48401c
--- /dev/null
+++ b/fuzz/cert_corpus/0b2f2af22568510301982a60fba3763b6ca92409
Binary files differ
diff --git a/fuzz/cert_corpus/0c30def9baf58c5be015cede0594b4bd73507f00 b/fuzz/cert_corpus/0c30def9baf58c5be015cede0594b4bd73507f00
new file mode 100644
index 0000000..67f9146
--- /dev/null
+++ b/fuzz/cert_corpus/0c30def9baf58c5be015cede0594b4bd73507f00
Binary files differ
diff --git a/fuzz/cert_corpus/0d538ac33c112193da6c78e9039027f3325e9990 b/fuzz/cert_corpus/0d538ac33c112193da6c78e9039027f3325e9990
new file mode 100644
index 0000000..0f38c6f
--- /dev/null
+++ b/fuzz/cert_corpus/0d538ac33c112193da6c78e9039027f3325e9990
@@ -0,0 +1 @@
+¿÷œ¹0†
\ No newline at end of file
diff --git a/fuzz/cert_corpus/0db3ab78e42c2aecbc7b898501c4f91ba91c200f b/fuzz/cert_corpus/0db3ab78e42c2aecbc7b898501c4f91ba91c200f
new file mode 100644
index 0000000..24f68d9
--- /dev/null
+++ b/fuzz/cert_corpus/0db3ab78e42c2aecbc7b898501c4f91ba91c200f
Binary files differ
diff --git a/fuzz/cert_corpus/0eb5037935ba1c2791f3b7e9bc8470c3c60d2aff b/fuzz/cert_corpus/0eb5037935ba1c2791f3b7e9bc8470c3c60d2aff
new file mode 100644
index 0000000..1c8ce6f
--- /dev/null
+++ b/fuzz/cert_corpus/0eb5037935ba1c2791f3b7e9bc8470c3c60d2aff
@@ -0,0 +1 @@
+0€
\ No newline at end of file
diff --git a/fuzz/cert_corpus/1108c80f8912d5d9492de40e48dbdb7e44ae4a8c b/fuzz/cert_corpus/1108c80f8912d5d9492de40e48dbdb7e44ae4a8c
new file mode 100644
index 0000000..d30626c
--- /dev/null
+++ b/fuzz/cert_corpus/1108c80f8912d5d9492de40e48dbdb7e44ae4a8c
Binary files differ
diff --git a/fuzz/cert_corpus/1173445eb10e631879bf6b5cc168e2b8fb89dbdf b/fuzz/cert_corpus/1173445eb10e631879bf6b5cc168e2b8fb89dbdf
new file mode 100644
index 0000000..660f0b0
--- /dev/null
+++ b/fuzz/cert_corpus/1173445eb10e631879bf6b5cc168e2b8fb89dbdf
Binary files differ
diff --git a/fuzz/cert_corpus/11cf2fd91b0edc11a509859032ebbfe89675c0c4 b/fuzz/cert_corpus/11cf2fd91b0edc11a509859032ebbfe89675c0c4
new file mode 100644
index 0000000..065d35b
--- /dev/null
+++ b/fuzz/cert_corpus/11cf2fd91b0edc11a509859032ebbfe89675c0c4
Binary files differ
diff --git a/fuzz/cert_corpus/1233d3b329be1220bff82db29a9497a7000e4b33 b/fuzz/cert_corpus/1233d3b329be1220bff82db29a9497a7000e4b33
new file mode 100644
index 0000000..587b264
--- /dev/null
+++ b/fuzz/cert_corpus/1233d3b329be1220bff82db29a9497a7000e4b33
Binary files differ
diff --git a/fuzz/cert_corpus/148fc92ab76dab6ffbb59a544e9174ecf32f187b b/fuzz/cert_corpus/148fc92ab76dab6ffbb59a544e9174ecf32f187b
new file mode 100644
index 0000000..90f7ca4
--- /dev/null
+++ b/fuzz/cert_corpus/148fc92ab76dab6ffbb59a544e9174ecf32f187b
Binary files differ
diff --git a/fuzz/cert_corpus/152bd97b8a6e893d704db2947e31f2e7dd7f9c63 b/fuzz/cert_corpus/152bd97b8a6e893d704db2947e31f2e7dd7f9c63
new file mode 100644
index 0000000..09c1daf
--- /dev/null
+++ b/fuzz/cert_corpus/152bd97b8a6e893d704db2947e31f2e7dd7f9c63
Binary files differ
diff --git a/fuzz/cert_corpus/162f227ef1629ac9a11a433bf124d297aedac5ef b/fuzz/cert_corpus/162f227ef1629ac9a11a433bf124d297aedac5ef
new file mode 100644
index 0000000..e63653d
--- /dev/null
+++ b/fuzz/cert_corpus/162f227ef1629ac9a11a433bf124d297aedac5ef
Binary files differ
diff --git a/fuzz/cert_corpus/1a1cb7c7bc8bbd96a752a6dde3129a9839a0a56d b/fuzz/cert_corpus/1a1cb7c7bc8bbd96a752a6dde3129a9839a0a56d
new file mode 100644
index 0000000..a897887
--- /dev/null
+++ b/fuzz/cert_corpus/1a1cb7c7bc8bbd96a752a6dde3129a9839a0a56d
@@ -0,0 +1 @@
+0Ž‚€0‚h )1hö|%0‚€Ó
\ No newline at end of file
diff --git a/fuzz/cert_corpus/1a75d3e2d9ee4c34fb8d7506be6b2d762f6215d9 b/fuzz/cert_corpus/1a75d3e2d9ee4c34fb8d7506be6b2d762f6215d9
new file mode 100644
index 0000000..dbac0f3
--- /dev/null
+++ b/fuzz/cert_corpus/1a75d3e2d9ee4c34fb8d7506be6b2d762f6215d9
Binary files differ
diff --git a/fuzz/cert_corpus/1b9384af3bcfce2b1cb34dcc4541fc1177e18dae b/fuzz/cert_corpus/1b9384af3bcfce2b1cb34dcc4541fc1177e18dae
new file mode 100644
index 0000000..b33f9cc
--- /dev/null
+++ b/fuzz/cert_corpus/1b9384af3bcfce2b1cb34dcc4541fc1177e18dae
Binary files differ
diff --git a/fuzz/cert_corpus/1dc3882d4bcccb325751803b817489c3715db4cc b/fuzz/cert_corpus/1dc3882d4bcccb325751803b817489c3715db4cc
new file mode 100644
index 0000000..6d0b7eb
--- /dev/null
+++ b/fuzz/cert_corpus/1dc3882d4bcccb325751803b817489c3715db4cc
@@ -0,0 +1 @@

\ No newline at end of file
diff --git a/fuzz/cert_corpus/1e177827da539595862d41ee1f470e3654a77d04 b/fuzz/cert_corpus/1e177827da539595862d41ee1f470e3654a77d04
new file mode 100644
index 0000000..8972c28
--- /dev/null
+++ b/fuzz/cert_corpus/1e177827da539595862d41ee1f470e3654a77d04
Binary files differ
diff --git a/fuzz/cert_corpus/208db41327b2152bd0b3cdb3392358dcc72951f8 b/fuzz/cert_corpus/208db41327b2152bd0b3cdb3392358dcc72951f8
new file mode 100644
index 0000000..efb4f9b
--- /dev/null
+++ b/fuzz/cert_corpus/208db41327b2152bd0b3cdb3392358dcc72951f8
Binary files differ
diff --git a/fuzz/cert_corpus/22a7767a68debe1a1cfdb43355d2c9332ac88409 b/fuzz/cert_corpus/22a7767a68debe1a1cfdb43355d2c9332ac88409
new file mode 100644
index 0000000..e42a5d4
--- /dev/null
+++ b/fuzz/cert_corpus/22a7767a68debe1a1cfdb43355d2c9332ac88409
Binary files differ
diff --git a/fuzz/cert_corpus/24fad8b85d8f1129e12f742472a4895aadef1872 b/fuzz/cert_corpus/24fad8b85d8f1129e12f742472a4895aadef1872
new file mode 100644
index 0000000..26db402
--- /dev/null
+++ b/fuzz/cert_corpus/24fad8b85d8f1129e12f742472a4895aadef1872
Binary files differ
diff --git a/fuzz/cert_corpus/2569acd835ecb6dfd61f6ce4459ba5f94df685a9 b/fuzz/cert_corpus/2569acd835ecb6dfd61f6ce4459ba5f94df685a9
new file mode 100644
index 0000000..62442ac
--- /dev/null
+++ b/fuzz/cert_corpus/2569acd835ecb6dfd61f6ce4459ba5f94df685a9
Binary files differ
diff --git a/fuzz/cert_corpus/266bb871295b34d3bf47110dd8d6c69de7733db0 b/fuzz/cert_corpus/266bb871295b34d3bf47110dd8d6c69de7733db0
new file mode 100644
index 0000000..87ebdeb
--- /dev/null
+++ b/fuzz/cert_corpus/266bb871295b34d3bf47110dd8d6c69de7733db0
Binary files differ
diff --git a/fuzz/cert_corpus/2957f98f3f77110b8a05a8d67a1ff574f090c2b3 b/fuzz/cert_corpus/2957f98f3f77110b8a05a8d67a1ff574f090c2b3
new file mode 100644
index 0000000..16db3b2
--- /dev/null
+++ b/fuzz/cert_corpus/2957f98f3f77110b8a05a8d67a1ff574f090c2b3
Binary files differ
diff --git a/fuzz/cert_corpus/2c3735c25b884954b3daf5fe573d89f5d516df4a b/fuzz/cert_corpus/2c3735c25b884954b3daf5fe573d89f5d516df4a
new file mode 100644
index 0000000..9c94c1d
--- /dev/null
+++ b/fuzz/cert_corpus/2c3735c25b884954b3daf5fe573d89f5d516df4a
Binary files differ
diff --git a/fuzz/cert_corpus/2e4777559846e771a689f12bdc77806853cf4d08 b/fuzz/cert_corpus/2e4777559846e771a689f12bdc77806853cf4d08
new file mode 100644
index 0000000..e267146
--- /dev/null
+++ b/fuzz/cert_corpus/2e4777559846e771a689f12bdc77806853cf4d08
@@ -0,0 +1 @@
+€1’h A1hö|%“å000‚€0‚h 
\ No newline at end of file
diff --git a/fuzz/cert_corpus/3663d7a7c4840fccf48c134a13eed5156b44055e b/fuzz/cert_corpus/3663d7a7c4840fccf48c134a13eed5156b44055e
new file mode 100644
index 0000000..9368c7b
--- /dev/null
+++ b/fuzz/cert_corpus/3663d7a7c4840fccf48c134a13eed5156b44055e
Binary files differ
diff --git a/fuzz/cert_corpus/36827665da414f5d36db7850ae76975eb7d616e9 b/fuzz/cert_corpus/36827665da414f5d36db7850ae76975eb7d616e9
new file mode 100644
index 0000000..a09315a
--- /dev/null
+++ b/fuzz/cert_corpus/36827665da414f5d36db7850ae76975eb7d616e9
@@ -0,0 +1 @@
+ÿœ°†(;€
\ No newline at end of file
diff --git a/fuzz/cert_corpus/37ffecbaa9a8f5540d94963beb62d93e8f1c568d b/fuzz/cert_corpus/37ffecbaa9a8f5540d94963beb62d93e8f1c568d
new file mode 100644
index 0000000..1195907
--- /dev/null
+++ b/fuzz/cert_corpus/37ffecbaa9a8f5540d94963beb62d93e8f1c568d
Binary files differ
diff --git a/fuzz/cert_corpus/39b894e9f4745142150a62b7688ac4dfac65375d b/fuzz/cert_corpus/39b894e9f4745142150a62b7688ac4dfac65375d
new file mode 100644
index 0000000..7efb04c
--- /dev/null
+++ b/fuzz/cert_corpus/39b894e9f4745142150a62b7688ac4dfac65375d
Binary files differ
diff --git a/fuzz/cert_corpus/4257efd87e9368cde94e8e321ebff4f3a623dd5c b/fuzz/cert_corpus/4257efd87e9368cde94e8e321ebff4f3a623dd5c
new file mode 100644
index 0000000..14d6860
--- /dev/null
+++ b/fuzz/cert_corpus/4257efd87e9368cde94e8e321ebff4f3a623dd5c
Binary files differ
diff --git a/fuzz/cert_corpus/457c25ce787e34b315d3b161a8b478a5e793c3c4 b/fuzz/cert_corpus/457c25ce787e34b315d3b161a8b478a5e793c3c4
new file mode 100644
index 0000000..eab257e
--- /dev/null
+++ b/fuzz/cert_corpus/457c25ce787e34b315d3b161a8b478a5e793c3c4
Binary files differ
diff --git a/fuzz/cert_corpus/484c387f1936612f6e742f10775fa81593cb0c47 b/fuzz/cert_corpus/484c387f1936612f6e742f10775fa81593cb0c47
new file mode 100644
index 0000000..fe509f6
--- /dev/null
+++ b/fuzz/cert_corpus/484c387f1936612f6e742f10775fa81593cb0c47
Binary files differ
diff --git a/fuzz/cert_corpus/4a59656c14d04ce913197e47cde59133db0401c8 b/fuzz/cert_corpus/4a59656c14d04ce913197e47cde59133db0401c8
new file mode 100644
index 0000000..7e05e46
--- /dev/null
+++ b/fuzz/cert_corpus/4a59656c14d04ce913197e47cde59133db0401c8
Binary files differ
diff --git a/fuzz/cert_corpus/4a7220ebd75b74c4b91bbde748ea273342e7d306 b/fuzz/cert_corpus/4a7220ebd75b74c4b91bbde748ea273342e7d306
new file mode 100644
index 0000000..8bd54f1
--- /dev/null
+++ b/fuzz/cert_corpus/4a7220ebd75b74c4b91bbde748ea273342e7d306
Binary files differ
diff --git a/fuzz/cert_corpus/4b3fff8f4209aec529055a64cb7b38b89513c725 b/fuzz/cert_corpus/4b3fff8f4209aec529055a64cb7b38b89513c725
new file mode 100644
index 0000000..1130e04
--- /dev/null
+++ b/fuzz/cert_corpus/4b3fff8f4209aec529055a64cb7b38b89513c725
Binary files differ
diff --git a/fuzz/cert_corpus/4bea495c65f278e4ec1b343819a713f062aaac99 b/fuzz/cert_corpus/4bea495c65f278e4ec1b343819a713f062aaac99
new file mode 100644
index 0000000..d84d981
--- /dev/null
+++ b/fuzz/cert_corpus/4bea495c65f278e4ec1b343819a713f062aaac99
Binary files differ
diff --git a/fuzz/cert_corpus/4cef0705d69922b19e4f50c16446115d03691379 b/fuzz/cert_corpus/4cef0705d69922b19e4f50c16446115d03691379
new file mode 100644
index 0000000..febb234
--- /dev/null
+++ b/fuzz/cert_corpus/4cef0705d69922b19e4f50c16446115d03691379
Binary files differ
diff --git a/fuzz/cert_corpus/536b9cd5f18e73b30687908443036be7a1b108b0 b/fuzz/cert_corpus/536b9cd5f18e73b30687908443036be7a1b108b0
new file mode 100644
index 0000000..6375dbf
--- /dev/null
+++ b/fuzz/cert_corpus/536b9cd5f18e73b30687908443036be7a1b108b0
Binary files differ
diff --git a/fuzz/cert_corpus/54faf9d362f22ac220377a9d478731301876830d b/fuzz/cert_corpus/54faf9d362f22ac220377a9d478731301876830d
new file mode 100644
index 0000000..b15aaee
--- /dev/null
+++ b/fuzz/cert_corpus/54faf9d362f22ac220377a9d478731301876830d
Binary files differ
diff --git a/fuzz/cert_corpus/55ff515a21332c377e8682bb0f05d4a36595cb18 b/fuzz/cert_corpus/55ff515a21332c377e8682bb0f05d4a36595cb18
new file mode 100644
index 0000000..5e416ab
--- /dev/null
+++ b/fuzz/cert_corpus/55ff515a21332c377e8682bb0f05d4a36595cb18
Binary files differ
diff --git a/fuzz/cert_corpus/56ef359b39b367bc94f66501729907dfd8fb8425 b/fuzz/cert_corpus/56ef359b39b367bc94f66501729907dfd8fb8425
new file mode 100644
index 0000000..7e67019
--- /dev/null
+++ b/fuzz/cert_corpus/56ef359b39b367bc94f66501729907dfd8fb8425
Binary files differ
diff --git a/fuzz/cert_corpus/5a7baa69f7c27ed50c560f427370910220cf4073 b/fuzz/cert_corpus/5a7baa69f7c27ed50c560f427370910220cf4073
new file mode 100644
index 0000000..38ef03a
--- /dev/null
+++ b/fuzz/cert_corpus/5a7baa69f7c27ed50c560f427370910220cf4073
Binary files differ
diff --git a/fuzz/cert_corpus/5c7389e097519d3d2c974b7d082344c6fdb9e74b b/fuzz/cert_corpus/5c7389e097519d3d2c974b7d082344c6fdb9e74b
new file mode 100644
index 0000000..443034d
--- /dev/null
+++ b/fuzz/cert_corpus/5c7389e097519d3d2c974b7d082344c6fdb9e74b
Binary files differ
diff --git a/fuzz/cert_corpus/5ccb2368d4f51967b4d79b062103604a0e73c6ab b/fuzz/cert_corpus/5ccb2368d4f51967b4d79b062103604a0e73c6ab
new file mode 100644
index 0000000..39ac6cb
--- /dev/null
+++ b/fuzz/cert_corpus/5ccb2368d4f51967b4d79b062103604a0e73c6ab
Binary files differ
diff --git a/fuzz/cert_corpus/5d64f19209be8be3ce3e914b475db34591d7a985 b/fuzz/cert_corpus/5d64f19209be8be3ce3e914b475db34591d7a985
new file mode 100644
index 0000000..86efae8
--- /dev/null
+++ b/fuzz/cert_corpus/5d64f19209be8be3ce3e914b475db34591d7a985
@@ -0,0 +1 @@
+ÿ(
\ No newline at end of file
diff --git a/fuzz/cert_corpus/5f6a0d4e63e434e50dbf1159514610e031afbbc9 b/fuzz/cert_corpus/5f6a0d4e63e434e50dbf1159514610e031afbbc9
new file mode 100644
index 0000000..918ca12
--- /dev/null
+++ b/fuzz/cert_corpus/5f6a0d4e63e434e50dbf1159514610e031afbbc9
Binary files differ
diff --git a/fuzz/cert_corpus/60c9a5ce074daf266315dfa2093b014b43baedd6 b/fuzz/cert_corpus/60c9a5ce074daf266315dfa2093b014b43baedd6
new file mode 100644
index 0000000..fd26e4f
--- /dev/null
+++ b/fuzz/cert_corpus/60c9a5ce074daf266315dfa2093b014b43baedd6
Binary files differ
diff --git a/fuzz/cert_corpus/60fe312a17b6d5a46ca05116fbc5cfd23977bab4 b/fuzz/cert_corpus/60fe312a17b6d5a46ca05116fbc5cfd23977bab4
new file mode 100644
index 0000000..5032463
--- /dev/null
+++ b/fuzz/cert_corpus/60fe312a17b6d5a46ca05116fbc5cfd23977bab4
Binary files differ
diff --git a/fuzz/cert_corpus/6118a3fcc0337a2cae92be95b87dcdc47a2c53c9 b/fuzz/cert_corpus/6118a3fcc0337a2cae92be95b87dcdc47a2c53c9
new file mode 100644
index 0000000..bef3bcf
--- /dev/null
+++ b/fuzz/cert_corpus/6118a3fcc0337a2cae92be95b87dcdc47a2c53c9
Binary files differ
diff --git a/fuzz/cert_corpus/64a9ce67fccd9c0a3b2ff3d02ea9afbe5619b41f b/fuzz/cert_corpus/64a9ce67fccd9c0a3b2ff3d02ea9afbe5619b41f
new file mode 100644
index 0000000..661a4d0
--- /dev/null
+++ b/fuzz/cert_corpus/64a9ce67fccd9c0a3b2ff3d02ea9afbe5619b41f
Binary files differ
diff --git a/fuzz/cert_corpus/65769e24f85a4467ff67707ede0c56b5e7046687 b/fuzz/cert_corpus/65769e24f85a4467ff67707ede0c56b5e7046687
new file mode 100644
index 0000000..1c81200
--- /dev/null
+++ b/fuzz/cert_corpus/65769e24f85a4467ff67707ede0c56b5e7046687
Binary files differ
diff --git a/fuzz/cert_corpus/65b1bfb6b449b875079f932a6075771dba978141 b/fuzz/cert_corpus/65b1bfb6b449b875079f932a6075771dba978141
new file mode 100644
index 0000000..2d9f218
--- /dev/null
+++ b/fuzz/cert_corpus/65b1bfb6b449b875079f932a6075771dba978141
Binary files differ
diff --git a/fuzz/cert_corpus/66cb9a69e7289f878d3f9bdb235bb4ad97e138b0 b/fuzz/cert_corpus/66cb9a69e7289f878d3f9bdb235bb4ad97e138b0
new file mode 100644
index 0000000..372d0cc
--- /dev/null
+++ b/fuzz/cert_corpus/66cb9a69e7289f878d3f9bdb235bb4ad97e138b0
Binary files differ
diff --git a/fuzz/cert_corpus/67c6b2d857ae3edc271adac024751559bed7ae97 b/fuzz/cert_corpus/67c6b2d857ae3edc271adac024751559bed7ae97
new file mode 100644
index 0000000..5cec5d5
--- /dev/null
+++ b/fuzz/cert_corpus/67c6b2d857ae3edc271adac024751559bed7ae97
Binary files differ
diff --git a/fuzz/cert_corpus/67f672ab618d2facc0092cd32837cc04e5d37216 b/fuzz/cert_corpus/67f672ab618d2facc0092cd32837cc04e5d37216
new file mode 100644
index 0000000..47443f7
--- /dev/null
+++ b/fuzz/cert_corpus/67f672ab618d2facc0092cd32837cc04e5d37216
Binary files differ
diff --git a/fuzz/cert_corpus/6869834d4b7c77e0bd7ce160876197a3c9be7040 b/fuzz/cert_corpus/6869834d4b7c77e0bd7ce160876197a3c9be7040
new file mode 100644
index 0000000..80d069d
--- /dev/null
+++ b/fuzz/cert_corpus/6869834d4b7c77e0bd7ce160876197a3c9be7040
Binary files differ
diff --git a/fuzz/cert_corpus/693913decd386589e4d4212fc498714506d667f0 b/fuzz/cert_corpus/693913decd386589e4d4212fc498714506d667f0
new file mode 100644
index 0000000..d6af9f7
--- /dev/null
+++ b/fuzz/cert_corpus/693913decd386589e4d4212fc498714506d667f0
Binary files differ
diff --git a/fuzz/cert_corpus/6f0d97a3ed2a4c3c330edb10959f005a553d08f4 b/fuzz/cert_corpus/6f0d97a3ed2a4c3c330edb10959f005a553d08f4
new file mode 100644
index 0000000..2ef1a05
--- /dev/null
+++ b/fuzz/cert_corpus/6f0d97a3ed2a4c3c330edb10959f005a553d08f4
Binary files differ
diff --git a/fuzz/cert_corpus/6fcf556855dd7013e57ae7a729f43bc9d76d41f1 b/fuzz/cert_corpus/6fcf556855dd7013e57ae7a729f43bc9d76d41f1
new file mode 100644
index 0000000..a2fd312
--- /dev/null
+++ b/fuzz/cert_corpus/6fcf556855dd7013e57ae7a729f43bc9d76d41f1
Binary files differ
diff --git a/fuzz/cert_corpus/7345d2f36ce35f7aaeb3f3c62a2b37f55dfd7af7 b/fuzz/cert_corpus/7345d2f36ce35f7aaeb3f3c62a2b37f55dfd7af7
new file mode 100644
index 0000000..1103cb5
--- /dev/null
+++ b/fuzz/cert_corpus/7345d2f36ce35f7aaeb3f3c62a2b37f55dfd7af7
Binary files differ
diff --git a/fuzz/cert_corpus/7359755c6df9a0abc3060bce369564c8ec4542a3 b/fuzz/cert_corpus/7359755c6df9a0abc3060bce369564c8ec4542a3
new file mode 100644
index 0000000..82e5004
--- /dev/null
+++ b/fuzz/cert_corpus/7359755c6df9a0abc3060bce369564c8ec4542a3
Binary files differ
diff --git a/fuzz/cert_corpus/74287c085825b190ed3cf50ad0f5beec7cc07edd b/fuzz/cert_corpus/74287c085825b190ed3cf50ad0f5beec7cc07edd
new file mode 100644
index 0000000..b623eec
--- /dev/null
+++ b/fuzz/cert_corpus/74287c085825b190ed3cf50ad0f5beec7cc07edd
Binary files differ
diff --git a/fuzz/cert_corpus/74ea68736ec375b226f0ca86464d2d43baac3574 b/fuzz/cert_corpus/74ea68736ec375b226f0ca86464d2d43baac3574
new file mode 100644
index 0000000..a043e43
--- /dev/null
+++ b/fuzz/cert_corpus/74ea68736ec375b226f0ca86464d2d43baac3574
Binary files differ
diff --git a/fuzz/cert_corpus/7685b3e299f2cce95aab0d8559fd45d8198f5da2 b/fuzz/cert_corpus/7685b3e299f2cce95aab0d8559fd45d8198f5da2
new file mode 100644
index 0000000..7ca6b09
--- /dev/null
+++ b/fuzz/cert_corpus/7685b3e299f2cce95aab0d8559fd45d8198f5da2
Binary files differ
diff --git a/fuzz/cert_corpus/771688184c18822e2182b18bb1ec853a88262659 b/fuzz/cert_corpus/771688184c18822e2182b18bb1ec853a88262659
new file mode 100644
index 0000000..ac6e9ec
--- /dev/null
+++ b/fuzz/cert_corpus/771688184c18822e2182b18bb1ec853a88262659
Binary files differ
diff --git a/fuzz/cert_corpus/772739edb5a338fade2b33ed8c4c7e5c3856e7bd b/fuzz/cert_corpus/772739edb5a338fade2b33ed8c4c7e5c3856e7bd
new file mode 100644
index 0000000..1ce94e4
--- /dev/null
+++ b/fuzz/cert_corpus/772739edb5a338fade2b33ed8c4c7e5c3856e7bd
Binary files differ
diff --git a/fuzz/cert_corpus/78fa5096155d1b72a074a486cf7ace40a4c92f1f b/fuzz/cert_corpus/78fa5096155d1b72a074a486cf7ace40a4c92f1f
new file mode 100644
index 0000000..5a9acda
--- /dev/null
+++ b/fuzz/cert_corpus/78fa5096155d1b72a074a486cf7ace40a4c92f1f
Binary files differ
diff --git a/fuzz/cert_corpus/79fe694f60433debeb203f01dbacefcde6e9483f b/fuzz/cert_corpus/79fe694f60433debeb203f01dbacefcde6e9483f
new file mode 100644
index 0000000..35b47e8
--- /dev/null
+++ b/fuzz/cert_corpus/79fe694f60433debeb203f01dbacefcde6e9483f
Binary files differ
diff --git a/fuzz/cert_corpus/7e87ff06a8c83b1195fb15a9d599abfe28b94cbf b/fuzz/cert_corpus/7e87ff06a8c83b1195fb15a9d599abfe28b94cbf
new file mode 100644
index 0000000..ca8d2ab
--- /dev/null
+++ b/fuzz/cert_corpus/7e87ff06a8c83b1195fb15a9d599abfe28b94cbf
Binary files differ
diff --git a/fuzz/cert_corpus/7eb1f7349c812a0ed94fe21f9900600516164b17 b/fuzz/cert_corpus/7eb1f7349c812a0ed94fe21f9900600516164b17
new file mode 100644
index 0000000..e677697
--- /dev/null
+++ b/fuzz/cert_corpus/7eb1f7349c812a0ed94fe21f9900600516164b17
Binary files differ
diff --git a/fuzz/cert_corpus/7ecb46c93915184be12fa3cbaac3b65072116242 b/fuzz/cert_corpus/7ecb46c93915184be12fa3cbaac3b65072116242
new file mode 100644
index 0000000..2acc679
--- /dev/null
+++ b/fuzz/cert_corpus/7ecb46c93915184be12fa3cbaac3b65072116242
Binary files differ
diff --git a/fuzz/cert_corpus/806fd814b69bc6511d7f6e1a3bc762d14a56364a b/fuzz/cert_corpus/806fd814b69bc6511d7f6e1a3bc762d14a56364a
new file mode 100644
index 0000000..6cb60a8
--- /dev/null
+++ b/fuzz/cert_corpus/806fd814b69bc6511d7f6e1a3bc762d14a56364a
Binary files differ
diff --git a/fuzz/cert_corpus/8217aa968f0050b2fb1aac92ae6f377c41c3952b b/fuzz/cert_corpus/8217aa968f0050b2fb1aac92ae6f377c41c3952b
new file mode 100644
index 0000000..fbc2294
--- /dev/null
+++ b/fuzz/cert_corpus/8217aa968f0050b2fb1aac92ae6f377c41c3952b
Binary files differ
diff --git a/fuzz/cert_corpus/8275aabe75b73bb398933bf9a106fde4b198d1b1 b/fuzz/cert_corpus/8275aabe75b73bb398933bf9a106fde4b198d1b1
new file mode 100644
index 0000000..a3e76e6
--- /dev/null
+++ b/fuzz/cert_corpus/8275aabe75b73bb398933bf9a106fde4b198d1b1
Binary files differ
diff --git a/fuzz/cert_corpus/840007514cd63aca9bd6d65fe5d1eb4c58600106 b/fuzz/cert_corpus/840007514cd63aca9bd6d65fe5d1eb4c58600106
new file mode 100644
index 0000000..8d06632
--- /dev/null
+++ b/fuzz/cert_corpus/840007514cd63aca9bd6d65fe5d1eb4c58600106
Binary files differ
diff --git a/fuzz/cert_corpus/848426625248d49961481ba4616c501a808983ac b/fuzz/cert_corpus/848426625248d49961481ba4616c501a808983ac
new file mode 100644
index 0000000..99dc6cc
--- /dev/null
+++ b/fuzz/cert_corpus/848426625248d49961481ba4616c501a808983ac
Binary files differ
diff --git a/fuzz/cert_corpus/84882a41d7892f52a3145178b9ff8ad6947ddbf4 b/fuzz/cert_corpus/84882a41d7892f52a3145178b9ff8ad6947ddbf4
new file mode 100644
index 0000000..56e7733
--- /dev/null
+++ b/fuzz/cert_corpus/84882a41d7892f52a3145178b9ff8ad6947ddbf4
Binary files differ
diff --git a/fuzz/cert_corpus/87555b600217d444d85e8a7afece3239a566c6a0 b/fuzz/cert_corpus/87555b600217d444d85e8a7afece3239a566c6a0
new file mode 100644
index 0000000..0385a72
--- /dev/null
+++ b/fuzz/cert_corpus/87555b600217d444d85e8a7afece3239a566c6a0
Binary files differ
diff --git a/fuzz/cert_corpus/8853ff143e14ef222a6c7044ea50992b53ed7387 b/fuzz/cert_corpus/8853ff143e14ef222a6c7044ea50992b53ed7387
new file mode 100644
index 0000000..4a32e41
--- /dev/null
+++ b/fuzz/cert_corpus/8853ff143e14ef222a6c7044ea50992b53ed7387
Binary files differ
diff --git a/fuzz/cert_corpus/88e90e49acd2ab796a48eda68f66529dd4206671 b/fuzz/cert_corpus/88e90e49acd2ab796a48eda68f66529dd4206671
new file mode 100644
index 0000000..7a3dfe4
--- /dev/null
+++ b/fuzz/cert_corpus/88e90e49acd2ab796a48eda68f66529dd4206671
Binary files differ
diff --git a/fuzz/cert_corpus/8b188b379875299b1f6ca0501cf758b3a313a7d8 b/fuzz/cert_corpus/8b188b379875299b1f6ca0501cf758b3a313a7d8
new file mode 100644
index 0000000..fd6a3f4
--- /dev/null
+++ b/fuzz/cert_corpus/8b188b379875299b1f6ca0501cf758b3a313a7d8
Binary files differ
diff --git a/fuzz/cert_corpus/9070df87024c0167e6a1bd9512f698d3a31ca0b1 b/fuzz/cert_corpus/9070df87024c0167e6a1bd9512f698d3a31ca0b1
new file mode 100644
index 0000000..7d7b792
--- /dev/null
+++ b/fuzz/cert_corpus/9070df87024c0167e6a1bd9512f698d3a31ca0b1
Binary files differ
diff --git a/fuzz/cert_corpus/90fbdf2d500b38c15e3364d041484cf065cba9df b/fuzz/cert_corpus/90fbdf2d500b38c15e3364d041484cf065cba9df
new file mode 100644
index 0000000..90a4e76
--- /dev/null
+++ b/fuzz/cert_corpus/90fbdf2d500b38c15e3364d041484cf065cba9df
Binary files differ
diff --git a/fuzz/cert_corpus/953b46659c6224c0068a9ddb3fa7b0a74f89af3e b/fuzz/cert_corpus/953b46659c6224c0068a9ddb3fa7b0a74f89af3e
new file mode 100644
index 0000000..d544308
--- /dev/null
+++ b/fuzz/cert_corpus/953b46659c6224c0068a9ddb3fa7b0a74f89af3e
Binary files differ
diff --git a/fuzz/cert_corpus/9a5618d71d29f45a7dbe3f2b98d66702427faaaf b/fuzz/cert_corpus/9a5618d71d29f45a7dbe3f2b98d66702427faaaf
new file mode 100644
index 0000000..fd56394
--- /dev/null
+++ b/fuzz/cert_corpus/9a5618d71d29f45a7dbe3f2b98d66702427faaaf
Binary files differ
diff --git a/fuzz/cert_corpus/9baa5f344ecd37e2762cb8a7497709b78d69cae6 b/fuzz/cert_corpus/9baa5f344ecd37e2762cb8a7497709b78d69cae6
new file mode 100644
index 0000000..b1f0905
--- /dev/null
+++ b/fuzz/cert_corpus/9baa5f344ecd37e2762cb8a7497709b78d69cae6
Binary files differ
diff --git a/fuzz/cert_corpus/9d1eb7853324fba4aa29f65e2213c54c44d988a6 b/fuzz/cert_corpus/9d1eb7853324fba4aa29f65e2213c54c44d988a6
new file mode 100644
index 0000000..8265f1c
--- /dev/null
+++ b/fuzz/cert_corpus/9d1eb7853324fba4aa29f65e2213c54c44d988a6
Binary files differ
diff --git a/fuzz/cert_corpus/9df5fabe0c5cdf7cf5c427be02ed3cee33b2a0e9 b/fuzz/cert_corpus/9df5fabe0c5cdf7cf5c427be02ed3cee33b2a0e9
new file mode 100644
index 0000000..44deb49
--- /dev/null
+++ b/fuzz/cert_corpus/9df5fabe0c5cdf7cf5c427be02ed3cee33b2a0e9
Binary files differ
diff --git a/fuzz/cert_corpus/9fad61f53d1256a653b0f9351b6624793089f50c b/fuzz/cert_corpus/9fad61f53d1256a653b0f9351b6624793089f50c
new file mode 100644
index 0000000..6f80978
--- /dev/null
+++ b/fuzz/cert_corpus/9fad61f53d1256a653b0f9351b6624793089f50c
Binary files differ
diff --git a/fuzz/cert_corpus/a37c3ee4668153e5ef9c272d43a2545a75b36854 b/fuzz/cert_corpus/a37c3ee4668153e5ef9c272d43a2545a75b36854
new file mode 100644
index 0000000..61ea85a
--- /dev/null
+++ b/fuzz/cert_corpus/a37c3ee4668153e5ef9c272d43a2545a75b36854
Binary files differ
diff --git a/fuzz/cert_corpus/a46eda9b97888af5263bc32293f940a8c2125ac3 b/fuzz/cert_corpus/a46eda9b97888af5263bc32293f940a8c2125ac3
new file mode 100644
index 0000000..b951711
--- /dev/null
+++ b/fuzz/cert_corpus/a46eda9b97888af5263bc32293f940a8c2125ac3
@@ -0,0 +1 @@
+0€0€(í0‚€0Šh €1’h APhö|0‚%“å0	¿÷œ¹æ(*)03€0€
\ No newline at end of file
diff --git a/fuzz/cert_corpus/a6447b7b3c50340aa14feb960245856ddeebc2cf b/fuzz/cert_corpus/a6447b7b3c50340aa14feb960245856ddeebc2cf
new file mode 100644
index 0000000..61afa88
--- /dev/null
+++ b/fuzz/cert_corpus/a6447b7b3c50340aa14feb960245856ddeebc2cf
Binary files differ
diff --git a/fuzz/cert_corpus/aa94b8c126db37057eba60ebf9ee8424c4dcd931 b/fuzz/cert_corpus/aa94b8c126db37057eba60ebf9ee8424c4dcd931
new file mode 100644
index 0000000..631376b
--- /dev/null
+++ b/fuzz/cert_corpus/aa94b8c126db37057eba60ebf9ee8424c4dcd931
Binary files differ
diff --git a/fuzz/cert_corpus/ad0875493831e5d809ec58af56dc27736d8da4cf b/fuzz/cert_corpus/ad0875493831e5d809ec58af56dc27736d8da4cf
new file mode 100644
index 0000000..d90f248
--- /dev/null
+++ b/fuzz/cert_corpus/ad0875493831e5d809ec58af56dc27736d8da4cf
Binary files differ
diff --git a/fuzz/cert_corpus/ae820c47ddc20ff0be7109c331f04b7d5ddd623a b/fuzz/cert_corpus/ae820c47ddc20ff0be7109c331f04b7d5ddd623a
new file mode 100644
index 0000000..3b249dc
--- /dev/null
+++ b/fuzz/cert_corpus/ae820c47ddc20ff0be7109c331f04b7d5ddd623a
Binary files differ
diff --git a/fuzz/cert_corpus/b0bbe893c3557ffe322c9acbb268f58bd6f6ab9d b/fuzz/cert_corpus/b0bbe893c3557ffe322c9acbb268f58bd6f6ab9d
new file mode 100644
index 0000000..7e5621d
--- /dev/null
+++ b/fuzz/cert_corpus/b0bbe893c3557ffe322c9acbb268f58bd6f6ab9d
Binary files differ
diff --git a/fuzz/cert_corpus/b255b3d96ff0a405b5c782cd18fbc50034d09793 b/fuzz/cert_corpus/b255b3d96ff0a405b5c782cd18fbc50034d09793
new file mode 100644
index 0000000..62e59a0
--- /dev/null
+++ b/fuzz/cert_corpus/b255b3d96ff0a405b5c782cd18fbc50034d09793
@@ -0,0 +1 @@
+0€0€€1’h A0‚
\ No newline at end of file
diff --git a/fuzz/cert_corpus/b5f5a28954d2634baf685a1790ce013ca0f0f951 b/fuzz/cert_corpus/b5f5a28954d2634baf685a1790ce013ca0f0f951
new file mode 100644
index 0000000..72f9c59
--- /dev/null
+++ b/fuzz/cert_corpus/b5f5a28954d2634baf685a1790ce013ca0f0f951
Binary files differ
diff --git a/fuzz/cert_corpus/b63a8d0e7c1848019b4e4e8e19d14adec00b7c19 b/fuzz/cert_corpus/b63a8d0e7c1848019b4e4e8e19d14adec00b7c19
new file mode 100644
index 0000000..540bf68
--- /dev/null
+++ b/fuzz/cert_corpus/b63a8d0e7c1848019b4e4e8e19d14adec00b7c19
Binary files differ
diff --git a/fuzz/cert_corpus/b88401cca46b7cc9cf588dbec641411101bbce68 b/fuzz/cert_corpus/b88401cca46b7cc9cf588dbec641411101bbce68
new file mode 100644
index 0000000..2347c46
--- /dev/null
+++ b/fuzz/cert_corpus/b88401cca46b7cc9cf588dbec641411101bbce68
Binary files differ
diff --git a/fuzz/cert_corpus/b8c68e6426d5993b9c08d0384dce5d52014254a6 b/fuzz/cert_corpus/b8c68e6426d5993b9c08d0384dce5d52014254a6
new file mode 100644
index 0000000..8f76f42
--- /dev/null
+++ b/fuzz/cert_corpus/b8c68e6426d5993b9c08d0384dce5d52014254a6
@@ -0,0 +1 @@
+¿ÿœ¹†(;
\ No newline at end of file
diff --git a/fuzz/cert_corpus/bd32136e6ec853a56e70060a2c308187b8fccf65 b/fuzz/cert_corpus/bd32136e6ec853a56e70060a2c308187b8fccf65
new file mode 100644
index 0000000..3383d6e
--- /dev/null
+++ b/fuzz/cert_corpus/bd32136e6ec853a56e70060a2c308187b8fccf65
Binary files differ
diff --git a/fuzz/cert_corpus/be96bcebf50e143552339a23071c9994bb7b5548 b/fuzz/cert_corpus/be96bcebf50e143552339a23071c9994bb7b5548
new file mode 100644
index 0000000..415c590
--- /dev/null
+++ b/fuzz/cert_corpus/be96bcebf50e143552339a23071c9994bb7b5548
Binary files differ
diff --git a/fuzz/cert_corpus/c0bc4e081e8de875ffd9f4e4f611351d790c3316 b/fuzz/cert_corpus/c0bc4e081e8de875ffd9f4e4f611351d790c3316
new file mode 100644
index 0000000..eac0fc8
--- /dev/null
+++ b/fuzz/cert_corpus/c0bc4e081e8de875ffd9f4e4f611351d790c3316
Binary files differ
diff --git a/fuzz/cert_corpus/c3c6d8be363e9b8535dc6586a6b01122efefdea9 b/fuzz/cert_corpus/c3c6d8be363e9b8535dc6586a6b01122efefdea9
new file mode 100644
index 0000000..f2332b4
--- /dev/null
+++ b/fuzz/cert_corpus/c3c6d8be363e9b8535dc6586a6b01122efefdea9
Binary files differ
diff --git a/fuzz/cert_corpus/c47cc42321d347f0b8596e94c53ddfc0c5a90a88 b/fuzz/cert_corpus/c47cc42321d347f0b8596e94c53ddfc0c5a90a88
new file mode 100644
index 0000000..2eaa4b2
--- /dev/null
+++ b/fuzz/cert_corpus/c47cc42321d347f0b8596e94c53ddfc0c5a90a88
Binary files differ
diff --git a/fuzz/cert_corpus/c5ed379b9f6794810a09862f48297a9e576014ad b/fuzz/cert_corpus/c5ed379b9f6794810a09862f48297a9e576014ad
new file mode 100644
index 0000000..b767b2a
--- /dev/null
+++ b/fuzz/cert_corpus/c5ed379b9f6794810a09862f48297a9e576014ad
Binary files differ
diff --git a/fuzz/cert_corpus/c6bb980166717e341bc7628fdcf7e6857f42b78e b/fuzz/cert_corpus/c6bb980166717e341bc7628fdcf7e6857f42b78e
new file mode 100644
index 0000000..9f4dec0
--- /dev/null
+++ b/fuzz/cert_corpus/c6bb980166717e341bc7628fdcf7e6857f42b78e
Binary files differ
diff --git a/fuzz/cert_corpus/cc70087dae81f66673015fe1f97b13b0f1d7256d b/fuzz/cert_corpus/cc70087dae81f66673015fe1f97b13b0f1d7256d
new file mode 100644
index 0000000..2c5ab04
--- /dev/null
+++ b/fuzz/cert_corpus/cc70087dae81f66673015fe1f97b13b0f1d7256d
Binary files differ
diff --git a/fuzz/cert_corpus/d0ff24cb960cd6b725466290c98faec196340ad3 b/fuzz/cert_corpus/d0ff24cb960cd6b725466290c98faec196340ad3
new file mode 100644
index 0000000..1edf710
--- /dev/null
+++ b/fuzz/cert_corpus/d0ff24cb960cd6b725466290c98faec196340ad3
Binary files differ
diff --git a/fuzz/cert_corpus/d3fe83b8d87ccda2bbca5e81ce3ab1a1400bfbe8 b/fuzz/cert_corpus/d3fe83b8d87ccda2bbca5e81ce3ab1a1400bfbe8
new file mode 100644
index 0000000..08e5b85
--- /dev/null
+++ b/fuzz/cert_corpus/d3fe83b8d87ccda2bbca5e81ce3ab1a1400bfbe8
@@ -0,0 +1 @@
+¿
\ No newline at end of file
diff --git a/fuzz/cert_corpus/d51782b160d3dacee93a1dc34cfec9a7ca4a6c53 b/fuzz/cert_corpus/d51782b160d3dacee93a1dc34cfec9a7ca4a6c53
new file mode 100644
index 0000000..2231162
--- /dev/null
+++ b/fuzz/cert_corpus/d51782b160d3dacee93a1dc34cfec9a7ca4a6c53
Binary files differ
diff --git a/fuzz/cert_corpus/d5c2fed75bc049b570bd445b9461a1595f880dca b/fuzz/cert_corpus/d5c2fed75bc049b570bd445b9461a1595f880dca
new file mode 100644
index 0000000..c7b76a3
--- /dev/null
+++ b/fuzz/cert_corpus/d5c2fed75bc049b570bd445b9461a1595f880dca
@@ -0,0 +1 @@
+0€0€"*€1’h A0:;€
\ No newline at end of file
diff --git a/fuzz/cert_corpus/d5c3e609d1685e2a11e63622d71cba7cc8a73590 b/fuzz/cert_corpus/d5c3e609d1685e2a11e63622d71cba7cc8a73590
new file mode 100644
index 0000000..3ca6881
--- /dev/null
+++ b/fuzz/cert_corpus/d5c3e609d1685e2a11e63622d71cba7cc8a73590
Binary files differ
diff --git a/fuzz/cert_corpus/d5d316b2ae6ca106895ecfc4d77cab5ee403b624 b/fuzz/cert_corpus/d5d316b2ae6ca106895ecfc4d77cab5ee403b624
new file mode 100644
index 0000000..06143ba
--- /dev/null
+++ b/fuzz/cert_corpus/d5d316b2ae6ca106895ecfc4d77cab5ee403b624
Binary files differ
diff --git a/fuzz/cert_corpus/d642d2788c9378b41858bfd84d8f493df5a6ed90 b/fuzz/cert_corpus/d642d2788c9378b41858bfd84d8f493df5a6ed90
new file mode 100644
index 0000000..5304572
--- /dev/null
+++ b/fuzz/cert_corpus/d642d2788c9378b41858bfd84d8f493df5a6ed90
Binary files differ
diff --git a/fuzz/cert_corpus/d6df7b56969b3f2bd6c323aca98179f1f3ef3396 b/fuzz/cert_corpus/d6df7b56969b3f2bd6c323aca98179f1f3ef3396
new file mode 100644
index 0000000..85d42a2
--- /dev/null
+++ b/fuzz/cert_corpus/d6df7b56969b3f2bd6c323aca98179f1f3ef3396
Binary files differ
diff --git a/fuzz/cert_corpus/d7ba4e58caa05b0c3bd0f5258adf1429d022632f b/fuzz/cert_corpus/d7ba4e58caa05b0c3bd0f5258adf1429d022632f
new file mode 100644
index 0000000..4142ca2
--- /dev/null
+++ b/fuzz/cert_corpus/d7ba4e58caa05b0c3bd0f5258adf1429d022632f
Binary files differ
diff --git a/fuzz/cert_corpus/d805c1da8681e325ad44cf57dbac466ca77efca8 b/fuzz/cert_corpus/d805c1da8681e325ad44cf57dbac466ca77efca8
new file mode 100644
index 0000000..5397af4
--- /dev/null
+++ b/fuzz/cert_corpus/d805c1da8681e325ad44cf57dbac466ca77efca8
Binary files differ
diff --git a/fuzz/cert_corpus/d9f35e97892b69a6b1f7053907b45bec9aaf878b b/fuzz/cert_corpus/d9f35e97892b69a6b1f7053907b45bec9aaf878b
new file mode 100644
index 0000000..a53b38e
--- /dev/null
+++ b/fuzz/cert_corpus/d9f35e97892b69a6b1f7053907b45bec9aaf878b
Binary files differ
diff --git a/fuzz/cert_corpus/daaf3e94dde553128327f392e512eed23d939a06 b/fuzz/cert_corpus/daaf3e94dde553128327f392e512eed23d939a06
new file mode 100644
index 0000000..8a36975
--- /dev/null
+++ b/fuzz/cert_corpus/daaf3e94dde553128327f392e512eed23d939a06
Binary files differ
diff --git a/fuzz/cert_corpus/dc0186c5badd988d5ee4dd4c3013311d301d3104 b/fuzz/cert_corpus/dc0186c5badd988d5ee4dd4c3013311d301d3104
new file mode 100644
index 0000000..7d58056
--- /dev/null
+++ b/fuzz/cert_corpus/dc0186c5badd988d5ee4dd4c3013311d301d3104
Binary files differ
diff --git a/fuzz/cert_corpus/dce902110210d2f6bb76f2dba03e7144897f1111 b/fuzz/cert_corpus/dce902110210d2f6bb76f2dba03e7144897f1111
new file mode 100644
index 0000000..c15d884
--- /dev/null
+++ b/fuzz/cert_corpus/dce902110210d2f6bb76f2dba03e7144897f1111
Binary files differ
diff --git a/fuzz/cert_corpus/de05b31a05846f00be753f15be9242b01396a553 b/fuzz/cert_corpus/de05b31a05846f00be753f15be9242b01396a553
new file mode 100644
index 0000000..1c253cc
--- /dev/null
+++ b/fuzz/cert_corpus/de05b31a05846f00be753f15be9242b01396a553
Binary files differ
diff --git a/fuzz/cert_corpus/e180125371c88bbab75d9aac4d6b1144e0f0683e b/fuzz/cert_corpus/e180125371c88bbab75d9aac4d6b1144e0f0683e
new file mode 100644
index 0000000..5d77a89
--- /dev/null
+++ b/fuzz/cert_corpus/e180125371c88bbab75d9aac4d6b1144e0f0683e
Binary files differ
diff --git a/fuzz/cert_corpus/e662bc8b0f1bcea6081c65fc1195e6df53a51961 b/fuzz/cert_corpus/e662bc8b0f1bcea6081c65fc1195e6df53a51961
new file mode 100644
index 0000000..21a9078
--- /dev/null
+++ b/fuzz/cert_corpus/e662bc8b0f1bcea6081c65fc1195e6df53a51961
Binary files differ
diff --git a/fuzz/cert_corpus/e67cc75ea22aec3e31ac08718a0e8ebb49d0378b b/fuzz/cert_corpus/e67cc75ea22aec3e31ac08718a0e8ebb49d0378b
new file mode 100644
index 0000000..e704b2b
--- /dev/null
+++ b/fuzz/cert_corpus/e67cc75ea22aec3e31ac08718a0e8ebb49d0378b
Binary files differ
diff --git a/fuzz/cert_corpus/e6d0bda14de5fabf61d6a77ed9de9dc32751c193 b/fuzz/cert_corpus/e6d0bda14de5fabf61d6a77ed9de9dc32751c193
new file mode 100644
index 0000000..ce4f103
--- /dev/null
+++ b/fuzz/cert_corpus/e6d0bda14de5fabf61d6a77ed9de9dc32751c193
Binary files differ
diff --git a/fuzz/cert_corpus/e9617db6d8b651b46ea1ef7b904887d3259d8721 b/fuzz/cert_corpus/e9617db6d8b651b46ea1ef7b904887d3259d8721
new file mode 100644
index 0000000..0cf5bc7
--- /dev/null
+++ b/fuzz/cert_corpus/e9617db6d8b651b46ea1ef7b904887d3259d8721
Binary files differ
diff --git a/fuzz/cert_corpus/ebb2f919adba543e9f61ba5ffd13e89c9422f70a b/fuzz/cert_corpus/ebb2f919adba543e9f61ba5ffd13e89c9422f70a
new file mode 100644
index 0000000..e5497b5
--- /dev/null
+++ b/fuzz/cert_corpus/ebb2f919adba543e9f61ba5ffd13e89c9422f70a
Binary files differ
diff --git a/fuzz/cert_corpus/ec7f5fea97ac8cca5a49f7833769e026b55916b9 b/fuzz/cert_corpus/ec7f5fea97ac8cca5a49f7833769e026b55916b9
new file mode 100644
index 0000000..f1233cd
--- /dev/null
+++ b/fuzz/cert_corpus/ec7f5fea97ac8cca5a49f7833769e026b55916b9
Binary files differ
diff --git a/fuzz/cert_corpus/eca7916b3e759ecd116bd761c7df90adda331bc5 b/fuzz/cert_corpus/eca7916b3e759ecd116bd761c7df90adda331bc5
new file mode 100644
index 0000000..f9a04c2
--- /dev/null
+++ b/fuzz/cert_corpus/eca7916b3e759ecd116bd761c7df90adda331bc5
Binary files differ
diff --git a/fuzz/cert_corpus/ecac00e857f10a143e5760a8d027498fdb46cbf4 b/fuzz/cert_corpus/ecac00e857f10a143e5760a8d027498fdb46cbf4
new file mode 100644
index 0000000..540320c
--- /dev/null
+++ b/fuzz/cert_corpus/ecac00e857f10a143e5760a8d027498fdb46cbf4
Binary files differ
diff --git a/fuzz/cert_corpus/eccdca719eadb11048cfea5e48e5fd9fa44be622 b/fuzz/cert_corpus/eccdca719eadb11048cfea5e48e5fd9fa44be622
new file mode 100644
index 0000000..03ac92d
--- /dev/null
+++ b/fuzz/cert_corpus/eccdca719eadb11048cfea5e48e5fd9fa44be622
Binary files differ
diff --git a/fuzz/cert_corpus/efb28c035f9c8a62a312dfe83434cddbc51b4c8a b/fuzz/cert_corpus/efb28c035f9c8a62a312dfe83434cddbc51b4c8a
new file mode 100644
index 0000000..3c835e0
--- /dev/null
+++ b/fuzz/cert_corpus/efb28c035f9c8a62a312dfe83434cddbc51b4c8a
Binary files differ
diff --git a/fuzz/cert_corpus/f34b279011e9a03e95b85f6a8d5e2a59089fe516 b/fuzz/cert_corpus/f34b279011e9a03e95b85f6a8d5e2a59089fe516
new file mode 100644
index 0000000..2641dad
--- /dev/null
+++ b/fuzz/cert_corpus/f34b279011e9a03e95b85f6a8d5e2a59089fe516
Binary files differ
diff --git a/fuzz/cert_corpus/f50d7ea12daaf659dc71a82e17daa9cad454be8b b/fuzz/cert_corpus/f50d7ea12daaf659dc71a82e17daa9cad454be8b
new file mode 100644
index 0000000..d42ec51
--- /dev/null
+++ b/fuzz/cert_corpus/f50d7ea12daaf659dc71a82e17daa9cad454be8b
@@ -0,0 +1 @@
+0€0€(í0‚€0Šh €1’h APhö|0‚%“å0	¿÷œ¹æ(*)01€0€
\ No newline at end of file
diff --git a/fuzz/cert_corpus/f8e817dc5c2b1f27d31240841ade404d15606742 b/fuzz/cert_corpus/f8e817dc5c2b1f27d31240841ade404d15606742
new file mode 100644
index 0000000..be2675b
--- /dev/null
+++ b/fuzz/cert_corpus/f8e817dc5c2b1f27d31240841ade404d15606742
Binary files differ
diff --git a/fuzz/cert_corpus/fb7209d187e6c93f840abfded54439ea031fe0de b/fuzz/cert_corpus/fb7209d187e6c93f840abfded54439ea031fe0de
new file mode 100644
index 0000000..2516247
--- /dev/null
+++ b/fuzz/cert_corpus/fb7209d187e6c93f840abfded54439ea031fe0de
Binary files differ
diff --git a/fuzz/cert_corpus/fca0bbdfab4ad790670f079ac242c12a5c7fa58a b/fuzz/cert_corpus/fca0bbdfab4ad790670f079ac242c12a5c7fa58a
new file mode 100644
index 0000000..ff87824
--- /dev/null
+++ b/fuzz/cert_corpus/fca0bbdfab4ad790670f079ac242c12a5c7fa58a
Binary files differ
diff --git a/fuzz/cert_corpus/ff46d1b4923b92b30fa6fd9a7e429ad1cb1f9e7f b/fuzz/cert_corpus/ff46d1b4923b92b30fa6fd9a7e429ad1cb1f9e7f
new file mode 100644
index 0000000..aff1044
--- /dev/null
+++ b/fuzz/cert_corpus/ff46d1b4923b92b30fa6fd9a7e429ad1cb1f9e7f
Binary files differ
diff --git a/fuzz/client.cc b/fuzz/client.cc
new file mode 100644
index 0000000..7cf41fc
--- /dev/null
+++ b/fuzz/client.cc
@@ -0,0 +1,30 @@
+#include <assert.h>
+
+#include <openssl/ssl.h>
+
+struct GlobalState {
+  GlobalState() : ctx(SSL_CTX_new(SSLv23_method())) {}
+
+  ~GlobalState() {
+    SSL_CTX_free(ctx);
+  }
+
+  SSL_CTX *const ctx;
+};
+
+static GlobalState g_state;
+
+extern "C" int LLVMFuzzerTestOneInput(uint8_t *buf, size_t len) {
+  // This only fuzzes the initial flow from the server so far.
+  SSL *client = SSL_new(g_state.ctx);
+  BIO *in = BIO_new(BIO_s_mem());
+  BIO *out = BIO_new(BIO_s_mem());
+  SSL_set_bio(client, in, out);
+  SSL_set_connect_state(client);
+
+  BIO_write(in, buf, len);
+  SSL_do_handshake(client);
+  SSL_free(client);
+
+  return 0;
+}
diff --git a/fuzz/client_corpus/0045429528cdad90f2fea4a05a6a35311af246d8 b/fuzz/client_corpus/0045429528cdad90f2fea4a05a6a35311af246d8
new file mode 100644
index 0000000..7e8c0cb
--- /dev/null
+++ b/fuzz/client_corpus/0045429528cdad90f2fea4a05a6a35311af246d8
Binary files differ
diff --git a/fuzz/client_corpus/00717d11ddde89f0895bf72de8de3bf99d1b5c46 b/fuzz/client_corpus/00717d11ddde89f0895bf72de8de3bf99d1b5c46
new file mode 100644
index 0000000..27985b4
--- /dev/null
+++ b/fuzz/client_corpus/00717d11ddde89f0895bf72de8de3bf99d1b5c46
Binary files differ
diff --git a/fuzz/client_corpus/00a71e9e98b44548faef02dc058b357edeaf6e88 b/fuzz/client_corpus/00a71e9e98b44548faef02dc058b357edeaf6e88
new file mode 100644
index 0000000..89a99f0
--- /dev/null
+++ b/fuzz/client_corpus/00a71e9e98b44548faef02dc058b357edeaf6e88
Binary files differ
diff --git a/fuzz/client_corpus/01e050c8b311caa72bebb132b9fe98e22ac56682 b/fuzz/client_corpus/01e050c8b311caa72bebb132b9fe98e22ac56682
new file mode 100644
index 0000000..ef1c9d4
--- /dev/null
+++ b/fuzz/client_corpus/01e050c8b311caa72bebb132b9fe98e22ac56682
Binary files differ
diff --git a/fuzz/client_corpus/031f30a25eb84fc9585ffa6d9f8ad2a6910a450b b/fuzz/client_corpus/031f30a25eb84fc9585ffa6d9f8ad2a6910a450b
new file mode 100644
index 0000000..52c692d
--- /dev/null
+++ b/fuzz/client_corpus/031f30a25eb84fc9585ffa6d9f8ad2a6910a450b
Binary files differ
diff --git a/fuzz/client_corpus/046d8a2ca8e3e68dc1b555e46ac4d4a6d2491982 b/fuzz/client_corpus/046d8a2ca8e3e68dc1b555e46ac4d4a6d2491982
new file mode 100644
index 0000000..ea5e280
--- /dev/null
+++ b/fuzz/client_corpus/046d8a2ca8e3e68dc1b555e46ac4d4a6d2491982
Binary files differ
diff --git a/fuzz/client_corpus/05580dbaccccb94d23cbfc8bab5a1d299ebe79ee b/fuzz/client_corpus/05580dbaccccb94d23cbfc8bab5a1d299ebe79ee
new file mode 100644
index 0000000..2efe81c
--- /dev/null
+++ b/fuzz/client_corpus/05580dbaccccb94d23cbfc8bab5a1d299ebe79ee
Binary files differ
diff --git a/fuzz/client_corpus/05a05196a8e0958f1ba744d122208d337a8696fa b/fuzz/client_corpus/05a05196a8e0958f1ba744d122208d337a8696fa
new file mode 100644
index 0000000..eadbb9c
--- /dev/null
+++ b/fuzz/client_corpus/05a05196a8e0958f1ba744d122208d337a8696fa
Binary files differ
diff --git a/fuzz/client_corpus/08166819b9de009808ba8aeeb2e11eb6d1b1bba8 b/fuzz/client_corpus/08166819b9de009808ba8aeeb2e11eb6d1b1bba8
new file mode 100644
index 0000000..7d3a4ae
--- /dev/null
+++ b/fuzz/client_corpus/08166819b9de009808ba8aeeb2e11eb6d1b1bba8
Binary files differ
diff --git a/fuzz/client_corpus/09225c1125fed526539a962ff46972676518fa34 b/fuzz/client_corpus/09225c1125fed526539a962ff46972676518fa34
new file mode 100644
index 0000000..2efb6c7
--- /dev/null
+++ b/fuzz/client_corpus/09225c1125fed526539a962ff46972676518fa34
Binary files differ
diff --git a/fuzz/client_corpus/0b251113d82bdc624c418ca3e9a822af3f43f4bc b/fuzz/client_corpus/0b251113d82bdc624c418ca3e9a822af3f43f4bc
new file mode 100644
index 0000000..57c31c3
--- /dev/null
+++ b/fuzz/client_corpus/0b251113d82bdc624c418ca3e9a822af3f43f4bc
Binary files differ
diff --git a/fuzz/client_corpus/0c79672c66964d7747dbf2f2321a2e204a35f68f b/fuzz/client_corpus/0c79672c66964d7747dbf2f2321a2e204a35f68f
new file mode 100644
index 0000000..fe8dcca
--- /dev/null
+++ b/fuzz/client_corpus/0c79672c66964d7747dbf2f2321a2e204a35f68f
Binary files differ
diff --git a/fuzz/client_corpus/0d5c745716044febd8eeac90ae421efc7fc52530 b/fuzz/client_corpus/0d5c745716044febd8eeac90ae421efc7fc52530
new file mode 100644
index 0000000..f75dc5b
--- /dev/null
+++ b/fuzz/client_corpus/0d5c745716044febd8eeac90ae421efc7fc52530
Binary files differ
diff --git a/fuzz/client_corpus/0d9891ca130cb689545acefd20ccc979e4b53f27 b/fuzz/client_corpus/0d9891ca130cb689545acefd20ccc979e4b53f27
new file mode 100644
index 0000000..72b85bc
--- /dev/null
+++ b/fuzz/client_corpus/0d9891ca130cb689545acefd20ccc979e4b53f27
Binary files differ
diff --git a/fuzz/client_corpus/0e8233cf1731cca3af17ab71677c477d877ac384 b/fuzz/client_corpus/0e8233cf1731cca3af17ab71677c477d877ac384
new file mode 100644
index 0000000..f657b38
--- /dev/null
+++ b/fuzz/client_corpus/0e8233cf1731cca3af17ab71677c477d877ac384
Binary files differ
diff --git a/fuzz/client_corpus/0ecdd5fd1d9a04965be08daa6a8df1450eb2535d b/fuzz/client_corpus/0ecdd5fd1d9a04965be08daa6a8df1450eb2535d
new file mode 100644
index 0000000..8780739
--- /dev/null
+++ b/fuzz/client_corpus/0ecdd5fd1d9a04965be08daa6a8df1450eb2535d
Binary files differ
diff --git a/fuzz/client_corpus/0ff674842ef580cca7a5a6422808d7b698027131 b/fuzz/client_corpus/0ff674842ef580cca7a5a6422808d7b698027131
new file mode 100644
index 0000000..c641e55
--- /dev/null
+++ b/fuzz/client_corpus/0ff674842ef580cca7a5a6422808d7b698027131
Binary files differ
diff --git a/fuzz/client_corpus/10d8e6931cf75e896c8a6ec1081df869e30310e1 b/fuzz/client_corpus/10d8e6931cf75e896c8a6ec1081df869e30310e1
new file mode 100644
index 0000000..f74f09a
--- /dev/null
+++ b/fuzz/client_corpus/10d8e6931cf75e896c8a6ec1081df869e30310e1
Binary files differ
diff --git a/fuzz/client_corpus/111bb472fcf4fc134af5ec3c189f43ef9ef19b36 b/fuzz/client_corpus/111bb472fcf4fc134af5ec3c189f43ef9ef19b36
new file mode 100644
index 0000000..92f5146
--- /dev/null
+++ b/fuzz/client_corpus/111bb472fcf4fc134af5ec3c189f43ef9ef19b36
Binary files differ
diff --git a/fuzz/client_corpus/1175419b73c59b028cb36d263fe31dddff6ed54d b/fuzz/client_corpus/1175419b73c59b028cb36d263fe31dddff6ed54d
new file mode 100644
index 0000000..d025cfe
--- /dev/null
+++ b/fuzz/client_corpus/1175419b73c59b028cb36d263fe31dddff6ed54d
Binary files differ
diff --git a/fuzz/client_corpus/119735b91048ae492dfb7459aaa01d7fe13c767d b/fuzz/client_corpus/119735b91048ae492dfb7459aaa01d7fe13c767d
new file mode 100644
index 0000000..5fd8938
--- /dev/null
+++ b/fuzz/client_corpus/119735b91048ae492dfb7459aaa01d7fe13c767d
Binary files differ
diff --git a/fuzz/client_corpus/1263ef52964f6480ecfb0703593b43f62ad6e0f0 b/fuzz/client_corpus/1263ef52964f6480ecfb0703593b43f62ad6e0f0
new file mode 100644
index 0000000..3ee7229
--- /dev/null
+++ b/fuzz/client_corpus/1263ef52964f6480ecfb0703593b43f62ad6e0f0
Binary files differ
diff --git a/fuzz/client_corpus/129f293ffb471c54f0a65ebe68e8c03ae20edc63 b/fuzz/client_corpus/129f293ffb471c54f0a65ebe68e8c03ae20edc63
new file mode 100644
index 0000000..9edb0d7
--- /dev/null
+++ b/fuzz/client_corpus/129f293ffb471c54f0a65ebe68e8c03ae20edc63
Binary files differ
diff --git a/fuzz/client_corpus/12b0df532889077124403153935a3d4902a6268d b/fuzz/client_corpus/12b0df532889077124403153935a3d4902a6268d
new file mode 100644
index 0000000..3e33a96
--- /dev/null
+++ b/fuzz/client_corpus/12b0df532889077124403153935a3d4902a6268d
Binary files differ
diff --git a/fuzz/client_corpus/1387b2abb0baff44aa00f822361ac1627f59b0ab b/fuzz/client_corpus/1387b2abb0baff44aa00f822361ac1627f59b0ab
new file mode 100644
index 0000000..625e3b4
--- /dev/null
+++ b/fuzz/client_corpus/1387b2abb0baff44aa00f822361ac1627f59b0ab
Binary files differ
diff --git a/fuzz/client_corpus/15a54d5f346c2fd9fa3da6f73cee5db2c7952f68 b/fuzz/client_corpus/15a54d5f346c2fd9fa3da6f73cee5db2c7952f68
new file mode 100644
index 0000000..ba8f485
--- /dev/null
+++ b/fuzz/client_corpus/15a54d5f346c2fd9fa3da6f73cee5db2c7952f68
Binary files differ
diff --git a/fuzz/client_corpus/16dc8080d01278cfb39ee1c6836fe9d3b7e55436 b/fuzz/client_corpus/16dc8080d01278cfb39ee1c6836fe9d3b7e55436
new file mode 100644
index 0000000..58b8288
--- /dev/null
+++ b/fuzz/client_corpus/16dc8080d01278cfb39ee1c6836fe9d3b7e55436
Binary files differ
diff --git a/fuzz/client_corpus/170cc10f660a715bbde0e00ad2d20f2c518a9716 b/fuzz/client_corpus/170cc10f660a715bbde0e00ad2d20f2c518a9716
new file mode 100644
index 0000000..af95fa5
--- /dev/null
+++ b/fuzz/client_corpus/170cc10f660a715bbde0e00ad2d20f2c518a9716
Binary files differ
diff --git a/fuzz/client_corpus/17f8d2b61c40dd352a6fb9f72e8ab6824a992f3a b/fuzz/client_corpus/17f8d2b61c40dd352a6fb9f72e8ab6824a992f3a
new file mode 100644
index 0000000..0ffce93
--- /dev/null
+++ b/fuzz/client_corpus/17f8d2b61c40dd352a6fb9f72e8ab6824a992f3a
Binary files differ
diff --git a/fuzz/client_corpus/189eec7d1e6d85b7cbc91c0320ea8643426e3ccd b/fuzz/client_corpus/189eec7d1e6d85b7cbc91c0320ea8643426e3ccd
new file mode 100644
index 0000000..5e50ad6
--- /dev/null
+++ b/fuzz/client_corpus/189eec7d1e6d85b7cbc91c0320ea8643426e3ccd
Binary files differ
diff --git a/fuzz/client_corpus/1acd222a42da3a075dffa389d6afb2f42b6e143b b/fuzz/client_corpus/1acd222a42da3a075dffa389d6afb2f42b6e143b
new file mode 100644
index 0000000..b0348d4
--- /dev/null
+++ b/fuzz/client_corpus/1acd222a42da3a075dffa389d6afb2f42b6e143b
Binary files differ
diff --git a/fuzz/client_corpus/1c7a97739e894d39ece462a80f4039f3c778a3ef b/fuzz/client_corpus/1c7a97739e894d39ece462a80f4039f3c778a3ef
new file mode 100644
index 0000000..73807d1
--- /dev/null
+++ b/fuzz/client_corpus/1c7a97739e894d39ece462a80f4039f3c778a3ef
Binary files differ
diff --git a/fuzz/client_corpus/1d79993946951d8c5e37daccdd793c73f8c8b7a4 b/fuzz/client_corpus/1d79993946951d8c5e37daccdd793c73f8c8b7a4
new file mode 100644
index 0000000..a6fe745
--- /dev/null
+++ b/fuzz/client_corpus/1d79993946951d8c5e37daccdd793c73f8c8b7a4
Binary files differ
diff --git a/fuzz/client_corpus/1eb2aba2bb11920007b64d8c9a2dd5f54c398591 b/fuzz/client_corpus/1eb2aba2bb11920007b64d8c9a2dd5f54c398591
new file mode 100644
index 0000000..d898954
--- /dev/null
+++ b/fuzz/client_corpus/1eb2aba2bb11920007b64d8c9a2dd5f54c398591
Binary files differ
diff --git a/fuzz/client_corpus/1efe14c5799b31f2dc4c413643235c9ec5086e06 b/fuzz/client_corpus/1efe14c5799b31f2dc4c413643235c9ec5086e06
new file mode 100644
index 0000000..9c181bd
--- /dev/null
+++ b/fuzz/client_corpus/1efe14c5799b31f2dc4c413643235c9ec5086e06
Binary files differ
diff --git a/fuzz/client_corpus/1f0ba9f8642a13aab05da4fb0add5257cfa0622e b/fuzz/client_corpus/1f0ba9f8642a13aab05da4fb0add5257cfa0622e
new file mode 100644
index 0000000..d3cbd2a
--- /dev/null
+++ b/fuzz/client_corpus/1f0ba9f8642a13aab05da4fb0add5257cfa0622e
Binary files differ
diff --git a/fuzz/client_corpus/212aefea1187a824be184640c2c673c5b85fb6e4 b/fuzz/client_corpus/212aefea1187a824be184640c2c673c5b85fb6e4
new file mode 100644
index 0000000..64043d3
--- /dev/null
+++ b/fuzz/client_corpus/212aefea1187a824be184640c2c673c5b85fb6e4
Binary files differ
diff --git a/fuzz/client_corpus/2188751539674238828d645bbde78b4cef2fa39c b/fuzz/client_corpus/2188751539674238828d645bbde78b4cef2fa39c
new file mode 100644
index 0000000..e714212
--- /dev/null
+++ b/fuzz/client_corpus/2188751539674238828d645bbde78b4cef2fa39c
Binary files differ
diff --git a/fuzz/client_corpus/236017193c5b7a862bc69756b856028eef0f10af b/fuzz/client_corpus/236017193c5b7a862bc69756b856028eef0f10af
new file mode 100644
index 0000000..9a47542
--- /dev/null
+++ b/fuzz/client_corpus/236017193c5b7a862bc69756b856028eef0f10af
Binary files differ
diff --git a/fuzz/client_corpus/262cc348aa328fa0e256c1ee38a13bf32be45080 b/fuzz/client_corpus/262cc348aa328fa0e256c1ee38a13bf32be45080
new file mode 100644
index 0000000..adb0146
--- /dev/null
+++ b/fuzz/client_corpus/262cc348aa328fa0e256c1ee38a13bf32be45080
Binary files differ
diff --git a/fuzz/client_corpus/2640d5ce7a30e232909199583946b0d0e93639b9 b/fuzz/client_corpus/2640d5ce7a30e232909199583946b0d0e93639b9
new file mode 100644
index 0000000..e7bb434
--- /dev/null
+++ b/fuzz/client_corpus/2640d5ce7a30e232909199583946b0d0e93639b9
Binary files differ
diff --git a/fuzz/client_corpus/295259cda114ddc75587c4237e42d2cb3bd58165 b/fuzz/client_corpus/295259cda114ddc75587c4237e42d2cb3bd58165
new file mode 100644
index 0000000..1ab19b9
--- /dev/null
+++ b/fuzz/client_corpus/295259cda114ddc75587c4237e42d2cb3bd58165
Binary files differ
diff --git a/fuzz/client_corpus/2ac1d35580c355bdab0b951f07b1983b4bd6b981 b/fuzz/client_corpus/2ac1d35580c355bdab0b951f07b1983b4bd6b981
new file mode 100644
index 0000000..2e62263
--- /dev/null
+++ b/fuzz/client_corpus/2ac1d35580c355bdab0b951f07b1983b4bd6b981
Binary files differ
diff --git a/fuzz/client_corpus/2b2b7b4cc764d2141319668022a3a220864f421e b/fuzz/client_corpus/2b2b7b4cc764d2141319668022a3a220864f421e
new file mode 100644
index 0000000..fc533a1
--- /dev/null
+++ b/fuzz/client_corpus/2b2b7b4cc764d2141319668022a3a220864f421e
Binary files differ
diff --git a/fuzz/client_corpus/2c0ba9f07133ff5c9f25f2518a375ece8a4b2ab7 b/fuzz/client_corpus/2c0ba9f07133ff5c9f25f2518a375ece8a4b2ab7
new file mode 100644
index 0000000..e2ee8fb
--- /dev/null
+++ b/fuzz/client_corpus/2c0ba9f07133ff5c9f25f2518a375ece8a4b2ab7
Binary files differ
diff --git a/fuzz/client_corpus/2c593c598bad54c9ec436a543910f18adfe1e40f b/fuzz/client_corpus/2c593c598bad54c9ec436a543910f18adfe1e40f
new file mode 100644
index 0000000..ed09fe3
--- /dev/null
+++ b/fuzz/client_corpus/2c593c598bad54c9ec436a543910f18adfe1e40f
Binary files differ
diff --git a/fuzz/client_corpus/2e113fb2084dbb3623caaa1bc9240417eb1745e7 b/fuzz/client_corpus/2e113fb2084dbb3623caaa1bc9240417eb1745e7
new file mode 100644
index 0000000..1ba51f0
--- /dev/null
+++ b/fuzz/client_corpus/2e113fb2084dbb3623caaa1bc9240417eb1745e7
Binary files differ
diff --git a/fuzz/client_corpus/2e7f99689d1ac0a28adf0785f28946561b3a9076 b/fuzz/client_corpus/2e7f99689d1ac0a28adf0785f28946561b3a9076
new file mode 100644
index 0000000..950c3e3
--- /dev/null
+++ b/fuzz/client_corpus/2e7f99689d1ac0a28adf0785f28946561b3a9076
Binary files differ
diff --git a/fuzz/client_corpus/31070a7503de09885b27548828871cd7095deae6 b/fuzz/client_corpus/31070a7503de09885b27548828871cd7095deae6
new file mode 100644
index 0000000..2568adf
--- /dev/null
+++ b/fuzz/client_corpus/31070a7503de09885b27548828871cd7095deae6
Binary files differ
diff --git a/fuzz/client_corpus/31bd0841f052c324db7b6bcde7e5517b289708d7 b/fuzz/client_corpus/31bd0841f052c324db7b6bcde7e5517b289708d7
new file mode 100644
index 0000000..3ecd780
--- /dev/null
+++ b/fuzz/client_corpus/31bd0841f052c324db7b6bcde7e5517b289708d7
Binary files differ
diff --git a/fuzz/client_corpus/3368ce768ff26ebc4e4e7b3bd1f1574afc71435f b/fuzz/client_corpus/3368ce768ff26ebc4e4e7b3bd1f1574afc71435f
new file mode 100644
index 0000000..e23862b
--- /dev/null
+++ b/fuzz/client_corpus/3368ce768ff26ebc4e4e7b3bd1f1574afc71435f
Binary files differ
diff --git a/fuzz/client_corpus/34edfdaf9801227520aef18e911c0dd28cad2dde b/fuzz/client_corpus/34edfdaf9801227520aef18e911c0dd28cad2dde
new file mode 100644
index 0000000..4399ca0
--- /dev/null
+++ b/fuzz/client_corpus/34edfdaf9801227520aef18e911c0dd28cad2dde
Binary files differ
diff --git a/fuzz/client_corpus/36e6dd737b0f9e0c28acd58660006ea5ba3e08a3 b/fuzz/client_corpus/36e6dd737b0f9e0c28acd58660006ea5ba3e08a3
new file mode 100644
index 0000000..2591216
--- /dev/null
+++ b/fuzz/client_corpus/36e6dd737b0f9e0c28acd58660006ea5ba3e08a3
Binary files differ
diff --git a/fuzz/client_corpus/38c4742b3533fb5fe2aa75661055614683a90b42 b/fuzz/client_corpus/38c4742b3533fb5fe2aa75661055614683a90b42
new file mode 100644
index 0000000..86ec229
--- /dev/null
+++ b/fuzz/client_corpus/38c4742b3533fb5fe2aa75661055614683a90b42
Binary files differ
diff --git a/fuzz/client_corpus/3940f0ddcaac3b00c6ddb06c29483958214a8d08 b/fuzz/client_corpus/3940f0ddcaac3b00c6ddb06c29483958214a8d08
new file mode 100644
index 0000000..b565129
--- /dev/null
+++ b/fuzz/client_corpus/3940f0ddcaac3b00c6ddb06c29483958214a8d08
Binary files differ
diff --git a/fuzz/client_corpus/3ae3f333e3883de4de59431f0bde46aaae04dc32 b/fuzz/client_corpus/3ae3f333e3883de4de59431f0bde46aaae04dc32
new file mode 100644
index 0000000..b337102
--- /dev/null
+++ b/fuzz/client_corpus/3ae3f333e3883de4de59431f0bde46aaae04dc32
Binary files differ
diff --git a/fuzz/client_corpus/3c4871d7a5c1819913394d6997693857c117cb24 b/fuzz/client_corpus/3c4871d7a5c1819913394d6997693857c117cb24
new file mode 100644
index 0000000..b8c600f
--- /dev/null
+++ b/fuzz/client_corpus/3c4871d7a5c1819913394d6997693857c117cb24
Binary files differ
diff --git a/fuzz/client_corpus/40515498756f4fac616ddc3ac4c2669ea5a8771f b/fuzz/client_corpus/40515498756f4fac616ddc3ac4c2669ea5a8771f
new file mode 100644
index 0000000..964fc15
--- /dev/null
+++ b/fuzz/client_corpus/40515498756f4fac616ddc3ac4c2669ea5a8771f
Binary files differ
diff --git a/fuzz/client_corpus/405b2eaa9f8a6ec9aebcaa7d9897c1be18bf9b57 b/fuzz/client_corpus/405b2eaa9f8a6ec9aebcaa7d9897c1be18bf9b57
new file mode 100644
index 0000000..85a520d
--- /dev/null
+++ b/fuzz/client_corpus/405b2eaa9f8a6ec9aebcaa7d9897c1be18bf9b57
Binary files differ
diff --git a/fuzz/client_corpus/4105f3698152311e9e23ebec179197475c8910d4 b/fuzz/client_corpus/4105f3698152311e9e23ebec179197475c8910d4
new file mode 100644
index 0000000..bdf45e5
--- /dev/null
+++ b/fuzz/client_corpus/4105f3698152311e9e23ebec179197475c8910d4
Binary files differ
diff --git a/fuzz/client_corpus/41b22775bbf5e9716b641b963830a1f35029b400 b/fuzz/client_corpus/41b22775bbf5e9716b641b963830a1f35029b400
new file mode 100644
index 0000000..7c31d6d
--- /dev/null
+++ b/fuzz/client_corpus/41b22775bbf5e9716b641b963830a1f35029b400
Binary files differ
diff --git a/fuzz/client_corpus/43288d61a185406eeef5c10298a898755dd108dc b/fuzz/client_corpus/43288d61a185406eeef5c10298a898755dd108dc
new file mode 100644
index 0000000..451f05d
--- /dev/null
+++ b/fuzz/client_corpus/43288d61a185406eeef5c10298a898755dd108dc
Binary files differ
diff --git a/fuzz/client_corpus/447ab5b3ef953688fc388dd37555497ce1213a4a b/fuzz/client_corpus/447ab5b3ef953688fc388dd37555497ce1213a4a
new file mode 100644
index 0000000..5623276
--- /dev/null
+++ b/fuzz/client_corpus/447ab5b3ef953688fc388dd37555497ce1213a4a
Binary files differ
diff --git a/fuzz/client_corpus/4589942d410d038d7739511c3fc862bfaf6f5d55 b/fuzz/client_corpus/4589942d410d038d7739511c3fc862bfaf6f5d55
new file mode 100644
index 0000000..ec50857
--- /dev/null
+++ b/fuzz/client_corpus/4589942d410d038d7739511c3fc862bfaf6f5d55
Binary files differ
diff --git a/fuzz/client_corpus/458e6fe51ffd10f4f003507da3d34105ff4ba41d b/fuzz/client_corpus/458e6fe51ffd10f4f003507da3d34105ff4ba41d
new file mode 100644
index 0000000..70d8996
--- /dev/null
+++ b/fuzz/client_corpus/458e6fe51ffd10f4f003507da3d34105ff4ba41d
Binary files differ
diff --git a/fuzz/client_corpus/480fa3d3cf83d7a161f4a3d863cc5b256c95b0cb b/fuzz/client_corpus/480fa3d3cf83d7a161f4a3d863cc5b256c95b0cb
new file mode 100644
index 0000000..5c03364
--- /dev/null
+++ b/fuzz/client_corpus/480fa3d3cf83d7a161f4a3d863cc5b256c95b0cb
Binary files differ
diff --git a/fuzz/client_corpus/4ab06c821f1a0b5d761ecf299708867e4ca99e9b b/fuzz/client_corpus/4ab06c821f1a0b5d761ecf299708867e4ca99e9b
new file mode 100644
index 0000000..4f64cb0
--- /dev/null
+++ b/fuzz/client_corpus/4ab06c821f1a0b5d761ecf299708867e4ca99e9b
Binary files differ
diff --git a/fuzz/client_corpus/4ad50b5ec8b4abc82f90962f6d2a845720fc5b5e b/fuzz/client_corpus/4ad50b5ec8b4abc82f90962f6d2a845720fc5b5e
new file mode 100644
index 0000000..67f0191
--- /dev/null
+++ b/fuzz/client_corpus/4ad50b5ec8b4abc82f90962f6d2a845720fc5b5e
Binary files differ
diff --git a/fuzz/client_corpus/4ad82ef07c3ced7fa615073827bc04a3e4969a3d b/fuzz/client_corpus/4ad82ef07c3ced7fa615073827bc04a3e4969a3d
new file mode 100644
index 0000000..323eb7a
--- /dev/null
+++ b/fuzz/client_corpus/4ad82ef07c3ced7fa615073827bc04a3e4969a3d
Binary files differ
diff --git a/fuzz/client_corpus/4c72c8bec7ac46b94757c9043197afa1b13eaa27 b/fuzz/client_corpus/4c72c8bec7ac46b94757c9043197afa1b13eaa27
new file mode 100644
index 0000000..7ac9309
--- /dev/null
+++ b/fuzz/client_corpus/4c72c8bec7ac46b94757c9043197afa1b13eaa27
Binary files differ
diff --git a/fuzz/client_corpus/4c7f90f4d64c6ef5968dedca30385c5cf76f3972 b/fuzz/client_corpus/4c7f90f4d64c6ef5968dedca30385c5cf76f3972
new file mode 100644
index 0000000..0956e84
--- /dev/null
+++ b/fuzz/client_corpus/4c7f90f4d64c6ef5968dedca30385c5cf76f3972
Binary files differ
diff --git a/fuzz/client_corpus/4c8d920b2b9c2c43b50561b90e9c6a03689e7171 b/fuzz/client_corpus/4c8d920b2b9c2c43b50561b90e9c6a03689e7171
new file mode 100644
index 0000000..2c21309
--- /dev/null
+++ b/fuzz/client_corpus/4c8d920b2b9c2c43b50561b90e9c6a03689e7171
Binary files differ
diff --git a/fuzz/client_corpus/4d6fed1b6f36945060b1b4f73ca29e20cf76744d b/fuzz/client_corpus/4d6fed1b6f36945060b1b4f73ca29e20cf76744d
new file mode 100644
index 0000000..9e0dc96
--- /dev/null
+++ b/fuzz/client_corpus/4d6fed1b6f36945060b1b4f73ca29e20cf76744d
Binary files differ
diff --git a/fuzz/client_corpus/4d8c1b4c5e122c2b8255b65e0bdb80ef9fa1573c b/fuzz/client_corpus/4d8c1b4c5e122c2b8255b65e0bdb80ef9fa1573c
new file mode 100644
index 0000000..cfb785a
--- /dev/null
+++ b/fuzz/client_corpus/4d8c1b4c5e122c2b8255b65e0bdb80ef9fa1573c
Binary files differ
diff --git a/fuzz/client_corpus/4dbe7996ef1b6fc26351aec25483eebfefb0c678 b/fuzz/client_corpus/4dbe7996ef1b6fc26351aec25483eebfefb0c678
new file mode 100644
index 0000000..27ec1e6
--- /dev/null
+++ b/fuzz/client_corpus/4dbe7996ef1b6fc26351aec25483eebfefb0c678
Binary files differ
diff --git a/fuzz/client_corpus/4e53d29f05655cd0f1a746b3ddabd86e479486ff b/fuzz/client_corpus/4e53d29f05655cd0f1a746b3ddabd86e479486ff
new file mode 100644
index 0000000..5a70281
--- /dev/null
+++ b/fuzz/client_corpus/4e53d29f05655cd0f1a746b3ddabd86e479486ff
Binary files differ
diff --git a/fuzz/client_corpus/4ea847253da2a1a1153634efa3d904a35c59f4a1 b/fuzz/client_corpus/4ea847253da2a1a1153634efa3d904a35c59f4a1
new file mode 100644
index 0000000..3b45977
--- /dev/null
+++ b/fuzz/client_corpus/4ea847253da2a1a1153634efa3d904a35c59f4a1
Binary files differ
diff --git a/fuzz/client_corpus/4f041d38c50cd4d7f6a65b8a3c0386ed8e62b97f b/fuzz/client_corpus/4f041d38c50cd4d7f6a65b8a3c0386ed8e62b97f
new file mode 100644
index 0000000..b25bce0
--- /dev/null
+++ b/fuzz/client_corpus/4f041d38c50cd4d7f6a65b8a3c0386ed8e62b97f
Binary files differ
diff --git a/fuzz/client_corpus/505c17e142df143ed7c625dbb2a03999d335c2c4 b/fuzz/client_corpus/505c17e142df143ed7c625dbb2a03999d335c2c4
new file mode 100644
index 0000000..1c8b128
--- /dev/null
+++ b/fuzz/client_corpus/505c17e142df143ed7c625dbb2a03999d335c2c4
Binary files differ
diff --git a/fuzz/client_corpus/51a55b3718f12f1a65110f86eddf8f0c81ce148e b/fuzz/client_corpus/51a55b3718f12f1a65110f86eddf8f0c81ce148e
new file mode 100644
index 0000000..3a1de20
--- /dev/null
+++ b/fuzz/client_corpus/51a55b3718f12f1a65110f86eddf8f0c81ce148e
Binary files differ
diff --git a/fuzz/client_corpus/55e200ec05782651e9fb7034708fc21048a63cb1 b/fuzz/client_corpus/55e200ec05782651e9fb7034708fc21048a63cb1
new file mode 100644
index 0000000..eea095d
--- /dev/null
+++ b/fuzz/client_corpus/55e200ec05782651e9fb7034708fc21048a63cb1
Binary files differ
diff --git a/fuzz/client_corpus/5607123e29f461b258f5ba9bc32772766d09365f b/fuzz/client_corpus/5607123e29f461b258f5ba9bc32772766d09365f
new file mode 100644
index 0000000..1128c9e
--- /dev/null
+++ b/fuzz/client_corpus/5607123e29f461b258f5ba9bc32772766d09365f
Binary files differ
diff --git a/fuzz/client_corpus/5668dabb85cbf4c3021307c59f8aef76cf7c2cf8 b/fuzz/client_corpus/5668dabb85cbf4c3021307c59f8aef76cf7c2cf8
new file mode 100644
index 0000000..e2b854d
--- /dev/null
+++ b/fuzz/client_corpus/5668dabb85cbf4c3021307c59f8aef76cf7c2cf8
Binary files differ
diff --git a/fuzz/client_corpus/57414bd14950858020832e058d5df0e476472075 b/fuzz/client_corpus/57414bd14950858020832e058d5df0e476472075
new file mode 100644
index 0000000..a5b6097
--- /dev/null
+++ b/fuzz/client_corpus/57414bd14950858020832e058d5df0e476472075
Binary files differ
diff --git a/fuzz/client_corpus/578c44a3c147de923df010f2fc2ab66509a46efb b/fuzz/client_corpus/578c44a3c147de923df010f2fc2ab66509a46efb
new file mode 100644
index 0000000..838d3fb
--- /dev/null
+++ b/fuzz/client_corpus/578c44a3c147de923df010f2fc2ab66509a46efb
Binary files differ
diff --git a/fuzz/client_corpus/58cac50fb8d0c0a7fd30fea7c8f4b6eeb618604d b/fuzz/client_corpus/58cac50fb8d0c0a7fd30fea7c8f4b6eeb618604d
new file mode 100644
index 0000000..a75e70f
--- /dev/null
+++ b/fuzz/client_corpus/58cac50fb8d0c0a7fd30fea7c8f4b6eeb618604d
Binary files differ
diff --git a/fuzz/client_corpus/59ef60353ba39b1bc59b5a2b514d4a0ebce56a86 b/fuzz/client_corpus/59ef60353ba39b1bc59b5a2b514d4a0ebce56a86
new file mode 100644
index 0000000..ead2fcd
--- /dev/null
+++ b/fuzz/client_corpus/59ef60353ba39b1bc59b5a2b514d4a0ebce56a86
Binary files differ
diff --git a/fuzz/client_corpus/5c3eff78d2ab5b4cabbbccedb3bde8c213b6e764 b/fuzz/client_corpus/5c3eff78d2ab5b4cabbbccedb3bde8c213b6e764
new file mode 100644
index 0000000..b88fe33
--- /dev/null
+++ b/fuzz/client_corpus/5c3eff78d2ab5b4cabbbccedb3bde8c213b6e764
Binary files differ
diff --git a/fuzz/client_corpus/5c583e55833688cc4f7f6f425147ef3734ad269a b/fuzz/client_corpus/5c583e55833688cc4f7f6f425147ef3734ad269a
new file mode 100644
index 0000000..8908dfe
--- /dev/null
+++ b/fuzz/client_corpus/5c583e55833688cc4f7f6f425147ef3734ad269a
Binary files differ
diff --git a/fuzz/client_corpus/5c843d345a3a7763930444707181aee5cd191438 b/fuzz/client_corpus/5c843d345a3a7763930444707181aee5cd191438
new file mode 100644
index 0000000..b5db104
--- /dev/null
+++ b/fuzz/client_corpus/5c843d345a3a7763930444707181aee5cd191438
Binary files differ
diff --git a/fuzz/client_corpus/5e196581924d733f8faa3d3619453aa01e3700f3 b/fuzz/client_corpus/5e196581924d733f8faa3d3619453aa01e3700f3
new file mode 100644
index 0000000..307ccca
--- /dev/null
+++ b/fuzz/client_corpus/5e196581924d733f8faa3d3619453aa01e3700f3
Binary files differ
diff --git a/fuzz/client_corpus/5e513e23df48329990ed63dc6310e820b21500fb b/fuzz/client_corpus/5e513e23df48329990ed63dc6310e820b21500fb
new file mode 100644
index 0000000..f404255
--- /dev/null
+++ b/fuzz/client_corpus/5e513e23df48329990ed63dc6310e820b21500fb
Binary files differ
diff --git a/fuzz/client_corpus/5e5aac66a37640a8f570abd028adfdd9b50ba75a b/fuzz/client_corpus/5e5aac66a37640a8f570abd028adfdd9b50ba75a
new file mode 100644
index 0000000..dea3c65
--- /dev/null
+++ b/fuzz/client_corpus/5e5aac66a37640a8f570abd028adfdd9b50ba75a
Binary files differ
diff --git a/fuzz/client_corpus/61e69397b08eef12ef32859936989b57525f163e b/fuzz/client_corpus/61e69397b08eef12ef32859936989b57525f163e
new file mode 100644
index 0000000..ca3065a
--- /dev/null
+++ b/fuzz/client_corpus/61e69397b08eef12ef32859936989b57525f163e
Binary files differ
diff --git a/fuzz/client_corpus/62b7b6dde6cac1830d8d1b64c3ff146cc9ee909c b/fuzz/client_corpus/62b7b6dde6cac1830d8d1b64c3ff146cc9ee909c
new file mode 100644
index 0000000..4d472fc
--- /dev/null
+++ b/fuzz/client_corpus/62b7b6dde6cac1830d8d1b64c3ff146cc9ee909c
Binary files differ
diff --git a/fuzz/client_corpus/650d6182ce2b79795477071a5edf71e5e4a2d9af b/fuzz/client_corpus/650d6182ce2b79795477071a5edf71e5e4a2d9af
new file mode 100644
index 0000000..1a9e4db
--- /dev/null
+++ b/fuzz/client_corpus/650d6182ce2b79795477071a5edf71e5e4a2d9af
Binary files differ
diff --git a/fuzz/client_corpus/66ea20db9af412114e60b20143b063643ac0209f b/fuzz/client_corpus/66ea20db9af412114e60b20143b063643ac0209f
new file mode 100644
index 0000000..a041547
--- /dev/null
+++ b/fuzz/client_corpus/66ea20db9af412114e60b20143b063643ac0209f
Binary files differ
diff --git a/fuzz/client_corpus/674253e9d5eacc5c0133fe872f32c2e8a2ea4cf7 b/fuzz/client_corpus/674253e9d5eacc5c0133fe872f32c2e8a2ea4cf7
new file mode 100644
index 0000000..3c47eb7
--- /dev/null
+++ b/fuzz/client_corpus/674253e9d5eacc5c0133fe872f32c2e8a2ea4cf7
Binary files differ
diff --git a/fuzz/client_corpus/695cb65aafb76161e3a319c68d4430ee80985b81 b/fuzz/client_corpus/695cb65aafb76161e3a319c68d4430ee80985b81
new file mode 100644
index 0000000..2a4348d
--- /dev/null
+++ b/fuzz/client_corpus/695cb65aafb76161e3a319c68d4430ee80985b81
Binary files differ
diff --git a/fuzz/client_corpus/6adf7477d929629afb4d07b4518a0e23b301b232 b/fuzz/client_corpus/6adf7477d929629afb4d07b4518a0e23b301b232
new file mode 100644
index 0000000..f5b84b9
--- /dev/null
+++ b/fuzz/client_corpus/6adf7477d929629afb4d07b4518a0e23b301b232
Binary files differ
diff --git a/fuzz/client_corpus/6c55036b8922e6b076ca36b92afa11601625e5af b/fuzz/client_corpus/6c55036b8922e6b076ca36b92afa11601625e5af
new file mode 100644
index 0000000..7908617
--- /dev/null
+++ b/fuzz/client_corpus/6c55036b8922e6b076ca36b92afa11601625e5af
Binary files differ
diff --git a/fuzz/client_corpus/6c630175c87c742ab0c8723f6a0a53aae43b974e b/fuzz/client_corpus/6c630175c87c742ab0c8723f6a0a53aae43b974e
new file mode 100644
index 0000000..323e1dc
--- /dev/null
+++ b/fuzz/client_corpus/6c630175c87c742ab0c8723f6a0a53aae43b974e
Binary files differ
diff --git a/fuzz/client_corpus/6c651672e43ef4440abd90b3e6e1dd0a32e97437 b/fuzz/client_corpus/6c651672e43ef4440abd90b3e6e1dd0a32e97437
new file mode 100644
index 0000000..6914973
--- /dev/null
+++ b/fuzz/client_corpus/6c651672e43ef4440abd90b3e6e1dd0a32e97437
Binary files differ
diff --git a/fuzz/client_corpus/6cb141671c7744c225aa3f7ce0e9813ae01f2a2b b/fuzz/client_corpus/6cb141671c7744c225aa3f7ce0e9813ae01f2a2b
new file mode 100644
index 0000000..602f404
--- /dev/null
+++ b/fuzz/client_corpus/6cb141671c7744c225aa3f7ce0e9813ae01f2a2b
Binary files differ
diff --git a/fuzz/client_corpus/6d6212a5e12e69903e45291526bc0ecd3ea0e6f5 b/fuzz/client_corpus/6d6212a5e12e69903e45291526bc0ecd3ea0e6f5
new file mode 100644
index 0000000..1ad4d80
--- /dev/null
+++ b/fuzz/client_corpus/6d6212a5e12e69903e45291526bc0ecd3ea0e6f5
Binary files differ
diff --git a/fuzz/client_corpus/6fca24aa17c9d63a109d89bf05f7cf847fd3de7e b/fuzz/client_corpus/6fca24aa17c9d63a109d89bf05f7cf847fd3de7e
new file mode 100644
index 0000000..70cf4ac
--- /dev/null
+++ b/fuzz/client_corpus/6fca24aa17c9d63a109d89bf05f7cf847fd3de7e
Binary files differ
diff --git a/fuzz/client_corpus/700a646ead0f82d584b5bc69901ea3a4d6dbee52 b/fuzz/client_corpus/700a646ead0f82d584b5bc69901ea3a4d6dbee52
new file mode 100644
index 0000000..c65edc0
--- /dev/null
+++ b/fuzz/client_corpus/700a646ead0f82d584b5bc69901ea3a4d6dbee52
Binary files differ
diff --git a/fuzz/client_corpus/7072ff5269664a33f709ca3fc6bb158667c3c421 b/fuzz/client_corpus/7072ff5269664a33f709ca3fc6bb158667c3c421
new file mode 100644
index 0000000..a70def5
--- /dev/null
+++ b/fuzz/client_corpus/7072ff5269664a33f709ca3fc6bb158667c3c421
Binary files differ
diff --git a/fuzz/client_corpus/73f63d7db6fb57a25e5f47a004e6f24eb66e685e b/fuzz/client_corpus/73f63d7db6fb57a25e5f47a004e6f24eb66e685e
new file mode 100644
index 0000000..55f3a15
--- /dev/null
+++ b/fuzz/client_corpus/73f63d7db6fb57a25e5f47a004e6f24eb66e685e
Binary files differ
diff --git a/fuzz/client_corpus/7492e1899d22a15452e163881437a23ccc705d45 b/fuzz/client_corpus/7492e1899d22a15452e163881437a23ccc705d45
new file mode 100644
index 0000000..0dbbd88
--- /dev/null
+++ b/fuzz/client_corpus/7492e1899d22a15452e163881437a23ccc705d45
Binary files differ
diff --git a/fuzz/client_corpus/75d5755e499a739b66987b12149f914e04227fda b/fuzz/client_corpus/75d5755e499a739b66987b12149f914e04227fda
new file mode 100644
index 0000000..becf864
--- /dev/null
+++ b/fuzz/client_corpus/75d5755e499a739b66987b12149f914e04227fda
Binary files differ
diff --git a/fuzz/client_corpus/7753dbbdf3391950f08197d3158ee144b58ae9d4 b/fuzz/client_corpus/7753dbbdf3391950f08197d3158ee144b58ae9d4
new file mode 100644
index 0000000..12d2ded
--- /dev/null
+++ b/fuzz/client_corpus/7753dbbdf3391950f08197d3158ee144b58ae9d4
Binary files differ
diff --git a/fuzz/client_corpus/79ff7a233e149ae13d67905eda9e5af4ed27fbe0 b/fuzz/client_corpus/79ff7a233e149ae13d67905eda9e5af4ed27fbe0
new file mode 100644
index 0000000..9a8a511
--- /dev/null
+++ b/fuzz/client_corpus/79ff7a233e149ae13d67905eda9e5af4ed27fbe0
Binary files differ
diff --git a/fuzz/client_corpus/7d3b5ce72e5374d1771f33b19dbc5ed20f423aeb b/fuzz/client_corpus/7d3b5ce72e5374d1771f33b19dbc5ed20f423aeb
new file mode 100644
index 0000000..ed069ac
--- /dev/null
+++ b/fuzz/client_corpus/7d3b5ce72e5374d1771f33b19dbc5ed20f423aeb
Binary files differ
diff --git a/fuzz/client_corpus/7f080ab49b7b5feb09319aa348413686b20b8394 b/fuzz/client_corpus/7f080ab49b7b5feb09319aa348413686b20b8394
new file mode 100644
index 0000000..e6b01c0
--- /dev/null
+++ b/fuzz/client_corpus/7f080ab49b7b5feb09319aa348413686b20b8394
Binary files differ
diff --git a/fuzz/client_corpus/7fd9affa725bf314f60d28ae06bcc038b7dc3dd0 b/fuzz/client_corpus/7fd9affa725bf314f60d28ae06bcc038b7dc3dd0
new file mode 100644
index 0000000..b865a8b
--- /dev/null
+++ b/fuzz/client_corpus/7fd9affa725bf314f60d28ae06bcc038b7dc3dd0
Binary files differ
diff --git a/fuzz/client_corpus/819b64ad6fe9da24271678ecf337427fe17e95b2 b/fuzz/client_corpus/819b64ad6fe9da24271678ecf337427fe17e95b2
new file mode 100644
index 0000000..868b453
--- /dev/null
+++ b/fuzz/client_corpus/819b64ad6fe9da24271678ecf337427fe17e95b2
Binary files differ
diff --git a/fuzz/client_corpus/822f3b140b0934e8e0263f1dd2c6f1527c06df1f b/fuzz/client_corpus/822f3b140b0934e8e0263f1dd2c6f1527c06df1f
new file mode 100644
index 0000000..2db2a50
--- /dev/null
+++ b/fuzz/client_corpus/822f3b140b0934e8e0263f1dd2c6f1527c06df1f
Binary files differ
diff --git a/fuzz/client_corpus/862c1aa11fe288ba4d472f1b5e2776a4c68517e6 b/fuzz/client_corpus/862c1aa11fe288ba4d472f1b5e2776a4c68517e6
new file mode 100644
index 0000000..9cc03d6
--- /dev/null
+++ b/fuzz/client_corpus/862c1aa11fe288ba4d472f1b5e2776a4c68517e6
Binary files differ
diff --git a/fuzz/client_corpus/88b816c47071b8c82dc0a24b98529c4623317ef7 b/fuzz/client_corpus/88b816c47071b8c82dc0a24b98529c4623317ef7
new file mode 100644
index 0000000..0746708
--- /dev/null
+++ b/fuzz/client_corpus/88b816c47071b8c82dc0a24b98529c4623317ef7
Binary files differ
diff --git a/fuzz/client_corpus/89ce5fb7b86ce8f2c0e62b8fe79b12f9d2def007 b/fuzz/client_corpus/89ce5fb7b86ce8f2c0e62b8fe79b12f9d2def007
new file mode 100644
index 0000000..33b0f56
--- /dev/null
+++ b/fuzz/client_corpus/89ce5fb7b86ce8f2c0e62b8fe79b12f9d2def007
Binary files differ
diff --git a/fuzz/client_corpus/8a01471d4ddb4d5c1c71f89bb0018e9eb0aed463 b/fuzz/client_corpus/8a01471d4ddb4d5c1c71f89bb0018e9eb0aed463
new file mode 100644
index 0000000..71e188b
--- /dev/null
+++ b/fuzz/client_corpus/8a01471d4ddb4d5c1c71f89bb0018e9eb0aed463
Binary files differ
diff --git a/fuzz/client_corpus/8a6f7e1fbb6295fb0a5dacf44d914658beb1e9d1 b/fuzz/client_corpus/8a6f7e1fbb6295fb0a5dacf44d914658beb1e9d1
new file mode 100644
index 0000000..b2ea3fe
--- /dev/null
+++ b/fuzz/client_corpus/8a6f7e1fbb6295fb0a5dacf44d914658beb1e9d1
Binary files differ
diff --git a/fuzz/client_corpus/8a962b1da16fd4b7af2bd08d0a1421bdcc3306fe b/fuzz/client_corpus/8a962b1da16fd4b7af2bd08d0a1421bdcc3306fe
new file mode 100644
index 0000000..ef181e7
--- /dev/null
+++ b/fuzz/client_corpus/8a962b1da16fd4b7af2bd08d0a1421bdcc3306fe
Binary files differ
diff --git a/fuzz/client_corpus/8ae0eed9ec461f1b6cfa172573d0ff0c94d62f58 b/fuzz/client_corpus/8ae0eed9ec461f1b6cfa172573d0ff0c94d62f58
new file mode 100644
index 0000000..258ac77
--- /dev/null
+++ b/fuzz/client_corpus/8ae0eed9ec461f1b6cfa172573d0ff0c94d62f58
Binary files differ
diff --git a/fuzz/client_corpus/8bb94ac9d58ce60fb4baab8403722f1a173497b3 b/fuzz/client_corpus/8bb94ac9d58ce60fb4baab8403722f1a173497b3
new file mode 100644
index 0000000..7e081d9
--- /dev/null
+++ b/fuzz/client_corpus/8bb94ac9d58ce60fb4baab8403722f1a173497b3
Binary files differ
diff --git a/fuzz/client_corpus/8bc268d09be3e8eb8b75e600a65857ad93c50b6f b/fuzz/client_corpus/8bc268d09be3e8eb8b75e600a65857ad93c50b6f
new file mode 100644
index 0000000..455ee60
--- /dev/null
+++ b/fuzz/client_corpus/8bc268d09be3e8eb8b75e600a65857ad93c50b6f
Binary files differ
diff --git a/fuzz/client_corpus/8d3d73f19d7bdfdcf299934f0c865d14fd0a209b b/fuzz/client_corpus/8d3d73f19d7bdfdcf299934f0c865d14fd0a209b
new file mode 100644
index 0000000..44bd8c8
--- /dev/null
+++ b/fuzz/client_corpus/8d3d73f19d7bdfdcf299934f0c865d14fd0a209b
Binary files differ
diff --git a/fuzz/client_corpus/8d5bca4e95a1b5f22533a680142064237957363d b/fuzz/client_corpus/8d5bca4e95a1b5f22533a680142064237957363d
new file mode 100644
index 0000000..abf33ce
--- /dev/null
+++ b/fuzz/client_corpus/8d5bca4e95a1b5f22533a680142064237957363d
Binary files differ
diff --git a/fuzz/client_corpus/8e3d1f50587b38d1b71c64cd1f047c4617ebea63 b/fuzz/client_corpus/8e3d1f50587b38d1b71c64cd1f047c4617ebea63
new file mode 100644
index 0000000..4670c17
--- /dev/null
+++ b/fuzz/client_corpus/8e3d1f50587b38d1b71c64cd1f047c4617ebea63
Binary files differ
diff --git a/fuzz/client_corpus/8f8643720d03bae58facfb7876166a5d5d7b5fbf b/fuzz/client_corpus/8f8643720d03bae58facfb7876166a5d5d7b5fbf
new file mode 100644
index 0000000..df4a425
--- /dev/null
+++ b/fuzz/client_corpus/8f8643720d03bae58facfb7876166a5d5d7b5fbf
Binary files differ
diff --git a/fuzz/client_corpus/9018d7e0774e15a88c894b02d9d9ebd5a713deea b/fuzz/client_corpus/9018d7e0774e15a88c894b02d9d9ebd5a713deea
new file mode 100644
index 0000000..594753a
--- /dev/null
+++ b/fuzz/client_corpus/9018d7e0774e15a88c894b02d9d9ebd5a713deea
Binary files differ
diff --git a/fuzz/client_corpus/90c6b18f6c5042404ad9bd8a44dc7f3d079d3f97 b/fuzz/client_corpus/90c6b18f6c5042404ad9bd8a44dc7f3d079d3f97
new file mode 100644
index 0000000..4db53cb
--- /dev/null
+++ b/fuzz/client_corpus/90c6b18f6c5042404ad9bd8a44dc7f3d079d3f97
Binary files differ
diff --git a/fuzz/client_corpus/919751352435a91c9e331722b0deb8b5a953eb17 b/fuzz/client_corpus/919751352435a91c9e331722b0deb8b5a953eb17
new file mode 100644
index 0000000..a9dab91
--- /dev/null
+++ b/fuzz/client_corpus/919751352435a91c9e331722b0deb8b5a953eb17
Binary files differ
diff --git a/fuzz/client_corpus/91c7d49741905d07a691350e0b5ab9baacfc6273 b/fuzz/client_corpus/91c7d49741905d07a691350e0b5ab9baacfc6273
new file mode 100644
index 0000000..fab6322
--- /dev/null
+++ b/fuzz/client_corpus/91c7d49741905d07a691350e0b5ab9baacfc6273
Binary files differ
diff --git a/fuzz/client_corpus/93a0fefc5de9feda0a6e7130aea669a423920b9f b/fuzz/client_corpus/93a0fefc5de9feda0a6e7130aea669a423920b9f
new file mode 100644
index 0000000..a861f95
--- /dev/null
+++ b/fuzz/client_corpus/93a0fefc5de9feda0a6e7130aea669a423920b9f
Binary files differ
diff --git a/fuzz/client_corpus/9532c89ac942ba20c7fdd32231364b18ec54f430 b/fuzz/client_corpus/9532c89ac942ba20c7fdd32231364b18ec54f430
new file mode 100644
index 0000000..a12a52c
--- /dev/null
+++ b/fuzz/client_corpus/9532c89ac942ba20c7fdd32231364b18ec54f430
Binary files differ
diff --git a/fuzz/client_corpus/96d52303f3d71a4b80cd05cbcfeb0de94cdff14e b/fuzz/client_corpus/96d52303f3d71a4b80cd05cbcfeb0de94cdff14e
new file mode 100644
index 0000000..88cb902
--- /dev/null
+++ b/fuzz/client_corpus/96d52303f3d71a4b80cd05cbcfeb0de94cdff14e
Binary files differ
diff --git a/fuzz/client_corpus/989c8c11e9167d64d6a4d5572da373d35ed1fdff b/fuzz/client_corpus/989c8c11e9167d64d6a4d5572da373d35ed1fdff
new file mode 100644
index 0000000..c16a93d
--- /dev/null
+++ b/fuzz/client_corpus/989c8c11e9167d64d6a4d5572da373d35ed1fdff
Binary files differ
diff --git a/fuzz/client_corpus/99dc5a5424282f707e4253be228175472a21586a b/fuzz/client_corpus/99dc5a5424282f707e4253be228175472a21586a
new file mode 100644
index 0000000..541b2ef
--- /dev/null
+++ b/fuzz/client_corpus/99dc5a5424282f707e4253be228175472a21586a
Binary files differ
diff --git a/fuzz/client_corpus/99e5f2d8823aff6c698ecd0a2e0bf2a23f6f9f7e b/fuzz/client_corpus/99e5f2d8823aff6c698ecd0a2e0bf2a23f6f9f7e
new file mode 100644
index 0000000..3a1f5c3
--- /dev/null
+++ b/fuzz/client_corpus/99e5f2d8823aff6c698ecd0a2e0bf2a23f6f9f7e
Binary files differ
diff --git a/fuzz/client_corpus/9a51f0205f7ce5211db0255cc82b16b5d70bcff8 b/fuzz/client_corpus/9a51f0205f7ce5211db0255cc82b16b5d70bcff8
new file mode 100644
index 0000000..b8336f2
--- /dev/null
+++ b/fuzz/client_corpus/9a51f0205f7ce5211db0255cc82b16b5d70bcff8
Binary files differ
diff --git a/fuzz/client_corpus/9c7600ab81633b7f346a4fa2a6f51ea19eedaf30 b/fuzz/client_corpus/9c7600ab81633b7f346a4fa2a6f51ea19eedaf30
new file mode 100644
index 0000000..9ce4e1b
--- /dev/null
+++ b/fuzz/client_corpus/9c7600ab81633b7f346a4fa2a6f51ea19eedaf30
Binary files differ
diff --git a/fuzz/client_corpus/9cc204eb7db5b083a0fa390a97ae3399cca42dbb b/fuzz/client_corpus/9cc204eb7db5b083a0fa390a97ae3399cca42dbb
new file mode 100644
index 0000000..453791b
--- /dev/null
+++ b/fuzz/client_corpus/9cc204eb7db5b083a0fa390a97ae3399cca42dbb
Binary files differ
diff --git a/fuzz/client_corpus/9d66badf189ceb88b4a45d225c63a54787b9916e b/fuzz/client_corpus/9d66badf189ceb88b4a45d225c63a54787b9916e
new file mode 100644
index 0000000..d7522af
--- /dev/null
+++ b/fuzz/client_corpus/9d66badf189ceb88b4a45d225c63a54787b9916e
Binary files differ
diff --git a/fuzz/client_corpus/9f1e488eb682d3e24920c040e815e9a7c22f1d5c b/fuzz/client_corpus/9f1e488eb682d3e24920c040e815e9a7c22f1d5c
new file mode 100644
index 0000000..7799489
--- /dev/null
+++ b/fuzz/client_corpus/9f1e488eb682d3e24920c040e815e9a7c22f1d5c
Binary files differ
diff --git a/fuzz/client_corpus/9f98a4a0fda63a672bd66ce7e2f16c50c9af1ac4 b/fuzz/client_corpus/9f98a4a0fda63a672bd66ce7e2f16c50c9af1ac4
new file mode 100644
index 0000000..8b933a4
--- /dev/null
+++ b/fuzz/client_corpus/9f98a4a0fda63a672bd66ce7e2f16c50c9af1ac4
Binary files differ
diff --git a/fuzz/client_corpus/a3bfeed2ef700425f8faf0c6b93295149f23ac2a b/fuzz/client_corpus/a3bfeed2ef700425f8faf0c6b93295149f23ac2a
new file mode 100644
index 0000000..2aba93e
--- /dev/null
+++ b/fuzz/client_corpus/a3bfeed2ef700425f8faf0c6b93295149f23ac2a
Binary files differ
diff --git a/fuzz/client_corpus/a554b83ba6c67a8a9df612b8885ec028fb525c11 b/fuzz/client_corpus/a554b83ba6c67a8a9df612b8885ec028fb525c11
new file mode 100644
index 0000000..36aa5a4
--- /dev/null
+++ b/fuzz/client_corpus/a554b83ba6c67a8a9df612b8885ec028fb525c11
Binary files differ
diff --git a/fuzz/client_corpus/a5c7daa6ba53a703f416d7f258ceb73a0697fbfb b/fuzz/client_corpus/a5c7daa6ba53a703f416d7f258ceb73a0697fbfb
new file mode 100644
index 0000000..28602bc
--- /dev/null
+++ b/fuzz/client_corpus/a5c7daa6ba53a703f416d7f258ceb73a0697fbfb
Binary files differ
diff --git a/fuzz/client_corpus/a6718d2e96c00ab472bab71e57b6ac3486b15921 b/fuzz/client_corpus/a6718d2e96c00ab472bab71e57b6ac3486b15921
new file mode 100644
index 0000000..50dae54
--- /dev/null
+++ b/fuzz/client_corpus/a6718d2e96c00ab472bab71e57b6ac3486b15921
Binary files differ
diff --git a/fuzz/client_corpus/a7bff22ed83e686e0c57edac5be3cb1a5ed4116f b/fuzz/client_corpus/a7bff22ed83e686e0c57edac5be3cb1a5ed4116f
new file mode 100644
index 0000000..b934c42
--- /dev/null
+++ b/fuzz/client_corpus/a7bff22ed83e686e0c57edac5be3cb1a5ed4116f
Binary files differ
diff --git a/fuzz/client_corpus/a867840096cb79e3ce2a5d9484ce84f9477e3201 b/fuzz/client_corpus/a867840096cb79e3ce2a5d9484ce84f9477e3201
new file mode 100644
index 0000000..8174c0e
--- /dev/null
+++ b/fuzz/client_corpus/a867840096cb79e3ce2a5d9484ce84f9477e3201
Binary files differ
diff --git a/fuzz/client_corpus/a9658c0476840377572405c1932c87ed66cda245 b/fuzz/client_corpus/a9658c0476840377572405c1932c87ed66cda245
new file mode 100644
index 0000000..3e8d772
--- /dev/null
+++ b/fuzz/client_corpus/a9658c0476840377572405c1932c87ed66cda245
Binary files differ
diff --git a/fuzz/client_corpus/a992d16f1ba3c69f27780a4052836292fdbc0510 b/fuzz/client_corpus/a992d16f1ba3c69f27780a4052836292fdbc0510
new file mode 100644
index 0000000..4616fac
--- /dev/null
+++ b/fuzz/client_corpus/a992d16f1ba3c69f27780a4052836292fdbc0510
Binary files differ
diff --git a/fuzz/client_corpus/ac7d3c35fcfcfb6a3d02c4fc08f60981cb121664 b/fuzz/client_corpus/ac7d3c35fcfcfb6a3d02c4fc08f60981cb121664
new file mode 100644
index 0000000..9b3b96e
--- /dev/null
+++ b/fuzz/client_corpus/ac7d3c35fcfcfb6a3d02c4fc08f60981cb121664
Binary files differ
diff --git a/fuzz/client_corpus/ad1c259b96a734170ba88187ac864f61c763ced9 b/fuzz/client_corpus/ad1c259b96a734170ba88187ac864f61c763ced9
new file mode 100644
index 0000000..12d1e15
--- /dev/null
+++ b/fuzz/client_corpus/ad1c259b96a734170ba88187ac864f61c763ced9
Binary files differ
diff --git a/fuzz/client_corpus/adc8f85e6d26d1d01ec10aa01b8733ec7622c7fd b/fuzz/client_corpus/adc8f85e6d26d1d01ec10aa01b8733ec7622c7fd
new file mode 100644
index 0000000..8860f36
--- /dev/null
+++ b/fuzz/client_corpus/adc8f85e6d26d1d01ec10aa01b8733ec7622c7fd
Binary files differ
diff --git a/fuzz/client_corpus/add4ed5e0dafec5bfbe7060139c9ae444a5fd422 b/fuzz/client_corpus/add4ed5e0dafec5bfbe7060139c9ae444a5fd422
new file mode 100644
index 0000000..80720f7
--- /dev/null
+++ b/fuzz/client_corpus/add4ed5e0dafec5bfbe7060139c9ae444a5fd422
Binary files differ
diff --git a/fuzz/client_corpus/b4742350fd9936eeec364b2cf2d7a9a9432b4bb4 b/fuzz/client_corpus/b4742350fd9936eeec364b2cf2d7a9a9432b4bb4
new file mode 100644
index 0000000..dc3848c
--- /dev/null
+++ b/fuzz/client_corpus/b4742350fd9936eeec364b2cf2d7a9a9432b4bb4
Binary files differ
diff --git a/fuzz/client_corpus/b4d11620cbd84d8f68d387969c7e1b6db5b437f9 b/fuzz/client_corpus/b4d11620cbd84d8f68d387969c7e1b6db5b437f9
new file mode 100644
index 0000000..165be2f
--- /dev/null
+++ b/fuzz/client_corpus/b4d11620cbd84d8f68d387969c7e1b6db5b437f9
@@ -0,0 +1 @@
+6
\ No newline at end of file
diff --git a/fuzz/client_corpus/b50f8d1d0d99c5d7c8b8b185aef00d3fb082c567 b/fuzz/client_corpus/b50f8d1d0d99c5d7c8b8b185aef00d3fb082c567
new file mode 100644
index 0000000..0fc9c7a
--- /dev/null
+++ b/fuzz/client_corpus/b50f8d1d0d99c5d7c8b8b185aef00d3fb082c567
Binary files differ
diff --git a/fuzz/client_corpus/b5709d7b4b2591636f8d80695dbf7b6a03ce488a b/fuzz/client_corpus/b5709d7b4b2591636f8d80695dbf7b6a03ce488a
new file mode 100644
index 0000000..4aab285
--- /dev/null
+++ b/fuzz/client_corpus/b5709d7b4b2591636f8d80695dbf7b6a03ce488a
Binary files differ
diff --git a/fuzz/client_corpus/b6f0bc18a3ba91cfd6d1bfab7d93b114a58a29af b/fuzz/client_corpus/b6f0bc18a3ba91cfd6d1bfab7d93b114a58a29af
new file mode 100644
index 0000000..30087c7
--- /dev/null
+++ b/fuzz/client_corpus/b6f0bc18a3ba91cfd6d1bfab7d93b114a58a29af
Binary files differ
diff --git a/fuzz/client_corpus/b7653eb906619065dee11e795efe3ce8ad464072 b/fuzz/client_corpus/b7653eb906619065dee11e795efe3ce8ad464072
new file mode 100644
index 0000000..317d334
--- /dev/null
+++ b/fuzz/client_corpus/b7653eb906619065dee11e795efe3ce8ad464072
Binary files differ
diff --git a/fuzz/client_corpus/b8ab490b280bfa2e0514a86776e7c2d069e26fc1 b/fuzz/client_corpus/b8ab490b280bfa2e0514a86776e7c2d069e26fc1
new file mode 100644
index 0000000..427709a
--- /dev/null
+++ b/fuzz/client_corpus/b8ab490b280bfa2e0514a86776e7c2d069e26fc1
Binary files differ
diff --git a/fuzz/client_corpus/ba2b35cd92fd6d0ee105dfe86441c4999409b417 b/fuzz/client_corpus/ba2b35cd92fd6d0ee105dfe86441c4999409b417
new file mode 100644
index 0000000..e75b7c2
--- /dev/null
+++ b/fuzz/client_corpus/ba2b35cd92fd6d0ee105dfe86441c4999409b417
Binary files differ
diff --git a/fuzz/client_corpus/bd011a83422f5d64081ea5c6c9caf1224292ad42 b/fuzz/client_corpus/bd011a83422f5d64081ea5c6c9caf1224292ad42
new file mode 100644
index 0000000..c90a8e6
--- /dev/null
+++ b/fuzz/client_corpus/bd011a83422f5d64081ea5c6c9caf1224292ad42
Binary files differ
diff --git a/fuzz/client_corpus/bd5f333b42d9e02433074109af2ed85120648125 b/fuzz/client_corpus/bd5f333b42d9e02433074109af2ed85120648125
new file mode 100644
index 0000000..6486439
--- /dev/null
+++ b/fuzz/client_corpus/bd5f333b42d9e02433074109af2ed85120648125
Binary files differ
diff --git a/fuzz/client_corpus/bf9de6b11863f9b35c33ccac6029000515a06e40 b/fuzz/client_corpus/bf9de6b11863f9b35c33ccac6029000515a06e40
new file mode 100644
index 0000000..89c454b
--- /dev/null
+++ b/fuzz/client_corpus/bf9de6b11863f9b35c33ccac6029000515a06e40
Binary files differ
diff --git a/fuzz/client_corpus/c03fbdfcb8e959099df158b38e16e6e98fa0a8f1 b/fuzz/client_corpus/c03fbdfcb8e959099df158b38e16e6e98fa0a8f1
new file mode 100644
index 0000000..3a46250
--- /dev/null
+++ b/fuzz/client_corpus/c03fbdfcb8e959099df158b38e16e6e98fa0a8f1
Binary files differ
diff --git a/fuzz/client_corpus/c2acfea4afeebc8548ca57e7b406b733fdc7efd0 b/fuzz/client_corpus/c2acfea4afeebc8548ca57e7b406b733fdc7efd0
new file mode 100644
index 0000000..c454847
--- /dev/null
+++ b/fuzz/client_corpus/c2acfea4afeebc8548ca57e7b406b733fdc7efd0
Binary files differ
diff --git a/fuzz/client_corpus/c43bc9792aae5572f7718bd39efb25418b6a29e3 b/fuzz/client_corpus/c43bc9792aae5572f7718bd39efb25418b6a29e3
new file mode 100644
index 0000000..55293b7
--- /dev/null
+++ b/fuzz/client_corpus/c43bc9792aae5572f7718bd39efb25418b6a29e3
Binary files differ
diff --git a/fuzz/client_corpus/c588d48045128b1d22de91bb640411cfaa4bc9ad b/fuzz/client_corpus/c588d48045128b1d22de91bb640411cfaa4bc9ad
new file mode 100644
index 0000000..5e9c47b
--- /dev/null
+++ b/fuzz/client_corpus/c588d48045128b1d22de91bb640411cfaa4bc9ad
Binary files differ
diff --git a/fuzz/client_corpus/c64059ad0a8b3d4b6e953c4d5e35e7c088f6b072 b/fuzz/client_corpus/c64059ad0a8b3d4b6e953c4d5e35e7c088f6b072
new file mode 100644
index 0000000..eae15d9
--- /dev/null
+++ b/fuzz/client_corpus/c64059ad0a8b3d4b6e953c4d5e35e7c088f6b072
Binary files differ
diff --git a/fuzz/client_corpus/c78af7af9a7f67ab59e314cfe67ca7825d697705 b/fuzz/client_corpus/c78af7af9a7f67ab59e314cfe67ca7825d697705
new file mode 100644
index 0000000..467e489
--- /dev/null
+++ b/fuzz/client_corpus/c78af7af9a7f67ab59e314cfe67ca7825d697705
Binary files differ
diff --git a/fuzz/client_corpus/c84a90953124137637e9ab5b77a44e174556b9ea b/fuzz/client_corpus/c84a90953124137637e9ab5b77a44e174556b9ea
new file mode 100644
index 0000000..3e8ed96
--- /dev/null
+++ b/fuzz/client_corpus/c84a90953124137637e9ab5b77a44e174556b9ea
Binary files differ
diff --git a/fuzz/client_corpus/c915f6eb5bf85d6f906722e77e4ec28493ed54d2 b/fuzz/client_corpus/c915f6eb5bf85d6f906722e77e4ec28493ed54d2
new file mode 100644
index 0000000..15509e7
--- /dev/null
+++ b/fuzz/client_corpus/c915f6eb5bf85d6f906722e77e4ec28493ed54d2
Binary files differ
diff --git a/fuzz/client_corpus/c9d3a1db96c2c8567c4a0ad352b67bc79b864d1e b/fuzz/client_corpus/c9d3a1db96c2c8567c4a0ad352b67bc79b864d1e
new file mode 100644
index 0000000..a4c609a
--- /dev/null
+++ b/fuzz/client_corpus/c9d3a1db96c2c8567c4a0ad352b67bc79b864d1e
Binary files differ
diff --git a/fuzz/client_corpus/c9de70d1d9ec6220bd9139da63e87fa0ba2bf02b b/fuzz/client_corpus/c9de70d1d9ec6220bd9139da63e87fa0ba2bf02b
new file mode 100644
index 0000000..d7d154e
--- /dev/null
+++ b/fuzz/client_corpus/c9de70d1d9ec6220bd9139da63e87fa0ba2bf02b
Binary files differ
diff --git a/fuzz/client_corpus/c9ff9d69ff63ca545ec8ac2585c3c5202c2e552e b/fuzz/client_corpus/c9ff9d69ff63ca545ec8ac2585c3c5202c2e552e
new file mode 100644
index 0000000..c1257da
--- /dev/null
+++ b/fuzz/client_corpus/c9ff9d69ff63ca545ec8ac2585c3c5202c2e552e
Binary files differ
diff --git a/fuzz/client_corpus/ca70b7405469638eba2d87352235cb91c327b3b7 b/fuzz/client_corpus/ca70b7405469638eba2d87352235cb91c327b3b7
new file mode 100644
index 0000000..f7cde81
--- /dev/null
+++ b/fuzz/client_corpus/ca70b7405469638eba2d87352235cb91c327b3b7
Binary files differ
diff --git a/fuzz/client_corpus/caff3955e5a402b64c513cf89f6c6178d32f91ca b/fuzz/client_corpus/caff3955e5a402b64c513cf89f6c6178d32f91ca
new file mode 100644
index 0000000..c586133
--- /dev/null
+++ b/fuzz/client_corpus/caff3955e5a402b64c513cf89f6c6178d32f91ca
Binary files differ
diff --git a/fuzz/client_corpus/cbab437e9479b87d3cc898a5db555d5cca59db3b b/fuzz/client_corpus/cbab437e9479b87d3cc898a5db555d5cca59db3b
new file mode 100644
index 0000000..75eabca
--- /dev/null
+++ b/fuzz/client_corpus/cbab437e9479b87d3cc898a5db555d5cca59db3b
Binary files differ
diff --git a/fuzz/client_corpus/cbc503f6dd40fdc5f03e8a90044cf183a595600a b/fuzz/client_corpus/cbc503f6dd40fdc5f03e8a90044cf183a595600a
new file mode 100644
index 0000000..4ce7560
--- /dev/null
+++ b/fuzz/client_corpus/cbc503f6dd40fdc5f03e8a90044cf183a595600a
Binary files differ
diff --git a/fuzz/client_corpus/cc3c09cc41156962a002569cc7467bf10ef77721 b/fuzz/client_corpus/cc3c09cc41156962a002569cc7467bf10ef77721
new file mode 100644
index 0000000..cf02099
--- /dev/null
+++ b/fuzz/client_corpus/cc3c09cc41156962a002569cc7467bf10ef77721
Binary files differ
diff --git a/fuzz/client_corpus/cd61d1f2d30352c129043a805a48fc77e91bdd6f b/fuzz/client_corpus/cd61d1f2d30352c129043a805a48fc77e91bdd6f
new file mode 100644
index 0000000..d7530e8
--- /dev/null
+++ b/fuzz/client_corpus/cd61d1f2d30352c129043a805a48fc77e91bdd6f
Binary files differ
diff --git a/fuzz/client_corpus/ce87aa069c66ce66a19031e66737ad2c8ba230a3 b/fuzz/client_corpus/ce87aa069c66ce66a19031e66737ad2c8ba230a3
new file mode 100644
index 0000000..9c045d2
--- /dev/null
+++ b/fuzz/client_corpus/ce87aa069c66ce66a19031e66737ad2c8ba230a3
Binary files differ
diff --git a/fuzz/client_corpus/cea198948bc4ad0e2eeaf2ccf116d53c0c577881 b/fuzz/client_corpus/cea198948bc4ad0e2eeaf2ccf116d53c0c577881
new file mode 100644
index 0000000..270483c
--- /dev/null
+++ b/fuzz/client_corpus/cea198948bc4ad0e2eeaf2ccf116d53c0c577881
Binary files differ
diff --git a/fuzz/client_corpus/cea7fd28eef6a02a13ea90d784c1207dded60b92 b/fuzz/client_corpus/cea7fd28eef6a02a13ea90d784c1207dded60b92
new file mode 100644
index 0000000..6586316
--- /dev/null
+++ b/fuzz/client_corpus/cea7fd28eef6a02a13ea90d784c1207dded60b92
Binary files differ
diff --git a/fuzz/client_corpus/cf6f67c363efa2d77cdc6b81f6e74c9fc3e17143 b/fuzz/client_corpus/cf6f67c363efa2d77cdc6b81f6e74c9fc3e17143
new file mode 100644
index 0000000..401fab1
--- /dev/null
+++ b/fuzz/client_corpus/cf6f67c363efa2d77cdc6b81f6e74c9fc3e17143
Binary files differ
diff --git a/fuzz/client_corpus/d153ecdd0aecb6560ceb29ac482ac648f3c91b3c b/fuzz/client_corpus/d153ecdd0aecb6560ceb29ac482ac648f3c91b3c
new file mode 100644
index 0000000..33a10b3
--- /dev/null
+++ b/fuzz/client_corpus/d153ecdd0aecb6560ceb29ac482ac648f3c91b3c
Binary files differ
diff --git a/fuzz/client_corpus/d5149852f264e96d3a7bfb87aeacf88e21d7cd81 b/fuzz/client_corpus/d5149852f264e96d3a7bfb87aeacf88e21d7cd81
new file mode 100644
index 0000000..179b470
--- /dev/null
+++ b/fuzz/client_corpus/d5149852f264e96d3a7bfb87aeacf88e21d7cd81
Binary files differ
diff --git a/fuzz/client_corpus/d61f9163c366f3cb907570af9263cfe139523275 b/fuzz/client_corpus/d61f9163c366f3cb907570af9263cfe139523275
new file mode 100644
index 0000000..4c166a0
--- /dev/null
+++ b/fuzz/client_corpus/d61f9163c366f3cb907570af9263cfe139523275
Binary files differ
diff --git a/fuzz/client_corpus/d6d2b5c6f73c3d83547b1cf3a4ef71aaaa19eb56 b/fuzz/client_corpus/d6d2b5c6f73c3d83547b1cf3a4ef71aaaa19eb56
new file mode 100644
index 0000000..8fe8818
--- /dev/null
+++ b/fuzz/client_corpus/d6d2b5c6f73c3d83547b1cf3a4ef71aaaa19eb56
Binary files differ
diff --git a/fuzz/client_corpus/d6d7771c49302badd8825680a2a1f95bc265707e b/fuzz/client_corpus/d6d7771c49302badd8825680a2a1f95bc265707e
new file mode 100644
index 0000000..88430ab
--- /dev/null
+++ b/fuzz/client_corpus/d6d7771c49302badd8825680a2a1f95bc265707e
Binary files differ
diff --git a/fuzz/client_corpus/d7975db1a9687110ecbe1a90c604313557dcc3b3 b/fuzz/client_corpus/d7975db1a9687110ecbe1a90c604313557dcc3b3
new file mode 100644
index 0000000..11b2e19
--- /dev/null
+++ b/fuzz/client_corpus/d7975db1a9687110ecbe1a90c604313557dcc3b3
Binary files differ
diff --git a/fuzz/client_corpus/d7a895d52691c31e12ea463089d855cc6466fd61 b/fuzz/client_corpus/d7a895d52691c31e12ea463089d855cc6466fd61
new file mode 100644
index 0000000..7241df1
--- /dev/null
+++ b/fuzz/client_corpus/d7a895d52691c31e12ea463089d855cc6466fd61
Binary files differ
diff --git a/fuzz/client_corpus/dc7efdf6cb7e95e7c257c3f850e58e504949e9a8 b/fuzz/client_corpus/dc7efdf6cb7e95e7c257c3f850e58e504949e9a8
new file mode 100644
index 0000000..f61aa7e
--- /dev/null
+++ b/fuzz/client_corpus/dc7efdf6cb7e95e7c257c3f850e58e504949e9a8
Binary files differ
diff --git a/fuzz/client_corpus/df19fb0f0752cebfa3e221eca2396ce74e568c71 b/fuzz/client_corpus/df19fb0f0752cebfa3e221eca2396ce74e568c71
new file mode 100644
index 0000000..c7cebd4
--- /dev/null
+++ b/fuzz/client_corpus/df19fb0f0752cebfa3e221eca2396ce74e568c71
Binary files differ
diff --git a/fuzz/client_corpus/df314bab00b12c1a31e29132d5eb9771ba14edc8 b/fuzz/client_corpus/df314bab00b12c1a31e29132d5eb9771ba14edc8
new file mode 100644
index 0000000..0063b92
--- /dev/null
+++ b/fuzz/client_corpus/df314bab00b12c1a31e29132d5eb9771ba14edc8
Binary files differ
diff --git a/fuzz/client_corpus/df3af56fc7423b564ed2c18258e934796f574b2e b/fuzz/client_corpus/df3af56fc7423b564ed2c18258e934796f574b2e
new file mode 100644
index 0000000..71782e2
--- /dev/null
+++ b/fuzz/client_corpus/df3af56fc7423b564ed2c18258e934796f574b2e
Binary files differ
diff --git a/fuzz/client_corpus/df811b530178666cc79c5ca440c9f2aca9fae5be b/fuzz/client_corpus/df811b530178666cc79c5ca440c9f2aca9fae5be
new file mode 100644
index 0000000..3be3416
--- /dev/null
+++ b/fuzz/client_corpus/df811b530178666cc79c5ca440c9f2aca9fae5be
Binary files differ
diff --git a/fuzz/client_corpus/dfe4cc06c05e43dbedb195bd5b3e5d2cc889ab1e b/fuzz/client_corpus/dfe4cc06c05e43dbedb195bd5b3e5d2cc889ab1e
new file mode 100644
index 0000000..e3b6a5f
--- /dev/null
+++ b/fuzz/client_corpus/dfe4cc06c05e43dbedb195bd5b3e5d2cc889ab1e
Binary files differ
diff --git a/fuzz/client_corpus/e108931e2f35aa964740a5d2d769b9ed09e1d3ba b/fuzz/client_corpus/e108931e2f35aa964740a5d2d769b9ed09e1d3ba
new file mode 100644
index 0000000..30ff14b
--- /dev/null
+++ b/fuzz/client_corpus/e108931e2f35aa964740a5d2d769b9ed09e1d3ba
Binary files differ
diff --git a/fuzz/client_corpus/e1fc2e3105fc3a2a7be7d48d8edce0632572a88b b/fuzz/client_corpus/e1fc2e3105fc3a2a7be7d48d8edce0632572a88b
new file mode 100644
index 0000000..c036498
--- /dev/null
+++ b/fuzz/client_corpus/e1fc2e3105fc3a2a7be7d48d8edce0632572a88b
Binary files differ
diff --git a/fuzz/client_corpus/e250493d1912990f1c388651fa7436bd61b43cf0 b/fuzz/client_corpus/e250493d1912990f1c388651fa7436bd61b43cf0
new file mode 100644
index 0000000..11923d6
--- /dev/null
+++ b/fuzz/client_corpus/e250493d1912990f1c388651fa7436bd61b43cf0
Binary files differ
diff --git a/fuzz/client_corpus/e31c99618df1f322012029dcc2e0f1d4fd4c3977 b/fuzz/client_corpus/e31c99618df1f322012029dcc2e0f1d4fd4c3977
new file mode 100644
index 0000000..64ea1ba
--- /dev/null
+++ b/fuzz/client_corpus/e31c99618df1f322012029dcc2e0f1d4fd4c3977
Binary files differ
diff --git a/fuzz/client_corpus/e3f7aeef652e35f920ed3fb6081884f12c9f9bcd b/fuzz/client_corpus/e3f7aeef652e35f920ed3fb6081884f12c9f9bcd
new file mode 100644
index 0000000..a4b132c
--- /dev/null
+++ b/fuzz/client_corpus/e3f7aeef652e35f920ed3fb6081884f12c9f9bcd
Binary files differ
diff --git a/fuzz/client_corpus/e41056775fb1db9c520347187e5f33b529db14cb b/fuzz/client_corpus/e41056775fb1db9c520347187e5f33b529db14cb
new file mode 100644
index 0000000..2b48328
--- /dev/null
+++ b/fuzz/client_corpus/e41056775fb1db9c520347187e5f33b529db14cb
Binary files differ
diff --git a/fuzz/client_corpus/e422ebbe19856f99bf12daa91dfa9374110cc1ae b/fuzz/client_corpus/e422ebbe19856f99bf12daa91dfa9374110cc1ae
new file mode 100644
index 0000000..e59dbe4
--- /dev/null
+++ b/fuzz/client_corpus/e422ebbe19856f99bf12daa91dfa9374110cc1ae
Binary files differ
diff --git a/fuzz/client_corpus/e44a2a205da5934fe88f471db4bff606b7b32910 b/fuzz/client_corpus/e44a2a205da5934fe88f471db4bff606b7b32910
new file mode 100644
index 0000000..9ee349d
--- /dev/null
+++ b/fuzz/client_corpus/e44a2a205da5934fe88f471db4bff606b7b32910
Binary files differ
diff --git a/fuzz/client_corpus/e48eb2509e260ee8d19ebc618b895a457491c583 b/fuzz/client_corpus/e48eb2509e260ee8d19ebc618b895a457491c583
new file mode 100644
index 0000000..c6cf70d
--- /dev/null
+++ b/fuzz/client_corpus/e48eb2509e260ee8d19ebc618b895a457491c583
Binary files differ
diff --git a/fuzz/client_corpus/e53fb23dfe5472f0f6e04906425108118361c485 b/fuzz/client_corpus/e53fb23dfe5472f0f6e04906425108118361c485
new file mode 100644
index 0000000..34ae6cd
--- /dev/null
+++ b/fuzz/client_corpus/e53fb23dfe5472f0f6e04906425108118361c485
Binary files differ
diff --git a/fuzz/client_corpus/e856a78f2e32bd8f0d60a4fe693b36c83c0a8356 b/fuzz/client_corpus/e856a78f2e32bd8f0d60a4fe693b36c83c0a8356
new file mode 100644
index 0000000..a742b88
--- /dev/null
+++ b/fuzz/client_corpus/e856a78f2e32bd8f0d60a4fe693b36c83c0a8356
Binary files differ
diff --git a/fuzz/client_corpus/e88137978a989ffac6c11e5565b1678e3a2f2a07 b/fuzz/client_corpus/e88137978a989ffac6c11e5565b1678e3a2f2a07
new file mode 100644
index 0000000..e5a6583
--- /dev/null
+++ b/fuzz/client_corpus/e88137978a989ffac6c11e5565b1678e3a2f2a07
Binary files differ
diff --git a/fuzz/client_corpus/e88ec440a42915f80706afbc0cc7bf1111db4936 b/fuzz/client_corpus/e88ec440a42915f80706afbc0cc7bf1111db4936
new file mode 100644
index 0000000..199b74b
--- /dev/null
+++ b/fuzz/client_corpus/e88ec440a42915f80706afbc0cc7bf1111db4936
Binary files differ
diff --git a/fuzz/client_corpus/ea76c818a4ae9c92d431de82f50c194727e99d9c b/fuzz/client_corpus/ea76c818a4ae9c92d431de82f50c194727e99d9c
new file mode 100644
index 0000000..68d3bec
--- /dev/null
+++ b/fuzz/client_corpus/ea76c818a4ae9c92d431de82f50c194727e99d9c
Binary files differ
diff --git a/fuzz/client_corpus/ecccd730722b03678c74bdf87163035af5d70ecb b/fuzz/client_corpus/ecccd730722b03678c74bdf87163035af5d70ecb
new file mode 100644
index 0000000..c53b460
--- /dev/null
+++ b/fuzz/client_corpus/ecccd730722b03678c74bdf87163035af5d70ecb
Binary files differ
diff --git a/fuzz/client_corpus/ecd22a9f8c1f5017f89d6c2288979c96433b3d0c b/fuzz/client_corpus/ecd22a9f8c1f5017f89d6c2288979c96433b3d0c
new file mode 100644
index 0000000..5d9a426
--- /dev/null
+++ b/fuzz/client_corpus/ecd22a9f8c1f5017f89d6c2288979c96433b3d0c
Binary files differ
diff --git a/fuzz/client_corpus/eda54f7e9fa02af74383bb89950adf6dc3d55401 b/fuzz/client_corpus/eda54f7e9fa02af74383bb89950adf6dc3d55401
new file mode 100644
index 0000000..b28f61e
--- /dev/null
+++ b/fuzz/client_corpus/eda54f7e9fa02af74383bb89950adf6dc3d55401
Binary files differ
diff --git a/fuzz/client_corpus/ef7bb7e9656aa4b23d6f4a78ea0b6a12acfc5edb b/fuzz/client_corpus/ef7bb7e9656aa4b23d6f4a78ea0b6a12acfc5edb
new file mode 100644
index 0000000..d005016
--- /dev/null
+++ b/fuzz/client_corpus/ef7bb7e9656aa4b23d6f4a78ea0b6a12acfc5edb
Binary files differ
diff --git a/fuzz/client_corpus/f044a49ce9380a26ab8ab4b92999c9d045fde573 b/fuzz/client_corpus/f044a49ce9380a26ab8ab4b92999c9d045fde573
new file mode 100644
index 0000000..ba8fd7e
--- /dev/null
+++ b/fuzz/client_corpus/f044a49ce9380a26ab8ab4b92999c9d045fde573
Binary files differ
diff --git a/fuzz/client_corpus/f05f5c9edbc997d109efedb280f5df56d91e3f30 b/fuzz/client_corpus/f05f5c9edbc997d109efedb280f5df56d91e3f30
new file mode 100644
index 0000000..310f6a5
--- /dev/null
+++ b/fuzz/client_corpus/f05f5c9edbc997d109efedb280f5df56d91e3f30
Binary files differ
diff --git a/fuzz/client_corpus/f221430334f4351262a86cfa0bb3dced4fb50b2f b/fuzz/client_corpus/f221430334f4351262a86cfa0bb3dced4fb50b2f
new file mode 100644
index 0000000..81da21c
--- /dev/null
+++ b/fuzz/client_corpus/f221430334f4351262a86cfa0bb3dced4fb50b2f
Binary files differ
diff --git a/fuzz/client_corpus/f2443da1130f34d948c2897195681f324e1eb14d b/fuzz/client_corpus/f2443da1130f34d948c2897195681f324e1eb14d
new file mode 100644
index 0000000..f5e989f
--- /dev/null
+++ b/fuzz/client_corpus/f2443da1130f34d948c2897195681f324e1eb14d
Binary files differ
diff --git a/fuzz/client_corpus/f2982b479f4d0426f25b71b7e4ef7199542fba6c b/fuzz/client_corpus/f2982b479f4d0426f25b71b7e4ef7199542fba6c
new file mode 100644
index 0000000..0be81eb
--- /dev/null
+++ b/fuzz/client_corpus/f2982b479f4d0426f25b71b7e4ef7199542fba6c
Binary files differ
diff --git a/fuzz/client_corpus/f5df7fc246fc8d4b89c1cd46c9ef1140ec57ffae b/fuzz/client_corpus/f5df7fc246fc8d4b89c1cd46c9ef1140ec57ffae
new file mode 100644
index 0000000..5596357
--- /dev/null
+++ b/fuzz/client_corpus/f5df7fc246fc8d4b89c1cd46c9ef1140ec57ffae
Binary files differ
diff --git a/fuzz/client_corpus/f7048f702c3ca6c9586dbb81db5bf4858dcda2f6 b/fuzz/client_corpus/f7048f702c3ca6c9586dbb81db5bf4858dcda2f6
new file mode 100644
index 0000000..e8c8a77
--- /dev/null
+++ b/fuzz/client_corpus/f7048f702c3ca6c9586dbb81db5bf4858dcda2f6
Binary files differ
diff --git a/fuzz/client_corpus/f81cb544d394ef24caab41b1d9fc7108a95ceb1a b/fuzz/client_corpus/f81cb544d394ef24caab41b1d9fc7108a95ceb1a
new file mode 100644
index 0000000..098fb59
--- /dev/null
+++ b/fuzz/client_corpus/f81cb544d394ef24caab41b1d9fc7108a95ceb1a
Binary files differ
diff --git a/fuzz/client_corpus/f8eb6c08a85e0474abf60cd5e222093cfbdd95f8 b/fuzz/client_corpus/f8eb6c08a85e0474abf60cd5e222093cfbdd95f8
new file mode 100644
index 0000000..f793cf4
--- /dev/null
+++ b/fuzz/client_corpus/f8eb6c08a85e0474abf60cd5e222093cfbdd95f8
Binary files differ
diff --git a/fuzz/client_corpus/f978108e734598b126868ee1dfba52a2f03f2af7 b/fuzz/client_corpus/f978108e734598b126868ee1dfba52a2f03f2af7
new file mode 100644
index 0000000..25c2b84
--- /dev/null
+++ b/fuzz/client_corpus/f978108e734598b126868ee1dfba52a2f03f2af7
Binary files differ
diff --git a/fuzz/client_corpus/f99f314fc629fdbb8ef0abbfa2b1315f081c66aa b/fuzz/client_corpus/f99f314fc629fdbb8ef0abbfa2b1315f081c66aa
new file mode 100644
index 0000000..bc94736
--- /dev/null
+++ b/fuzz/client_corpus/f99f314fc629fdbb8ef0abbfa2b1315f081c66aa
Binary files differ
diff --git a/fuzz/client_corpus/ff7ba21b79ba75d821d722933b5d03a1437c38f3 b/fuzz/client_corpus/ff7ba21b79ba75d821d722933b5d03a1437c38f3
new file mode 100644
index 0000000..5d6a206
--- /dev/null
+++ b/fuzz/client_corpus/ff7ba21b79ba75d821d722933b5d03a1437c38f3
Binary files differ
diff --git a/fuzz/minimise_corpuses.sh b/fuzz/minimise_corpuses.sh
new file mode 100644
index 0000000..6a0b7aa
--- /dev/null
+++ b/fuzz/minimise_corpuses.sh
@@ -0,0 +1,23 @@
+for testSource in $(ls -1 *.cc); do
+  test=$(echo $testSource | sed -e 's/\.cc$//')
+  if [ ! -x ../build/fuzz/$test ] ; then
+    echo "Failed to find binary for $test"
+    exit 1
+  fi
+  if [ ! -d ${test}_corpus ]; then
+    echo "Failed to find corpus directory for $test"
+    exit 1
+  fi
+  if [ -d ${test}_corpus_old ]; then
+    echo "Old corpus directory for $test already exists"
+    exit 1
+  fi
+done
+
+for testSource in $(ls -1 *.cc); do
+  test=$(echo $testSource | sed -e 's/\.cc$//')
+  mv ${test}_corpus ${test}_corpus_old && \
+    mkdir ${test}_corpus
+    ../build/fuzz/$test -max_len=50000 -runs=0 -save_minimized_corpus=1 ${test}_corpus ${test}_corpus_old &&
+    rm -Rf ${test}_corpus_old
+done
diff --git a/fuzz/privkey.cc b/fuzz/privkey.cc
new file mode 100644
index 0000000..094d438
--- /dev/null
+++ b/fuzz/privkey.cc
@@ -0,0 +1,7 @@
+#include <openssl/evp.h>
+
+extern "C" int LLVMFuzzerTestOneInput(uint8_t *buf, size_t len) {
+  const uint8_t *bufp = buf;
+  EVP_PKEY_free(d2i_AutoPrivateKey(NULL, &bufp, len));
+  return 0;
+}
diff --git a/fuzz/privkey_corpus/0011b315985d69eb7e3e2eb946d7b17b2ba124d8 b/fuzz/privkey_corpus/0011b315985d69eb7e3e2eb946d7b17b2ba124d8
new file mode 100644
index 0000000..3e4af81
--- /dev/null
+++ b/fuzz/privkey_corpus/0011b315985d69eb7e3e2eb946d7b17b2ba124d8
Binary files differ
diff --git a/fuzz/privkey_corpus/040e09a6e89086dfd9260699f1dd27f1ac8fc608 b/fuzz/privkey_corpus/040e09a6e89086dfd9260699f1dd27f1ac8fc608
new file mode 100644
index 0000000..83e378e
--- /dev/null
+++ b/fuzz/privkey_corpus/040e09a6e89086dfd9260699f1dd27f1ac8fc608
Binary files differ
diff --git a/fuzz/privkey_corpus/04d89eb4c7cb4e6dc1e26b1104ee2f78c77e573f b/fuzz/privkey_corpus/04d89eb4c7cb4e6dc1e26b1104ee2f78c77e573f
new file mode 100644
index 0000000..deb48b5
--- /dev/null
+++ b/fuzz/privkey_corpus/04d89eb4c7cb4e6dc1e26b1104ee2f78c77e573f
Binary files differ
diff --git a/fuzz/privkey_corpus/0553b1378ca822d924b1ea95c6654e3508faa8bf b/fuzz/privkey_corpus/0553b1378ca822d924b1ea95c6654e3508faa8bf
new file mode 100644
index 0000000..28130ae
--- /dev/null
+++ b/fuzz/privkey_corpus/0553b1378ca822d924b1ea95c6654e3508faa8bf
Binary files differ
diff --git a/fuzz/privkey_corpus/0555561f448567b597875a17041f0cfc6dd30527 b/fuzz/privkey_corpus/0555561f448567b597875a17041f0cfc6dd30527
new file mode 100644
index 0000000..443eaa4
--- /dev/null
+++ b/fuzz/privkey_corpus/0555561f448567b597875a17041f0cfc6dd30527
Binary files differ
diff --git a/fuzz/privkey_corpus/078f4cb1e10cc91428b751c97f543eaba2303b6f b/fuzz/privkey_corpus/078f4cb1e10cc91428b751c97f543eaba2303b6f
new file mode 100644
index 0000000..d8edb6f
--- /dev/null
+++ b/fuzz/privkey_corpus/078f4cb1e10cc91428b751c97f543eaba2303b6f
@@ -0,0 +1 @@
+0€0Ÿ% Àß0À
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/09a98dfe76a481a565719e05e80fd48d780144bf b/fuzz/privkey_corpus/09a98dfe76a481a565719e05e80fd48d780144bf
new file mode 100644
index 0000000..65b9af9
--- /dev/null
+++ b/fuzz/privkey_corpus/09a98dfe76a481a565719e05e80fd48d780144bf
Binary files differ
diff --git a/fuzz/privkey_corpus/0ce90fa3fde09714028bbed4b835b9889868f05b b/fuzz/privkey_corpus/0ce90fa3fde09714028bbed4b835b9889868f05b
new file mode 100644
index 0000000..9f4d770
--- /dev/null
+++ b/fuzz/privkey_corpus/0ce90fa3fde09714028bbed4b835b9889868f05b
Binary files differ
diff --git a/fuzz/privkey_corpus/0da750195873f5330d846c55736fa9c952daba74 b/fuzz/privkey_corpus/0da750195873f5330d846c55736fa9c952daba74
new file mode 100644
index 0000000..3f77e05
--- /dev/null
+++ b/fuzz/privkey_corpus/0da750195873f5330d846c55736fa9c952daba74
Binary files differ
diff --git a/fuzz/privkey_corpus/0e490fa7001442785c829645692993a1f55c9653 b/fuzz/privkey_corpus/0e490fa7001442785c829645692993a1f55c9653
new file mode 100644
index 0000000..d65345e
--- /dev/null
+++ b/fuzz/privkey_corpus/0e490fa7001442785c829645692993a1f55c9653
Binary files differ
diff --git a/fuzz/privkey_corpus/0eb5037935ba1c2791f3b7e9bc8470c3c60d2aff b/fuzz/privkey_corpus/0eb5037935ba1c2791f3b7e9bc8470c3c60d2aff
new file mode 100644
index 0000000..1c8ce6f
--- /dev/null
+++ b/fuzz/privkey_corpus/0eb5037935ba1c2791f3b7e9bc8470c3c60d2aff
@@ -0,0 +1 @@
+0€
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/103201e00ff234028e8795585d722409ba8b85c3 b/fuzz/privkey_corpus/103201e00ff234028e8795585d722409ba8b85c3
new file mode 100644
index 0000000..caee37f
--- /dev/null
+++ b/fuzz/privkey_corpus/103201e00ff234028e8795585d722409ba8b85c3
Binary files differ
diff --git a/fuzz/privkey_corpus/1074eb39d16c92b2d4ae77245a32f63353739780 b/fuzz/privkey_corpus/1074eb39d16c92b2d4ae77245a32f63353739780
new file mode 100644
index 0000000..87d7d77
--- /dev/null
+++ b/fuzz/privkey_corpus/1074eb39d16c92b2d4ae77245a32f63353739780
Binary files differ
diff --git a/fuzz/privkey_corpus/1898789ee447b3c8fe5731fdf02c603aba33ca4e b/fuzz/privkey_corpus/1898789ee447b3c8fe5731fdf02c603aba33ca4e
new file mode 100644
index 0000000..e5d63b8
--- /dev/null
+++ b/fuzz/privkey_corpus/1898789ee447b3c8fe5731fdf02c603aba33ca4e
Binary files differ
diff --git a/fuzz/privkey_corpus/272ef5b501f038eccbae4084d7cd476f69c9baa8 b/fuzz/privkey_corpus/272ef5b501f038eccbae4084d7cd476f69c9baa8
new file mode 100644
index 0000000..2f2a95e
--- /dev/null
+++ b/fuzz/privkey_corpus/272ef5b501f038eccbae4084d7cd476f69c9baa8
Binary files differ
diff --git a/fuzz/privkey_corpus/27ca11aae0b2385e458770be3a4cc8ca2c7d7eb5 b/fuzz/privkey_corpus/27ca11aae0b2385e458770be3a4cc8ca2c7d7eb5
new file mode 100644
index 0000000..54c0aba
--- /dev/null
+++ b/fuzz/privkey_corpus/27ca11aae0b2385e458770be3a4cc8ca2c7d7eb5
Binary files differ
diff --git a/fuzz/privkey_corpus/288788112f0df06a025c8020b3783aa5de18727b b/fuzz/privkey_corpus/288788112f0df06a025c8020b3783aa5de18727b
new file mode 100644
index 0000000..3f99355
--- /dev/null
+++ b/fuzz/privkey_corpus/288788112f0df06a025c8020b3783aa5de18727b
Binary files differ
diff --git a/fuzz/privkey_corpus/2bd1d090ed0b879a80e200d18199361abdb583c6 b/fuzz/privkey_corpus/2bd1d090ed0b879a80e200d18199361abdb583c6
new file mode 100644
index 0000000..323c98b
--- /dev/null
+++ b/fuzz/privkey_corpus/2bd1d090ed0b879a80e200d18199361abdb583c6
Binary files differ
diff --git a/fuzz/privkey_corpus/2cc2eb036512e3407569cb670d99d53b77708ffd b/fuzz/privkey_corpus/2cc2eb036512e3407569cb670d99d53b77708ffd
new file mode 100644
index 0000000..3b71d74
--- /dev/null
+++ b/fuzz/privkey_corpus/2cc2eb036512e3407569cb670d99d53b77708ffd
@@ -0,0 +1 @@
+0)'0€0*0€0Ã)è;;‚;¾é00'0•)B*Ÿ0!ÀßÀ‰L''0
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/2d4091ae2ed10fe2008a9345042316e0d9e12f78 b/fuzz/privkey_corpus/2d4091ae2ed10fe2008a9345042316e0d9e12f78
new file mode 100644
index 0000000..b5185c9
--- /dev/null
+++ b/fuzz/privkey_corpus/2d4091ae2ed10fe2008a9345042316e0d9e12f78
Binary files differ
diff --git a/fuzz/privkey_corpus/2ddcac6ee1d95669aba11a7960f9b3d2f23801e2 b/fuzz/privkey_corpus/2ddcac6ee1d95669aba11a7960f9b3d2f23801e2
new file mode 100644
index 0000000..f903ac1
--- /dev/null
+++ b/fuzz/privkey_corpus/2ddcac6ee1d95669aba11a7960f9b3d2f23801e2
Binary files differ
diff --git a/fuzz/privkey_corpus/2f224b103dee345266651abd8ca972e8e0d5515a b/fuzz/privkey_corpus/2f224b103dee345266651abd8ca972e8e0d5515a
new file mode 100644
index 0000000..fda07e6
--- /dev/null
+++ b/fuzz/privkey_corpus/2f224b103dee345266651abd8ca972e8e0d5515a
Binary files differ
diff --git a/fuzz/privkey_corpus/32d0205dcae956ac26c7faa7a5696daaf288ac83 b/fuzz/privkey_corpus/32d0205dcae956ac26c7faa7a5696daaf288ac83
new file mode 100644
index 0000000..5deb068
--- /dev/null
+++ b/fuzz/privkey_corpus/32d0205dcae956ac26c7faa7a5696daaf288ac83
Binary files differ
diff --git a/fuzz/privkey_corpus/359d4453699f8fc738128afd76853e637d453f22 b/fuzz/privkey_corpus/359d4453699f8fc738128afd76853e637d453f22
new file mode 100644
index 0000000..a52bdf3
--- /dev/null
+++ b/fuzz/privkey_corpus/359d4453699f8fc738128afd76853e637d453f22
Binary files differ
diff --git a/fuzz/privkey_corpus/378d3cdaaeab3bbeeca778259c1fcf1b916c0936 b/fuzz/privkey_corpus/378d3cdaaeab3bbeeca778259c1fcf1b916c0936
new file mode 100644
index 0000000..2787163
--- /dev/null
+++ b/fuzz/privkey_corpus/378d3cdaaeab3bbeeca778259c1fcf1b916c0936
@@ -0,0 +1 @@
+Ÿ'
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/38fd17896ebaa4c75cd71d1255f3194ddc1f8829 b/fuzz/privkey_corpus/38fd17896ebaa4c75cd71d1255f3194ddc1f8829
new file mode 100644
index 0000000..b5ab458
--- /dev/null
+++ b/fuzz/privkey_corpus/38fd17896ebaa4c75cd71d1255f3194ddc1f8829
Binary files differ
diff --git a/fuzz/privkey_corpus/3fdb71ab5aec32080dbc60867a754e57cabc90de b/fuzz/privkey_corpus/3fdb71ab5aec32080dbc60867a754e57cabc90de
new file mode 100644
index 0000000..7fb4c51
--- /dev/null
+++ b/fuzz/privkey_corpus/3fdb71ab5aec32080dbc60867a754e57cabc90de
Binary files differ
diff --git a/fuzz/privkey_corpus/408eb93771f2db1955f2d3b886aa1288955e9595 b/fuzz/privkey_corpus/408eb93771f2db1955f2d3b886aa1288955e9595
new file mode 100644
index 0000000..3a8018f
--- /dev/null
+++ b/fuzz/privkey_corpus/408eb93771f2db1955f2d3b886aa1288955e9595
Binary files differ
diff --git a/fuzz/privkey_corpus/429f95d3029b0242e7ae1c668f64317196d5a442 b/fuzz/privkey_corpus/429f95d3029b0242e7ae1c668f64317196d5a442
new file mode 100644
index 0000000..ff3633e
--- /dev/null
+++ b/fuzz/privkey_corpus/429f95d3029b0242e7ae1c668f64317196d5a442
Binary files differ
diff --git a/fuzz/privkey_corpus/435a4c85a2ac1876353838fa2a6ed505b0513fb6 b/fuzz/privkey_corpus/435a4c85a2ac1876353838fa2a6ed505b0513fb6
new file mode 100644
index 0000000..189c331
--- /dev/null
+++ b/fuzz/privkey_corpus/435a4c85a2ac1876353838fa2a6ed505b0513fb6
Binary files differ
diff --git a/fuzz/privkey_corpus/476758eb3f59a8dfa8effeeca7f610d795a69701 b/fuzz/privkey_corpus/476758eb3f59a8dfa8effeeca7f610d795a69701
new file mode 100644
index 0000000..aa2b49c
--- /dev/null
+++ b/fuzz/privkey_corpus/476758eb3f59a8dfa8effeeca7f610d795a69701
@@ -0,0 +1 @@
+:‚
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/4b68c5924a60f7c907987c79af7d972644c5c990 b/fuzz/privkey_corpus/4b68c5924a60f7c907987c79af7d972644c5c990
new file mode 100644
index 0000000..b4298d0
--- /dev/null
+++ b/fuzz/privkey_corpus/4b68c5924a60f7c907987c79af7d972644c5c990
Binary files differ
diff --git a/fuzz/privkey_corpus/4c19e7a0b01f37323b6f19b2e5ef3217de6b350a b/fuzz/privkey_corpus/4c19e7a0b01f37323b6f19b2e5ef3217de6b350a
new file mode 100644
index 0000000..f6f011a
--- /dev/null
+++ b/fuzz/privkey_corpus/4c19e7a0b01f37323b6f19b2e5ef3217de6b350a
Binary files differ
diff --git a/fuzz/privkey_corpus/4f653e0b8a3b198d0b2deadec8a6e23635f27032 b/fuzz/privkey_corpus/4f653e0b8a3b198d0b2deadec8a6e23635f27032
new file mode 100644
index 0000000..f65b94b
--- /dev/null
+++ b/fuzz/privkey_corpus/4f653e0b8a3b198d0b2deadec8a6e23635f27032
Binary files differ
diff --git a/fuzz/privkey_corpus/573829cd6df068f7ac72bfe6f17d79f8b5006aa8 b/fuzz/privkey_corpus/573829cd6df068f7ac72bfe6f17d79f8b5006aa8
new file mode 100644
index 0000000..d626db8
--- /dev/null
+++ b/fuzz/privkey_corpus/573829cd6df068f7ac72bfe6f17d79f8b5006aa8
Binary files differ
diff --git a/fuzz/privkey_corpus/59b889ce764f1da0bbfb4e90c1856b48fc9f1565 b/fuzz/privkey_corpus/59b889ce764f1da0bbfb4e90c1856b48fc9f1565
new file mode 100644
index 0000000..034cac7
--- /dev/null
+++ b/fuzz/privkey_corpus/59b889ce764f1da0bbfb4e90c1856b48fc9f1565
Binary files differ
diff --git a/fuzz/privkey_corpus/5c99d308d575a71a5b4ccbd13280bb13ac79894f b/fuzz/privkey_corpus/5c99d308d575a71a5b4ccbd13280bb13ac79894f
new file mode 100644
index 0000000..c6d19bb
--- /dev/null
+++ b/fuzz/privkey_corpus/5c99d308d575a71a5b4ccbd13280bb13ac79894f
Binary files differ
diff --git a/fuzz/privkey_corpus/616d00f4518e24cbf78f5c7898fae159b97de6b5 b/fuzz/privkey_corpus/616d00f4518e24cbf78f5c7898fae159b97de6b5
new file mode 100644
index 0000000..b9e1477
--- /dev/null
+++ b/fuzz/privkey_corpus/616d00f4518e24cbf78f5c7898fae159b97de6b5
@@ -0,0 +1 @@
+0€0Ÿ7 À0ŸŸ€00
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/63d9ecea3f2f5141b1bc4c4ada40381999d2ae78 b/fuzz/privkey_corpus/63d9ecea3f2f5141b1bc4c4ada40381999d2ae78
new file mode 100644
index 0000000..d7a6cd8
--- /dev/null
+++ b/fuzz/privkey_corpus/63d9ecea3f2f5141b1bc4c4ada40381999d2ae78
Binary files differ
diff --git a/fuzz/privkey_corpus/63fcd39ff8f3d87e84282915540cbf08e2df0d7d b/fuzz/privkey_corpus/63fcd39ff8f3d87e84282915540cbf08e2df0d7d
new file mode 100644
index 0000000..a968bad
--- /dev/null
+++ b/fuzz/privkey_corpus/63fcd39ff8f3d87e84282915540cbf08e2df0d7d
Binary files differ
diff --git a/fuzz/privkey_corpus/64213f486e58ce1cc0bea2a6f145e6769dbcb93e b/fuzz/privkey_corpus/64213f486e58ce1cc0bea2a6f145e6769dbcb93e
new file mode 100644
index 0000000..4be4a5c
--- /dev/null
+++ b/fuzz/privkey_corpus/64213f486e58ce1cc0bea2a6f145e6769dbcb93e
Binary files differ
diff --git a/fuzz/privkey_corpus/6531424fdad457866089d58c9279bd5fe8719ca0 b/fuzz/privkey_corpus/6531424fdad457866089d58c9279bd5fe8719ca0
new file mode 100644
index 0000000..5e87dec
--- /dev/null
+++ b/fuzz/privkey_corpus/6531424fdad457866089d58c9279bd5fe8719ca0
Binary files differ
diff --git a/fuzz/privkey_corpus/66725ca0c9d2a7fbb3f6660180b7f9d172dd8c64 b/fuzz/privkey_corpus/66725ca0c9d2a7fbb3f6660180b7f9d172dd8c64
new file mode 100644
index 0000000..a61fe7b
--- /dev/null
+++ b/fuzz/privkey_corpus/66725ca0c9d2a7fbb3f6660180b7f9d172dd8c64
@@ -0,0 +1 @@
+0€0¾l00B)*Ÿ'0€0
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/6778469c6519b69b3741a62e8df40a1091aeffd3 b/fuzz/privkey_corpus/6778469c6519b69b3741a62e8df40a1091aeffd3
new file mode 100644
index 0000000..76e9ae6
--- /dev/null
+++ b/fuzz/privkey_corpus/6778469c6519b69b3741a62e8df40a1091aeffd3
Binary files differ
diff --git a/fuzz/privkey_corpus/695f506c23c31450f3698f15f5d5dcd0a00e2292 b/fuzz/privkey_corpus/695f506c23c31450f3698f15f5d5dcd0a00e2292
new file mode 100644
index 0000000..ac6be3e
--- /dev/null
+++ b/fuzz/privkey_corpus/695f506c23c31450f3698f15f5d5dcd0a00e2292
Binary files differ
diff --git a/fuzz/privkey_corpus/6e846663b4af1ecf73ba93611d1f9b39f63803e5 b/fuzz/privkey_corpus/6e846663b4af1ecf73ba93611d1f9b39f63803e5
new file mode 100644
index 0000000..7cf5822
--- /dev/null
+++ b/fuzz/privkey_corpus/6e846663b4af1ecf73ba93611d1f9b39f63803e5
Binary files differ
diff --git a/fuzz/privkey_corpus/6f12c3d548d85deae6946b279d85e03491787077 b/fuzz/privkey_corpus/6f12c3d548d85deae6946b279d85e03491787077
new file mode 100644
index 0000000..9950b2e
--- /dev/null
+++ b/fuzz/privkey_corpus/6f12c3d548d85deae6946b279d85e03491787077
Binary files differ
diff --git a/fuzz/privkey_corpus/6f2f15721e6c0b664759fa65e307c9a8cd20c464 b/fuzz/privkey_corpus/6f2f15721e6c0b664759fa65e307c9a8cd20c464
new file mode 100644
index 0000000..13fc899
--- /dev/null
+++ b/fuzz/privkey_corpus/6f2f15721e6c0b664759fa65e307c9a8cd20c464
@@ -0,0 +1 @@
+0)0€0)0€0)0€0)0€0„0Ã
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/71b67011b691dbde02d398dc730efc2d5205c837 b/fuzz/privkey_corpus/71b67011b691dbde02d398dc730efc2d5205c837
new file mode 100644
index 0000000..5a74632
--- /dev/null
+++ b/fuzz/privkey_corpus/71b67011b691dbde02d398dc730efc2d5205c837
@@ -0,0 +1 @@
+0)0€0) €0)0€0)0€0)0)
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/74306f8ce43c5b77c55b94ec37204d8be7c7a220 b/fuzz/privkey_corpus/74306f8ce43c5b77c55b94ec37204d8be7c7a220
new file mode 100644
index 0000000..5f3bb69
--- /dev/null
+++ b/fuzz/privkey_corpus/74306f8ce43c5b77c55b94ec37204d8be7c7a220
Binary files differ
diff --git a/fuzz/privkey_corpus/7508d58d4f00dc14a072ef68c79d5db942195bac b/fuzz/privkey_corpus/7508d58d4f00dc14a072ef68c79d5db942195bac
new file mode 100644
index 0000000..c0cf5ff
--- /dev/null
+++ b/fuzz/privkey_corpus/7508d58d4f00dc14a072ef68c79d5db942195bac
Binary files differ
diff --git a/fuzz/privkey_corpus/761cde476b5b3f9af80a15150a8cbeb0992a3446 b/fuzz/privkey_corpus/761cde476b5b3f9af80a15150a8cbeb0992a3446
new file mode 100644
index 0000000..120f115
--- /dev/null
+++ b/fuzz/privkey_corpus/761cde476b5b3f9af80a15150a8cbeb0992a3446
Binary files differ
diff --git a/fuzz/privkey_corpus/7dad0c94279194dcb34901efc1bfe47e19ace379 b/fuzz/privkey_corpus/7dad0c94279194dcb34901efc1bfe47e19ace379
new file mode 100644
index 0000000..1957351
--- /dev/null
+++ b/fuzz/privkey_corpus/7dad0c94279194dcb34901efc1bfe47e19ace379
Binary files differ
diff --git a/fuzz/privkey_corpus/7de3b5459637fb5839105f571da68411f7b9a4e2 b/fuzz/privkey_corpus/7de3b5459637fb5839105f571da68411f7b9a4e2
new file mode 100644
index 0000000..5545d89
--- /dev/null
+++ b/fuzz/privkey_corpus/7de3b5459637fb5839105f571da68411f7b9a4e2
Binary files differ
diff --git a/fuzz/privkey_corpus/7fbcab532053a01781fdcdf1c8c9c5707479fbda b/fuzz/privkey_corpus/7fbcab532053a01781fdcdf1c8c9c5707479fbda
new file mode 100644
index 0000000..fc60afd
--- /dev/null
+++ b/fuzz/privkey_corpus/7fbcab532053a01781fdcdf1c8c9c5707479fbda
@@ -0,0 +1 @@
+0€
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/83ce66bb0c9c3bec32b125c66b724522a293989b b/fuzz/privkey_corpus/83ce66bb0c9c3bec32b125c66b724522a293989b
new file mode 100644
index 0000000..16a083d
--- /dev/null
+++ b/fuzz/privkey_corpus/83ce66bb0c9c3bec32b125c66b724522a293989b
Binary files differ
diff --git a/fuzz/privkey_corpus/872f45b8c5fcebb9e7d8e26f3b41e4d42af2a824 b/fuzz/privkey_corpus/872f45b8c5fcebb9e7d8e26f3b41e4d42af2a824
new file mode 100644
index 0000000..3a144a6
--- /dev/null
+++ b/fuzz/privkey_corpus/872f45b8c5fcebb9e7d8e26f3b41e4d42af2a824
Binary files differ
diff --git a/fuzz/privkey_corpus/88053e0d269f3cb40b00c68ef2ee4e51aab1b669 b/fuzz/privkey_corpus/88053e0d269f3cb40b00c68ef2ee4e51aab1b669
new file mode 100644
index 0000000..31e6008
--- /dev/null
+++ b/fuzz/privkey_corpus/88053e0d269f3cb40b00c68ef2ee4e51aab1b669
@@ -0,0 +1 @@
+0ì0€0*m0€0Ã)è;‚¾é000•)B*Ÿ0€0
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/897d7068f38f4c9f9d127901f7da58ebbbbe989a b/fuzz/privkey_corpus/897d7068f38f4c9f9d127901f7da58ebbbbe989a
new file mode 100644
index 0000000..0ffc973
--- /dev/null
+++ b/fuzz/privkey_corpus/897d7068f38f4c9f9d127901f7da58ebbbbe989a
Binary files differ
diff --git a/fuzz/privkey_corpus/89af3687b8bb5fa6ed225799fd97cbc79f6678ef b/fuzz/privkey_corpus/89af3687b8bb5fa6ed225799fd97cbc79f6678ef
new file mode 100644
index 0000000..a75f41d
--- /dev/null
+++ b/fuzz/privkey_corpus/89af3687b8bb5fa6ed225799fd97cbc79f6678ef
Binary files differ
diff --git a/fuzz/privkey_corpus/8e7daf81d667f41e4310a12a560b69400b97d85d b/fuzz/privkey_corpus/8e7daf81d667f41e4310a12a560b69400b97d85d
new file mode 100644
index 0000000..01281ee
--- /dev/null
+++ b/fuzz/privkey_corpus/8e7daf81d667f41e4310a12a560b69400b97d85d
Binary files differ
diff --git a/fuzz/privkey_corpus/8fe2bfb00afe3d66f36bdb951df47f28e4bc60f1 b/fuzz/privkey_corpus/8fe2bfb00afe3d66f36bdb951df47f28e4bc60f1
new file mode 100644
index 0000000..c020684
--- /dev/null
+++ b/fuzz/privkey_corpus/8fe2bfb00afe3d66f36bdb951df47f28e4bc60f1
Binary files differ
diff --git a/fuzz/privkey_corpus/9270672e3b3b0c6dd04c2001646900d392a8f0cd b/fuzz/privkey_corpus/9270672e3b3b0c6dd04c2001646900d392a8f0cd
new file mode 100644
index 0000000..b25b449
--- /dev/null
+++ b/fuzz/privkey_corpus/9270672e3b3b0c6dd04c2001646900d392a8f0cd
Binary files differ
diff --git a/fuzz/privkey_corpus/957768c9faad66620a63f5f529546ae973203c0c b/fuzz/privkey_corpus/957768c9faad66620a63f5f529546ae973203c0c
new file mode 100644
index 0000000..a425cb8
--- /dev/null
+++ b/fuzz/privkey_corpus/957768c9faad66620a63f5f529546ae973203c0c
Binary files differ
diff --git a/fuzz/privkey_corpus/9ed81784ce2583f8be38e859dce5e95b495a6f5e b/fuzz/privkey_corpus/9ed81784ce2583f8be38e859dce5e95b495a6f5e
new file mode 100644
index 0000000..591f2fe
--- /dev/null
+++ b/fuzz/privkey_corpus/9ed81784ce2583f8be38e859dce5e95b495a6f5e
Binary files differ
diff --git a/fuzz/privkey_corpus/9f1eabfff336e298505550b3f369c61431289713 b/fuzz/privkey_corpus/9f1eabfff336e298505550b3f369c61431289713
new file mode 100644
index 0000000..21ec4f6
--- /dev/null
+++ b/fuzz/privkey_corpus/9f1eabfff336e298505550b3f369c61431289713
Binary files differ
diff --git a/fuzz/privkey_corpus/9f24c5b2bf1b8306de8f5f708476773bfdf8d141 b/fuzz/privkey_corpus/9f24c5b2bf1b8306de8f5f708476773bfdf8d141
new file mode 100644
index 0000000..a4e75b3
--- /dev/null
+++ b/fuzz/privkey_corpus/9f24c5b2bf1b8306de8f5f708476773bfdf8d141
@@ -0,0 +1 @@
+¤‚
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/a3f0a9ff5a9ec60daa274d60cfeecdd579401ece b/fuzz/privkey_corpus/a3f0a9ff5a9ec60daa274d60cfeecdd579401ece
new file mode 100644
index 0000000..d6fcaec
--- /dev/null
+++ b/fuzz/privkey_corpus/a3f0a9ff5a9ec60daa274d60cfeecdd579401ece
Binary files differ
diff --git a/fuzz/privkey_corpus/a463eb1757724d37c64e0f34e7b8c2f214bf9db2 b/fuzz/privkey_corpus/a463eb1757724d37c64e0f34e7b8c2f214bf9db2
new file mode 100644
index 0000000..7f585f4
--- /dev/null
+++ b/fuzz/privkey_corpus/a463eb1757724d37c64e0f34e7b8c2f214bf9db2
@@ -0,0 +1 @@
+0€0vŸ&€(À0€0È'V0
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/a4c7ddac15ef72f597bcf6c3e6f287ede7de6119 b/fuzz/privkey_corpus/a4c7ddac15ef72f597bcf6c3e6f287ede7de6119
new file mode 100644
index 0000000..53c1da0
--- /dev/null
+++ b/fuzz/privkey_corpus/a4c7ddac15ef72f597bcf6c3e6f287ede7de6119
Binary files differ
diff --git a/fuzz/privkey_corpus/a547b12cbdf4c9ad8002e735e5276674a0dc48d1 b/fuzz/privkey_corpus/a547b12cbdf4c9ad8002e735e5276674a0dc48d1
new file mode 100644
index 0000000..022298b
--- /dev/null
+++ b/fuzz/privkey_corpus/a547b12cbdf4c9ad8002e735e5276674a0dc48d1
Binary files differ
diff --git a/fuzz/privkey_corpus/ac4c5ab934f6f54f4337c1fd1194a979bffec24d b/fuzz/privkey_corpus/ac4c5ab934f6f54f4337c1fd1194a979bffec24d
new file mode 100644
index 0000000..a98dc21
--- /dev/null
+++ b/fuzz/privkey_corpus/ac4c5ab934f6f54f4337c1fd1194a979bffec24d
Binary files differ
diff --git a/fuzz/privkey_corpus/ac74cf6269b94ccb419933a32bd7d8c9452dce2e b/fuzz/privkey_corpus/ac74cf6269b94ccb419933a32bd7d8c9452dce2e
new file mode 100644
index 0000000..3076859
--- /dev/null
+++ b/fuzz/privkey_corpus/ac74cf6269b94ccb419933a32bd7d8c9452dce2e
Binary files differ
diff --git a/fuzz/privkey_corpus/ad691a66d0a57b9737701d8b431e48a9a9b98a5a b/fuzz/privkey_corpus/ad691a66d0a57b9737701d8b431e48a9a9b98a5a
new file mode 100644
index 0000000..26f205d
--- /dev/null
+++ b/fuzz/privkey_corpus/ad691a66d0a57b9737701d8b431e48a9a9b98a5a
Binary files differ
diff --git a/fuzz/privkey_corpus/b0af7aec354da869abfb72e1ac8586c079101d78 b/fuzz/privkey_corpus/b0af7aec354da869abfb72e1ac8586c079101d78
new file mode 100644
index 0000000..735a0e1
--- /dev/null
+++ b/fuzz/privkey_corpus/b0af7aec354da869abfb72e1ac8586c079101d78
Binary files differ
diff --git a/fuzz/privkey_corpus/b2c7dc902172c6beea66a96df921d559acce2e1d b/fuzz/privkey_corpus/b2c7dc902172c6beea66a96df921d559acce2e1d
new file mode 100644
index 0000000..bde51c0
--- /dev/null
+++ b/fuzz/privkey_corpus/b2c7dc902172c6beea66a96df921d559acce2e1d
@@ -0,0 +1 @@
+0)0€0)0€0)0€0)0€0€Ã)è;‚0¤0!
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/b92cebe5be4c47d05ae4ea152c198b4d5978f22f b/fuzz/privkey_corpus/b92cebe5be4c47d05ae4ea152c198b4d5978f22f
new file mode 100644
index 0000000..cbcc948
--- /dev/null
+++ b/fuzz/privkey_corpus/b92cebe5be4c47d05ae4ea152c198b4d5978f22f
Binary files differ
diff --git a/fuzz/privkey_corpus/bb27d0460c1351c8fc37f87f26db293fbe57f0a8 b/fuzz/privkey_corpus/bb27d0460c1351c8fc37f87f26db293fbe57f0a8
new file mode 100644
index 0000000..d580adb
--- /dev/null
+++ b/fuzz/privkey_corpus/bb27d0460c1351c8fc37f87f26db293fbe57f0a8
Binary files differ
diff --git a/fuzz/privkey_corpus/bc30b3e987eff679901a24d19a205048f2ca54ba b/fuzz/privkey_corpus/bc30b3e987eff679901a24d19a205048f2ca54ba
new file mode 100644
index 0000000..80bfab0
--- /dev/null
+++ b/fuzz/privkey_corpus/bc30b3e987eff679901a24d19a205048f2ca54ba
Binary files differ
diff --git a/fuzz/privkey_corpus/bdc3b30e8d1a278f81ebe78c4b5e44aaef55c4e1 b/fuzz/privkey_corpus/bdc3b30e8d1a278f81ebe78c4b5e44aaef55c4e1
new file mode 100644
index 0000000..69f9481
--- /dev/null
+++ b/fuzz/privkey_corpus/bdc3b30e8d1a278f81ebe78c4b5e44aaef55c4e1
Binary files differ
diff --git a/fuzz/privkey_corpus/beca0cd7b91a6b0af4fc012cf1385952287660af b/fuzz/privkey_corpus/beca0cd7b91a6b0af4fc012cf1385952287660af
new file mode 100644
index 0000000..e1c7497
--- /dev/null
+++ b/fuzz/privkey_corpus/beca0cd7b91a6b0af4fc012cf1385952287660af
Binary files differ
diff --git a/fuzz/privkey_corpus/c1a97da39a236c416de37437ac41ab4ff86caee8 b/fuzz/privkey_corpus/c1a97da39a236c416de37437ac41ab4ff86caee8
new file mode 100644
index 0000000..b000805
--- /dev/null
+++ b/fuzz/privkey_corpus/c1a97da39a236c416de37437ac41ab4ff86caee8
Binary files differ
diff --git a/fuzz/privkey_corpus/c24ffe679d844cc26ac590f2657bd36de7876703 b/fuzz/privkey_corpus/c24ffe679d844cc26ac590f2657bd36de7876703
new file mode 100644
index 0000000..23cce40
--- /dev/null
+++ b/fuzz/privkey_corpus/c24ffe679d844cc26ac590f2657bd36de7876703
Binary files differ
diff --git a/fuzz/privkey_corpus/c638138e56beeacb40af3cd20050b8a3f5036992 b/fuzz/privkey_corpus/c638138e56beeacb40af3cd20050b8a3f5036992
new file mode 100644
index 0000000..cc74a9b
--- /dev/null
+++ b/fuzz/privkey_corpus/c638138e56beeacb40af3cd20050b8a3f5036992
Binary files differ
diff --git a/fuzz/privkey_corpus/c7639de8641dc12f675107b0ce6aee03e1f4ca46 b/fuzz/privkey_corpus/c7639de8641dc12f675107b0ce6aee03e1f4ca46
new file mode 100644
index 0000000..c76f07c
--- /dev/null
+++ b/fuzz/privkey_corpus/c7639de8641dc12f675107b0ce6aee03e1f4ca46
@@ -0,0 +1 @@
+ŸŸ
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/ca03fe7c55904c73f9ff1eadf2e192e0eb411e0c b/fuzz/privkey_corpus/ca03fe7c55904c73f9ff1eadf2e192e0eb411e0c
new file mode 100644
index 0000000..503c43a
--- /dev/null
+++ b/fuzz/privkey_corpus/ca03fe7c55904c73f9ff1eadf2e192e0eb411e0c
Binary files differ
diff --git a/fuzz/privkey_corpus/ca3805fce726847a1fcd57e100bde2c4058afa6e b/fuzz/privkey_corpus/ca3805fce726847a1fcd57e100bde2c4058afa6e
new file mode 100644
index 0000000..8539d66
--- /dev/null
+++ b/fuzz/privkey_corpus/ca3805fce726847a1fcd57e100bde2c4058afa6e
Binary files differ
diff --git a/fuzz/privkey_corpus/ca6887f6d21cf4ecdebe7ac1900c1c49ee16c6b2 b/fuzz/privkey_corpus/ca6887f6d21cf4ecdebe7ac1900c1c49ee16c6b2
new file mode 100644
index 0000000..dbb14ef
--- /dev/null
+++ b/fuzz/privkey_corpus/ca6887f6d21cf4ecdebe7ac1900c1c49ee16c6b2
@@ -0,0 +1 @@
+0€1¾	l00*0€!)00
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/cab3b9db9caea2b6998acc6755d0bcaa20a2ba48 b/fuzz/privkey_corpus/cab3b9db9caea2b6998acc6755d0bcaa20a2ba48
new file mode 100644
index 0000000..8ec90d1
--- /dev/null
+++ b/fuzz/privkey_corpus/cab3b9db9caea2b6998acc6755d0bcaa20a2ba48
Binary files differ
diff --git a/fuzz/privkey_corpus/cc719b2377a9c7bf6b598fd1a0385a128be673dc b/fuzz/privkey_corpus/cc719b2377a9c7bf6b598fd1a0385a128be673dc
new file mode 100644
index 0000000..642475d
--- /dev/null
+++ b/fuzz/privkey_corpus/cc719b2377a9c7bf6b598fd1a0385a128be673dc
Binary files differ
diff --git a/fuzz/privkey_corpus/cd7337d143156288c8f0236cc15ce647b652e739 b/fuzz/privkey_corpus/cd7337d143156288c8f0236cc15ce647b652e739
new file mode 100644
index 0000000..dec6f9f
--- /dev/null
+++ b/fuzz/privkey_corpus/cd7337d143156288c8f0236cc15ce647b652e739
Binary files differ
diff --git a/fuzz/privkey_corpus/ce70afddf822af8cf9e69bffb31e1fc24e636be1 b/fuzz/privkey_corpus/ce70afddf822af8cf9e69bffb31e1fc24e636be1
new file mode 100644
index 0000000..f1739fa
--- /dev/null
+++ b/fuzz/privkey_corpus/ce70afddf822af8cf9e69bffb31e1fc24e636be1
Binary files differ
diff --git a/fuzz/privkey_corpus/d3b57fed5ac21ef3efb48176f09412eb8c042c0c b/fuzz/privkey_corpus/d3b57fed5ac21ef3efb48176f09412eb8c042c0c
new file mode 100644
index 0000000..4debf42
--- /dev/null
+++ b/fuzz/privkey_corpus/d3b57fed5ac21ef3efb48176f09412eb8c042c0c
Binary files differ
diff --git a/fuzz/privkey_corpus/d512a5050e4f5f699c7388a740671286aa571c6e b/fuzz/privkey_corpus/d512a5050e4f5f699c7388a740671286aa571c6e
new file mode 100644
index 0000000..273b8f5
--- /dev/null
+++ b/fuzz/privkey_corpus/d512a5050e4f5f699c7388a740671286aa571c6e
@@ -0,0 +1 @@
+0€Ÿ¾ëŸ !00
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/d5908176a8cf6c8fa4d500ab81e0fc66a927b74a b/fuzz/privkey_corpus/d5908176a8cf6c8fa4d500ab81e0fc66a927b74a
new file mode 100644
index 0000000..36b6830
--- /dev/null
+++ b/fuzz/privkey_corpus/d5908176a8cf6c8fa4d500ab81e0fc66a927b74a
Binary files differ
diff --git a/fuzz/privkey_corpus/d77a9ea971ce9b7fb6c73339ab715c1e7475c735 b/fuzz/privkey_corpus/d77a9ea971ce9b7fb6c73339ab715c1e7475c735
new file mode 100644
index 0000000..0bbe5c2
--- /dev/null
+++ b/fuzz/privkey_corpus/d77a9ea971ce9b7fb6c73339ab715c1e7475c735
Binary files differ
diff --git a/fuzz/privkey_corpus/d86de6972bc8bd6f0df835199ab0aae303f3f8d4 b/fuzz/privkey_corpus/d86de6972bc8bd6f0df835199ab0aae303f3f8d4
new file mode 100644
index 0000000..e78c74d
--- /dev/null
+++ b/fuzz/privkey_corpus/d86de6972bc8bd6f0df835199ab0aae303f3f8d4
Binary files differ
diff --git a/fuzz/privkey_corpus/db6c91a81049a4c819e086b54513d20446691ab9 b/fuzz/privkey_corpus/db6c91a81049a4c819e086b54513d20446691ab9
new file mode 100644
index 0000000..598e551
--- /dev/null
+++ b/fuzz/privkey_corpus/db6c91a81049a4c819e086b54513d20446691ab9
Binary files differ
diff --git a/fuzz/privkey_corpus/dcd1e294bde4644814fcce9efae0302f7eb0238a b/fuzz/privkey_corpus/dcd1e294bde4644814fcce9efae0302f7eb0238a
new file mode 100644
index 0000000..f1e29a0
--- /dev/null
+++ b/fuzz/privkey_corpus/dcd1e294bde4644814fcce9efae0302f7eb0238a
Binary files differ
diff --git a/fuzz/privkey_corpus/e37e78da0ab0693a777912980c4db4e9a8faa975 b/fuzz/privkey_corpus/e37e78da0ab0693a777912980c4db4e9a8faa975
new file mode 100644
index 0000000..307518d
--- /dev/null
+++ b/fuzz/privkey_corpus/e37e78da0ab0693a777912980c4db4e9a8faa975
@@ -0,0 +1 @@
+v'0ÂR
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/e5c82c5fcbe0067ffda8defedc3ce3a7fc1e0ce9 b/fuzz/privkey_corpus/e5c82c5fcbe0067ffda8defedc3ce3a7fc1e0ce9
new file mode 100644
index 0000000..d936117
--- /dev/null
+++ b/fuzz/privkey_corpus/e5c82c5fcbe0067ffda8defedc3ce3a7fc1e0ce9
Binary files differ
diff --git a/fuzz/privkey_corpus/ea36122710fd32c98c091a6d3851b347d9dce5a5 b/fuzz/privkey_corpus/ea36122710fd32c98c091a6d3851b347d9dce5a5
new file mode 100644
index 0000000..07f51a0
--- /dev/null
+++ b/fuzz/privkey_corpus/ea36122710fd32c98c091a6d3851b347d9dce5a5
Binary files differ
diff --git a/fuzz/privkey_corpus/ec97391303bce6e2ce9f61eaf52fd06fef0ab82b b/fuzz/privkey_corpus/ec97391303bce6e2ce9f61eaf52fd06fef0ab82b
new file mode 100644
index 0000000..80b80cf
--- /dev/null
+++ b/fuzz/privkey_corpus/ec97391303bce6e2ce9f61eaf52fd06fef0ab82b
Binary files differ
diff --git a/fuzz/privkey_corpus/f195c020a28dfc5f2fb6af256b524ddcd93756ed b/fuzz/privkey_corpus/f195c020a28dfc5f2fb6af256b524ddcd93756ed
new file mode 100644
index 0000000..b1d81e7
--- /dev/null
+++ b/fuzz/privkey_corpus/f195c020a28dfc5f2fb6af256b524ddcd93756ed
@@ -0,0 +1 @@

\ No newline at end of file
diff --git a/fuzz/privkey_corpus/f34aa93e1616ffaf490c9c24826fcc5c637655f4 b/fuzz/privkey_corpus/f34aa93e1616ffaf490c9c24826fcc5c637655f4
new file mode 100644
index 0000000..b7a93db
--- /dev/null
+++ b/fuzz/privkey_corpus/f34aa93e1616ffaf490c9c24826fcc5c637655f4
@@ -0,0 +1 @@
+Ÿð‹€°'
\ No newline at end of file
diff --git a/fuzz/privkey_corpus/f56e3afd3eece26c160ae0b80b545edbbaa35a7b b/fuzz/privkey_corpus/f56e3afd3eece26c160ae0b80b545edbbaa35a7b
new file mode 100644
index 0000000..6b698d8
--- /dev/null
+++ b/fuzz/privkey_corpus/f56e3afd3eece26c160ae0b80b545edbbaa35a7b
Binary files differ
diff --git a/fuzz/privkey_corpus/fe7d7ae7b073e7076b8dd729ff7627431162b5c3 b/fuzz/privkey_corpus/fe7d7ae7b073e7076b8dd729ff7627431162b5c3
new file mode 100644
index 0000000..550582b
--- /dev/null
+++ b/fuzz/privkey_corpus/fe7d7ae7b073e7076b8dd729ff7627431162b5c3
Binary files differ
diff --git a/fuzz/server.cc b/fuzz/server.cc
new file mode 100644
index 0000000..f4f999a
--- /dev/null
+++ b/fuzz/server.cc
@@ -0,0 +1,219 @@
+#include <assert.h>
+
+#include <openssl/ssl.h>
+
+static const uint8_t kCertificateDER[] = {
+    0x30, 0x82, 0x02, 0xff, 0x30, 0x82, 0x01, 0xe7, 0xa0, 0x03, 0x02, 0x01,
+    0x02, 0x02, 0x11, 0x00, 0xb1, 0x84, 0xee, 0x34, 0x99, 0x98, 0x76, 0xfb,
+    0x6f, 0xb2, 0x15, 0xc8, 0x47, 0x79, 0x05, 0x9b, 0x30, 0x0d, 0x06, 0x09,
+    0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x0b, 0x05, 0x00, 0x30,
+    0x12, 0x31, 0x10, 0x30, 0x0e, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13, 0x07,
+    0x41, 0x63, 0x6d, 0x65, 0x20, 0x43, 0x6f, 0x30, 0x1e, 0x17, 0x0d, 0x31,
+    0x35, 0x31, 0x31, 0x30, 0x37, 0x30, 0x30, 0x32, 0x34, 0x35, 0x36, 0x5a,
+    0x17, 0x0d, 0x31, 0x36, 0x31, 0x31, 0x30, 0x36, 0x30, 0x30, 0x32, 0x34,
+    0x35, 0x36, 0x5a, 0x30, 0x12, 0x31, 0x10, 0x30, 0x0e, 0x06, 0x03, 0x55,
+    0x04, 0x0a, 0x13, 0x07, 0x41, 0x63, 0x6d, 0x65, 0x20, 0x43, 0x6f, 0x30,
+    0x82, 0x01, 0x22, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7,
+    0x0d, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0f, 0x00, 0x30,
+    0x82, 0x01, 0x0a, 0x02, 0x82, 0x01, 0x01, 0x00, 0xce, 0x47, 0xcb, 0x11,
+    0xbb, 0xd2, 0x9d, 0x8e, 0x9e, 0xd2, 0x1e, 0x14, 0xaf, 0xc7, 0xea, 0xb6,
+    0xc9, 0x38, 0x2a, 0x6f, 0xb3, 0x7e, 0xfb, 0xbc, 0xfc, 0x59, 0x42, 0xb9,
+    0x56, 0xf0, 0x4c, 0x3f, 0xf7, 0x31, 0x84, 0xbe, 0xac, 0x03, 0x9e, 0x71,
+    0x91, 0x85, 0xd8, 0x32, 0xbd, 0x00, 0xea, 0xac, 0x65, 0xf6, 0x03, 0xc8,
+    0x0f, 0x8b, 0xfd, 0x6e, 0x58, 0x88, 0x04, 0x41, 0x92, 0x74, 0xa6, 0x57,
+    0x2e, 0x8e, 0x88, 0xd5, 0x3d, 0xda, 0x14, 0x3e, 0x63, 0x88, 0x22, 0xe3,
+    0x53, 0xe9, 0xba, 0x39, 0x09, 0xac, 0xfb, 0xd0, 0x4c, 0xf2, 0x3c, 0x20,
+    0xd6, 0x97, 0xe6, 0xed, 0xf1, 0x62, 0x1e, 0xe5, 0xc9, 0x48, 0xa0, 0xca,
+    0x2e, 0x3c, 0x14, 0x5a, 0x82, 0xd4, 0xed, 0xb1, 0xe3, 0x43, 0xc1, 0x2a,
+    0x59, 0xa5, 0xb9, 0xc8, 0x48, 0xa7, 0x39, 0x23, 0x74, 0xa7, 0x37, 0xb0,
+    0x6f, 0xc3, 0x64, 0x99, 0x6c, 0xa2, 0x82, 0xc8, 0xf6, 0xdb, 0x86, 0x40,
+    0xce, 0xd1, 0x85, 0x9f, 0xce, 0x69, 0xf4, 0x15, 0x2a, 0x23, 0xca, 0xea,
+    0xb7, 0x7b, 0xdf, 0xfb, 0x43, 0x5f, 0xff, 0x7a, 0x49, 0x49, 0x0e, 0xe7,
+    0x02, 0x51, 0x45, 0x13, 0xe8, 0x90, 0x64, 0x21, 0x0c, 0x26, 0x2b, 0x5d,
+    0xfc, 0xe4, 0xb5, 0x86, 0x89, 0x43, 0x22, 0x4c, 0xf3, 0x3b, 0xf3, 0x09,
+    0xc4, 0xa4, 0x10, 0x80, 0xf2, 0x46, 0xe2, 0x46, 0x8f, 0x76, 0x50, 0xbf,
+    0xaf, 0x2b, 0x90, 0x1b, 0x78, 0xc7, 0xcf, 0xc1, 0x77, 0xd0, 0xfb, 0xa9,
+    0xfb, 0xc9, 0x66, 0x5a, 0xc5, 0x9b, 0x31, 0x41, 0x67, 0x01, 0xbe, 0x33,
+    0x10, 0xba, 0x05, 0x58, 0xed, 0x76, 0x53, 0xde, 0x5d, 0xc1, 0xe8, 0xbb,
+    0x9f, 0xf1, 0xcd, 0xfb, 0xdf, 0x64, 0x7f, 0xd7, 0x18, 0xab, 0x0f, 0x94,
+    0x28, 0x95, 0x4a, 0xcc, 0x6a, 0xa9, 0x50, 0xc7, 0x05, 0x47, 0x10, 0x41,
+    0x02, 0x03, 0x01, 0x00, 0x01, 0xa3, 0x50, 0x30, 0x4e, 0x30, 0x0e, 0x06,
+    0x03, 0x55, 0x1d, 0x0f, 0x01, 0x01, 0xff, 0x04, 0x04, 0x03, 0x02, 0x05,
+    0xa0, 0x30, 0x13, 0x06, 0x03, 0x55, 0x1d, 0x25, 0x04, 0x0c, 0x30, 0x0a,
+    0x06, 0x08, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x01, 0x30, 0x0c,
+    0x06, 0x03, 0x55, 0x1d, 0x13, 0x01, 0x01, 0xff, 0x04, 0x02, 0x30, 0x00,
+    0x30, 0x19, 0x06, 0x03, 0x55, 0x1d, 0x11, 0x04, 0x12, 0x30, 0x10, 0x82,
+    0x0e, 0x66, 0x75, 0x7a, 0x7a, 0x2e, 0x62, 0x6f, 0x72, 0x69, 0x6e, 0x67,
+    0x73, 0x73, 0x6c, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7,
+    0x0d, 0x01, 0x01, 0x0b, 0x05, 0x00, 0x03, 0x82, 0x01, 0x01, 0x00, 0x92,
+    0xde, 0xef, 0x96, 0x06, 0x7b, 0xff, 0x71, 0x7d, 0x4e, 0xa0, 0x7d, 0xae,
+    0xb8, 0x22, 0xb4, 0x2c, 0xf7, 0x96, 0x9c, 0x37, 0x1d, 0x8f, 0xe7, 0xd9,
+    0x47, 0xff, 0x3f, 0xe9, 0x35, 0x95, 0x0e, 0xdd, 0xdc, 0x7f, 0xc8, 0x8a,
+    0x1e, 0x36, 0x1d, 0x38, 0x47, 0xfc, 0x76, 0xd2, 0x1f, 0x98, 0xa1, 0x36,
+    0xac, 0xc8, 0x70, 0x38, 0x0a, 0x3d, 0x51, 0x8d, 0x0f, 0x03, 0x1b, 0xef,
+    0x62, 0xa1, 0xcb, 0x2b, 0x4a, 0x8c, 0x12, 0x2b, 0x54, 0x50, 0x9a, 0x6b,
+    0xfe, 0xaf, 0xd9, 0xf6, 0xbf, 0x58, 0x11, 0x58, 0x5e, 0xe5, 0x86, 0x1e,
+    0x3b, 0x6b, 0x30, 0x7e, 0x72, 0x89, 0xe8, 0x6b, 0x7b, 0xb7, 0xaf, 0xef,
+    0x8b, 0xa9, 0x3e, 0xb0, 0xcd, 0x0b, 0xef, 0xb0, 0x0c, 0x96, 0x2b, 0xc5,
+    0x3b, 0xd5, 0xf1, 0xc2, 0xae, 0x3a, 0x60, 0xd9, 0x0f, 0x75, 0x37, 0x55,
+    0x4d, 0x62, 0xd2, 0xed, 0x96, 0xac, 0x30, 0x6b, 0xda, 0xa1, 0x48, 0x17,
+    0x96, 0x23, 0x85, 0x9a, 0x57, 0x77, 0xe9, 0x22, 0xa2, 0x37, 0x03, 0xba,
+    0x49, 0x77, 0x40, 0x3b, 0x76, 0x4b, 0xda, 0xc1, 0x04, 0x57, 0x55, 0x34,
+    0x22, 0x83, 0x45, 0x29, 0xab, 0x2e, 0x11, 0xff, 0x0d, 0xab, 0x55, 0xb1,
+    0xa7, 0x58, 0x59, 0x05, 0x25, 0xf9, 0x1e, 0x3d, 0xb7, 0xac, 0x04, 0x39,
+    0x2c, 0xf9, 0xaf, 0xb8, 0x68, 0xfb, 0x8e, 0x35, 0x71, 0x32, 0xff, 0x70,
+    0xe9, 0x46, 0x6d, 0x5c, 0x06, 0x90, 0x88, 0x23, 0x48, 0x0c, 0x50, 0xeb,
+    0x0a, 0xa9, 0xae, 0xe8, 0xfc, 0xbe, 0xa5, 0x76, 0x94, 0xd7, 0x64, 0x22,
+    0x38, 0x98, 0x17, 0xa4, 0x3a, 0xa7, 0x59, 0x9f, 0x1d, 0x3b, 0x75, 0x90,
+    0x1a, 0x81, 0xef, 0x19, 0xfb, 0x2b, 0xb7, 0xa7, 0x64, 0x61, 0x22, 0xa4,
+    0x6f, 0x7b, 0xfa, 0x58, 0xbb, 0x8c, 0x4e, 0x77, 0x67, 0xd0, 0x5d, 0x58,
+    0x76, 0x8a, 0xbb,
+};
+
+static const uint8_t kRSAPrivateKeyDER[] = {
+    0x30, 0x82, 0x04, 0xa5, 0x02, 0x01, 0x00, 0x02, 0x82, 0x01, 0x01, 0x00,
+    0xce, 0x47, 0xcb, 0x11, 0xbb, 0xd2, 0x9d, 0x8e, 0x9e, 0xd2, 0x1e, 0x14,
+    0xaf, 0xc7, 0xea, 0xb6, 0xc9, 0x38, 0x2a, 0x6f, 0xb3, 0x7e, 0xfb, 0xbc,
+    0xfc, 0x59, 0x42, 0xb9, 0x56, 0xf0, 0x4c, 0x3f, 0xf7, 0x31, 0x84, 0xbe,
+    0xac, 0x03, 0x9e, 0x71, 0x91, 0x85, 0xd8, 0x32, 0xbd, 0x00, 0xea, 0xac,
+    0x65, 0xf6, 0x03, 0xc8, 0x0f, 0x8b, 0xfd, 0x6e, 0x58, 0x88, 0x04, 0x41,
+    0x92, 0x74, 0xa6, 0x57, 0x2e, 0x8e, 0x88, 0xd5, 0x3d, 0xda, 0x14, 0x3e,
+    0x63, 0x88, 0x22, 0xe3, 0x53, 0xe9, 0xba, 0x39, 0x09, 0xac, 0xfb, 0xd0,
+    0x4c, 0xf2, 0x3c, 0x20, 0xd6, 0x97, 0xe6, 0xed, 0xf1, 0x62, 0x1e, 0xe5,
+    0xc9, 0x48, 0xa0, 0xca, 0x2e, 0x3c, 0x14, 0x5a, 0x82, 0xd4, 0xed, 0xb1,
+    0xe3, 0x43, 0xc1, 0x2a, 0x59, 0xa5, 0xb9, 0xc8, 0x48, 0xa7, 0x39, 0x23,
+    0x74, 0xa7, 0x37, 0xb0, 0x6f, 0xc3, 0x64, 0x99, 0x6c, 0xa2, 0x82, 0xc8,
+    0xf6, 0xdb, 0x86, 0x40, 0xce, 0xd1, 0x85, 0x9f, 0xce, 0x69, 0xf4, 0x15,
+    0x2a, 0x23, 0xca, 0xea, 0xb7, 0x7b, 0xdf, 0xfb, 0x43, 0x5f, 0xff, 0x7a,
+    0x49, 0x49, 0x0e, 0xe7, 0x02, 0x51, 0x45, 0x13, 0xe8, 0x90, 0x64, 0x21,
+    0x0c, 0x26, 0x2b, 0x5d, 0xfc, 0xe4, 0xb5, 0x86, 0x89, 0x43, 0x22, 0x4c,
+    0xf3, 0x3b, 0xf3, 0x09, 0xc4, 0xa4, 0x10, 0x80, 0xf2, 0x46, 0xe2, 0x46,
+    0x8f, 0x76, 0x50, 0xbf, 0xaf, 0x2b, 0x90, 0x1b, 0x78, 0xc7, 0xcf, 0xc1,
+    0x77, 0xd0, 0xfb, 0xa9, 0xfb, 0xc9, 0x66, 0x5a, 0xc5, 0x9b, 0x31, 0x41,
+    0x67, 0x01, 0xbe, 0x33, 0x10, 0xba, 0x05, 0x58, 0xed, 0x76, 0x53, 0xde,
+    0x5d, 0xc1, 0xe8, 0xbb, 0x9f, 0xf1, 0xcd, 0xfb, 0xdf, 0x64, 0x7f, 0xd7,
+    0x18, 0xab, 0x0f, 0x94, 0x28, 0x95, 0x4a, 0xcc, 0x6a, 0xa9, 0x50, 0xc7,
+    0x05, 0x47, 0x10, 0x41, 0x02, 0x03, 0x01, 0x00, 0x01, 0x02, 0x82, 0x01,
+    0x01, 0x00, 0xa8, 0x47, 0xb9, 0x4a, 0x06, 0x47, 0x93, 0x71, 0x3d, 0xef,
+    0x7b, 0xca, 0xb4, 0x7c, 0x0a, 0xe6, 0x82, 0xd0, 0xe7, 0x0d, 0xa9, 0x08,
+    0xf6, 0xa4, 0xfd, 0xd8, 0x73, 0xae, 0x6f, 0x56, 0x29, 0x5e, 0x25, 0x72,
+    0xa8, 0x30, 0x44, 0x73, 0xcf, 0x56, 0x26, 0xb9, 0x61, 0xde, 0x42, 0x81,
+    0xf4, 0xf0, 0x1f, 0x5d, 0xcb, 0x47, 0xf2, 0x26, 0xe9, 0xe0, 0x93, 0x28,
+    0xa3, 0x10, 0x3b, 0x42, 0x1e, 0x51, 0x11, 0x12, 0x06, 0x5e, 0xaf, 0xce,
+    0xb0, 0xa5, 0x14, 0xdd, 0x82, 0x58, 0xa1, 0xa4, 0x12, 0xdf, 0x65, 0x1d,
+    0x51, 0x70, 0x64, 0xd5, 0x58, 0x68, 0x11, 0xa8, 0x6a, 0x23, 0xc2, 0xbf,
+    0xa1, 0x25, 0x24, 0x47, 0xb3, 0xa4, 0x3c, 0x83, 0x96, 0xb7, 0x1f, 0xf4,
+    0x44, 0xd4, 0xd1, 0xe9, 0xfc, 0x33, 0x68, 0x5e, 0xe2, 0x68, 0x99, 0x9c,
+    0x91, 0xe8, 0x72, 0xc9, 0xd7, 0x8c, 0x80, 0x20, 0x8e, 0x77, 0x83, 0x4d,
+    0xe4, 0xab, 0xf9, 0x74, 0xa1, 0xdf, 0xd3, 0xc0, 0x0d, 0x5b, 0x05, 0x51,
+    0xc2, 0x6f, 0xb2, 0x91, 0x02, 0xec, 0xc0, 0x02, 0x1a, 0x5c, 0x91, 0x05,
+    0xf1, 0xe3, 0xfa, 0x65, 0xc2, 0xad, 0x24, 0xe6, 0xe5, 0x3c, 0xb6, 0x16,
+    0xf1, 0xa1, 0x67, 0x1a, 0x9d, 0x37, 0x56, 0xbf, 0x01, 0xd7, 0x3b, 0x35,
+    0x30, 0x57, 0x73, 0xf4, 0xf0, 0x5e, 0xa7, 0xe8, 0x0a, 0xc1, 0x94, 0x17,
+    0xcf, 0x0a, 0xbd, 0xf5, 0x31, 0xa7, 0x2d, 0xf7, 0xf5, 0xd9, 0x8c, 0xc2,
+    0x01, 0xbd, 0xda, 0x16, 0x8e, 0xb9, 0x30, 0x40, 0xa6, 0x6e, 0xbd, 0xcd,
+    0x4d, 0x84, 0x67, 0x4e, 0x0b, 0xce, 0xd5, 0xef, 0xf8, 0x08, 0x63, 0x02,
+    0xc6, 0xc7, 0xf7, 0x67, 0x92, 0xe2, 0x23, 0x9d, 0x27, 0x22, 0x1d, 0xc6,
+    0x67, 0x5e, 0x66, 0xbf, 0x03, 0xb8, 0xa9, 0x67, 0xd4, 0x39, 0xd8, 0x75,
+    0xfa, 0xe8, 0xed, 0x56, 0xb8, 0x81, 0x02, 0x81, 0x81, 0x00, 0xf7, 0x46,
+    0x68, 0xc6, 0x13, 0xf8, 0xba, 0x0f, 0x83, 0xdb, 0x05, 0xa8, 0x25, 0x00,
+    0x70, 0x9c, 0x9e, 0x8b, 0x12, 0x34, 0x0d, 0x96, 0xcf, 0x0d, 0x98, 0x9b,
+    0x8d, 0x9c, 0x96, 0x78, 0xd1, 0x3c, 0x01, 0x8c, 0xb9, 0x35, 0x5c, 0x20,
+    0x42, 0xb4, 0x38, 0xe3, 0xd6, 0x54, 0xe7, 0x55, 0xd6, 0x26, 0x8a, 0x0c,
+    0xf6, 0x1f, 0xe0, 0x04, 0xc1, 0x22, 0x42, 0x19, 0x61, 0xc4, 0x94, 0x7c,
+    0x07, 0x2e, 0x80, 0x52, 0xfe, 0x8d, 0xe6, 0x92, 0x3a, 0x91, 0xfe, 0x72,
+    0x99, 0xe1, 0x2a, 0x73, 0x76, 0xb1, 0x24, 0x20, 0x67, 0xde, 0x28, 0xcb,
+    0x0e, 0xe6, 0x52, 0xb5, 0xfa, 0xfb, 0x8b, 0x1e, 0x6a, 0x1d, 0x09, 0x26,
+    0xb9, 0xa7, 0x61, 0xba, 0xf8, 0x79, 0xd2, 0x66, 0x57, 0x28, 0xd7, 0x31,
+    0xb5, 0x0b, 0x27, 0x19, 0x1e, 0x6f, 0x46, 0xfc, 0x54, 0x95, 0xeb, 0x78,
+    0x01, 0xb6, 0xd9, 0x79, 0x5a, 0x4d, 0x02, 0x81, 0x81, 0x00, 0xd5, 0x8f,
+    0x16, 0x53, 0x2f, 0x57, 0x93, 0xbf, 0x09, 0x75, 0xbf, 0x63, 0x40, 0x3d,
+    0x27, 0xfd, 0x23, 0x21, 0xde, 0x9b, 0xe9, 0x73, 0x3f, 0x49, 0x02, 0xd2,
+    0x38, 0x96, 0xcf, 0xc3, 0xba, 0x92, 0x07, 0x87, 0x52, 0xa9, 0x35, 0xe3,
+    0x0c, 0xe4, 0x2f, 0x05, 0x7b, 0x37, 0xa5, 0x40, 0x9c, 0x3b, 0x94, 0xf7,
+    0xad, 0xa0, 0xee, 0x3a, 0xa8, 0xfb, 0x1f, 0x11, 0x1f, 0xd8, 0x9a, 0x80,
+    0x42, 0x3d, 0x7f, 0xa4, 0xb8, 0x9a, 0xaa, 0xea, 0x72, 0xc1, 0xe3, 0xed,
+    0x06, 0x60, 0x92, 0x37, 0xf9, 0xba, 0xfb, 0x9e, 0xed, 0x05, 0xa6, 0xd4,
+    0x72, 0x68, 0x4f, 0x63, 0xfe, 0xd6, 0x10, 0x0d, 0x4f, 0x0a, 0x93, 0xc6,
+    0xb9, 0xd7, 0xaf, 0xfd, 0xd9, 0x57, 0x7d, 0xcb, 0x75, 0xe8, 0x93, 0x2b,
+    0xae, 0x4f, 0xea, 0xd7, 0x30, 0x0b, 0x58, 0x44, 0x82, 0x0f, 0x84, 0x5d,
+    0x62, 0x11, 0x78, 0xea, 0x5f, 0xc5, 0x02, 0x81, 0x81, 0x00, 0x82, 0x0c,
+    0xc1, 0xe6, 0x0b, 0x72, 0xf1, 0x48, 0x5f, 0xac, 0xbd, 0x98, 0xe5, 0x7d,
+    0x09, 0xbd, 0x15, 0x95, 0x47, 0x09, 0xa1, 0x6c, 0x03, 0x91, 0xbf, 0x05,
+    0x70, 0xc1, 0x3e, 0x52, 0x64, 0x99, 0x0e, 0xa7, 0x98, 0x70, 0xfb, 0xf6,
+    0xeb, 0x9e, 0x25, 0x9d, 0x8e, 0x88, 0x30, 0xf2, 0xf0, 0x22, 0x6c, 0xd0,
+    0xcc, 0x51, 0x8f, 0x5c, 0x70, 0xc7, 0x37, 0xc4, 0x69, 0xab, 0x1d, 0xfc,
+    0xed, 0x3a, 0x03, 0xbb, 0xa2, 0xad, 0xb6, 0xea, 0x89, 0x6b, 0x67, 0x4b,
+    0x96, 0xaa, 0xd9, 0xcc, 0xc8, 0x4b, 0xfa, 0x18, 0x21, 0x08, 0xb2, 0xa3,
+    0xb9, 0x3e, 0x61, 0x99, 0xdc, 0x5a, 0x97, 0x9c, 0x73, 0x6a, 0xb9, 0xf9,
+    0x68, 0x03, 0x24, 0x5f, 0x55, 0x77, 0x9c, 0xb4, 0xbe, 0x7a, 0x78, 0x53,
+    0x68, 0x48, 0x69, 0x53, 0xc8, 0xb1, 0xf5, 0xbf, 0x98, 0x2d, 0x11, 0x1e,
+    0x98, 0xa8, 0x36, 0x50, 0xa0, 0xb1, 0x02, 0x81, 0x81, 0x00, 0x90, 0x88,
+    0x30, 0x71, 0xc7, 0xfe, 0x9b, 0x6d, 0x95, 0x37, 0x6d, 0x79, 0xfc, 0x85,
+    0xe7, 0x44, 0x78, 0xbc, 0x79, 0x6e, 0x47, 0x86, 0xc9, 0xf3, 0xdd, 0xc6,
+    0xec, 0xa9, 0x94, 0x9f, 0x40, 0xeb, 0x87, 0xd0, 0xdb, 0xee, 0xcd, 0x1b,
+    0x87, 0x23, 0xff, 0x76, 0xd4, 0x37, 0x8a, 0xcd, 0xb9, 0x6e, 0xd1, 0x98,
+    0xf6, 0x97, 0x8d, 0xe3, 0x81, 0x6d, 0xc3, 0x4e, 0xd1, 0xa0, 0xc4, 0x9f,
+    0xbd, 0x34, 0xe5, 0xe8, 0x53, 0x4f, 0xca, 0x10, 0xb5, 0xed, 0xe7, 0x16,
+    0x09, 0x54, 0xde, 0x60, 0xa7, 0xd1, 0x16, 0x6e, 0x2e, 0xb7, 0xbe, 0x7a,
+    0xd5, 0x9b, 0x26, 0xef, 0xe4, 0x0e, 0x77, 0xfa, 0xa9, 0xdd, 0xdc, 0xb9,
+    0x88, 0x19, 0x23, 0x70, 0xc7, 0xe1, 0x60, 0xaf, 0x8c, 0x73, 0x04, 0xf7,
+    0x71, 0x17, 0x81, 0x36, 0x75, 0xbb, 0x97, 0xd7, 0x75, 0xb6, 0x8e, 0xbc,
+    0xac, 0x9c, 0x6a, 0x9b, 0x24, 0x89, 0x02, 0x81, 0x80, 0x5a, 0x2b, 0xc7,
+    0x6b, 0x8c, 0x65, 0xdb, 0x04, 0x73, 0xab, 0x25, 0xe1, 0x5b, 0xbc, 0x3c,
+    0xcf, 0x5a, 0x3c, 0x04, 0xae, 0x97, 0x2e, 0xfd, 0xa4, 0x97, 0x1f, 0x05,
+    0x17, 0x27, 0xac, 0x7c, 0x30, 0x85, 0xb4, 0x82, 0x3f, 0x5b, 0xb7, 0x94,
+    0x3b, 0x7f, 0x6c, 0x0c, 0xc7, 0x16, 0xc6, 0xa0, 0xbd, 0x80, 0xb0, 0x81,
+    0xde, 0xa0, 0x23, 0xa6, 0xf6, 0x75, 0x33, 0x51, 0x35, 0xa2, 0x75, 0x55,
+    0x70, 0x4d, 0x42, 0xbb, 0xcf, 0x54, 0xe4, 0xdb, 0x2d, 0x88, 0xa0, 0x7a,
+    0xf2, 0x17, 0xa7, 0xdd, 0x13, 0x44, 0x9f, 0x5f, 0x6b, 0x2c, 0x42, 0x42,
+    0x8b, 0x13, 0x4d, 0xf9, 0x5b, 0xf8, 0x33, 0x42, 0xd9, 0x9e, 0x50, 0x1c,
+    0x7c, 0xbc, 0xfa, 0x62, 0x85, 0x0b, 0xcf, 0x99, 0xda, 0x9e, 0x04, 0x90,
+    0xb2, 0xc6, 0xb2, 0x0a, 0x2a, 0x7c, 0x6d, 0x6a, 0x40, 0xfc, 0xf5, 0x50,
+    0x98, 0x46, 0x89, 0x82, 0x40,
+};
+
+struct GlobalState {
+  GlobalState()
+      : ctx(SSL_CTX_new(SSLv23_method())) {
+    const uint8_t *bufp = kRSAPrivateKeyDER;
+    RSA *privkey = d2i_RSAPrivateKey(NULL, &bufp, sizeof(kRSAPrivateKeyDER));
+    assert(privkey != nullptr);
+
+    EVP_PKEY *pkey = EVP_PKEY_new();
+    EVP_PKEY_assign_RSA(pkey, privkey);
+
+    SSL_CTX_use_PrivateKey(ctx, pkey);
+    EVP_PKEY_free(pkey);
+
+    bufp = kCertificateDER;
+    X509 *cert = d2i_X509(NULL, &bufp, sizeof(kCertificateDER));
+    assert(cert != nullptr);
+
+    SSL_CTX_use_certificate(ctx, cert);
+    X509_free(cert);
+  }
+
+  ~GlobalState() {
+    SSL_CTX_free(ctx);
+  }
+
+  SSL_CTX *const ctx;
+};
+
+static GlobalState g_state;
+
+extern "C" int LLVMFuzzerTestOneInput(uint8_t *buf, size_t len) {
+  // This only fuzzes the initial flow from the client so far.
+  SSL *server = SSL_new(g_state.ctx);
+  BIO *in = BIO_new(BIO_s_mem());
+  BIO *out = BIO_new(BIO_s_mem());
+  SSL_set_bio(server, in, out);
+  SSL_set_accept_state(server);
+
+  BIO_write(in, buf, len);
+  SSL_do_handshake(server);
+  SSL_free(server);
+
+  return 0;
+}
diff --git a/fuzz/server_corpus/00626f399ebf3c07a092a26919c25fbf2373659b b/fuzz/server_corpus/00626f399ebf3c07a092a26919c25fbf2373659b
new file mode 100644
index 0000000..672bff4
--- /dev/null
+++ b/fuzz/server_corpus/00626f399ebf3c07a092a26919c25fbf2373659b
Binary files differ
diff --git a/fuzz/server_corpus/0319960c7e36d77b16ed5e8ca21c9661020837a2 b/fuzz/server_corpus/0319960c7e36d77b16ed5e8ca21c9661020837a2
new file mode 100644
index 0000000..b15cd43
--- /dev/null
+++ b/fuzz/server_corpus/0319960c7e36d77b16ed5e8ca21c9661020837a2
Binary files differ
diff --git a/fuzz/server_corpus/0353776fd79d387026cfe5366f46f5a7417e58e2 b/fuzz/server_corpus/0353776fd79d387026cfe5366f46f5a7417e58e2
new file mode 100644
index 0000000..7461015
--- /dev/null
+++ b/fuzz/server_corpus/0353776fd79d387026cfe5366f46f5a7417e58e2
@@ -0,0 +1 @@
+€);՛ãºR#)_
\ No newline at end of file
diff --git a/fuzz/server_corpus/03ed4f1ff81afbad5eedbb5a80b56b23298ec078 b/fuzz/server_corpus/03ed4f1ff81afbad5eedbb5a80b56b23298ec078
new file mode 100644
index 0000000..621f52f
--- /dev/null
+++ b/fuzz/server_corpus/03ed4f1ff81afbad5eedbb5a80b56b23298ec078
@@ -0,0 +1 @@
+€)(:*Î*);›ã)ã×(*¹;
\ No newline at end of file
diff --git a/fuzz/server_corpus/10e8fb6fd26d9721bb6131d91281755ebf94ef21 b/fuzz/server_corpus/10e8fb6fd26d9721bb6131d91281755ebf94ef21
new file mode 100644
index 0000000..c9bf914
--- /dev/null
+++ b/fuzz/server_corpus/10e8fb6fd26d9721bb6131d91281755ebf94ef21
Binary files differ
diff --git a/fuzz/server_corpus/113194bb4b550a842ba2a3cbe86308a302218ac7 b/fuzz/server_corpus/113194bb4b550a842ba2a3cbe86308a302218ac7
new file mode 100644
index 0000000..ae08f5c
--- /dev/null
+++ b/fuzz/server_corpus/113194bb4b550a842ba2a3cbe86308a302218ac7
Binary files differ
diff --git a/fuzz/server_corpus/12a98036ff99402f5be27c4e64456059b440c248 b/fuzz/server_corpus/12a98036ff99402f5be27c4e64456059b440c248
new file mode 100644
index 0000000..31a03e9
--- /dev/null
+++ b/fuzz/server_corpus/12a98036ff99402f5be27c4e64456059b440c248
Binary files differ
diff --git a/fuzz/server_corpus/152e065473369bd8a6a060d8641db52699a0dec4 b/fuzz/server_corpus/152e065473369bd8a6a060d8641db52699a0dec4
new file mode 100644
index 0000000..0882b56
--- /dev/null
+++ b/fuzz/server_corpus/152e065473369bd8a6a060d8641db52699a0dec4
Binary files differ
diff --git a/fuzz/server_corpus/155dbc7d80f78358598985efc616ee1c9a95b732 b/fuzz/server_corpus/155dbc7d80f78358598985efc616ee1c9a95b732
new file mode 100644
index 0000000..4a68b10
--- /dev/null
+++ b/fuzz/server_corpus/155dbc7d80f78358598985efc616ee1c9a95b732
Binary files differ
diff --git a/fuzz/server_corpus/16baa1a9d032ff13f4c97dbde84fd9771756c20e b/fuzz/server_corpus/16baa1a9d032ff13f4c97dbde84fd9771756c20e
new file mode 100644
index 0000000..6ad6da0
--- /dev/null
+++ b/fuzz/server_corpus/16baa1a9d032ff13f4c97dbde84fd9771756c20e
Binary files differ
diff --git a/fuzz/server_corpus/175f14549732cab13eba46eec9154db1d87527e6 b/fuzz/server_corpus/175f14549732cab13eba46eec9154db1d87527e6
new file mode 100644
index 0000000..3dc956c
--- /dev/null
+++ b/fuzz/server_corpus/175f14549732cab13eba46eec9154db1d87527e6
Binary files differ
diff --git a/fuzz/server_corpus/1a612428b158c227d488c9e5ccab6330e38b0fad b/fuzz/server_corpus/1a612428b158c227d488c9e5ccab6330e38b0fad
new file mode 100644
index 0000000..4d9d091
--- /dev/null
+++ b/fuzz/server_corpus/1a612428b158c227d488c9e5ccab6330e38b0fad
Binary files differ
diff --git a/fuzz/server_corpus/1d676a51656b8d4ef24a461e29c9fed2807f7e50 b/fuzz/server_corpus/1d676a51656b8d4ef24a461e29c9fed2807f7e50
new file mode 100644
index 0000000..d70b6af
--- /dev/null
+++ b/fuzz/server_corpus/1d676a51656b8d4ef24a461e29c9fed2807f7e50
Binary files differ
diff --git a/fuzz/server_corpus/1e32c45c217af52da9eedd1ee9f5abd81135dd73 b/fuzz/server_corpus/1e32c45c217af52da9eedd1ee9f5abd81135dd73
new file mode 100644
index 0000000..efb3557
--- /dev/null
+++ b/fuzz/server_corpus/1e32c45c217af52da9eedd1ee9f5abd81135dd73
Binary files differ
diff --git a/fuzz/server_corpus/27a2e7193d0bc69fe0d7a65f818dd2366014a20e b/fuzz/server_corpus/27a2e7193d0bc69fe0d7a65f818dd2366014a20e
new file mode 100644
index 0000000..ffb2e4d
--- /dev/null
+++ b/fuzz/server_corpus/27a2e7193d0bc69fe0d7a65f818dd2366014a20e
Binary files differ
diff --git a/fuzz/server_corpus/298ee587ceb3e7685ab165fee56780031113c766 b/fuzz/server_corpus/298ee587ceb3e7685ab165fee56780031113c766
new file mode 100644
index 0000000..551f542
--- /dev/null
+++ b/fuzz/server_corpus/298ee587ceb3e7685ab165fee56780031113c766
Binary files differ
diff --git a/fuzz/server_corpus/2e830d13eff02a0da6b6ae20ca271cb8cdbdb64a b/fuzz/server_corpus/2e830d13eff02a0da6b6ae20ca271cb8cdbdb64a
new file mode 100644
index 0000000..329c0c9
--- /dev/null
+++ b/fuzz/server_corpus/2e830d13eff02a0da6b6ae20ca271cb8cdbdb64a
Binary files differ
diff --git a/fuzz/server_corpus/319a6b4d218465966a29b5152fe9eb83003a41fe b/fuzz/server_corpus/319a6b4d218465966a29b5152fe9eb83003a41fe
new file mode 100644
index 0000000..9eff9a6
--- /dev/null
+++ b/fuzz/server_corpus/319a6b4d218465966a29b5152fe9eb83003a41fe
Binary files differ
diff --git a/fuzz/server_corpus/31f70e0d937a1942fcf3c6d91c16c55a2575ef8a b/fuzz/server_corpus/31f70e0d937a1942fcf3c6d91c16c55a2575ef8a
new file mode 100644
index 0000000..485cff2
--- /dev/null
+++ b/fuzz/server_corpus/31f70e0d937a1942fcf3c6d91c16c55a2575ef8a
Binary files differ
diff --git a/fuzz/server_corpus/31fce22e8c242afcd1c122dd1623c77e0b1b4a0d b/fuzz/server_corpus/31fce22e8c242afcd1c122dd1623c77e0b1b4a0d
new file mode 100644
index 0000000..5b20fb6
--- /dev/null
+++ b/fuzz/server_corpus/31fce22e8c242afcd1c122dd1623c77e0b1b4a0d
Binary files differ
diff --git a/fuzz/server_corpus/37dbd1d658bb90da84a14aeb9f24db0200c20c4d b/fuzz/server_corpus/37dbd1d658bb90da84a14aeb9f24db0200c20c4d
new file mode 100644
index 0000000..49a8163
--- /dev/null
+++ b/fuzz/server_corpus/37dbd1d658bb90da84a14aeb9f24db0200c20c4d
Binary files differ
diff --git a/fuzz/server_corpus/3e62dce3a399b97744c41563672fb3b67a3981fc b/fuzz/server_corpus/3e62dce3a399b97744c41563672fb3b67a3981fc
new file mode 100644
index 0000000..8f3cd1b
--- /dev/null
+++ b/fuzz/server_corpus/3e62dce3a399b97744c41563672fb3b67a3981fc
Binary files differ
diff --git a/fuzz/server_corpus/422fd028720e83722a7969f5d07d1265d19dad92 b/fuzz/server_corpus/422fd028720e83722a7969f5d07d1265d19dad92
new file mode 100644
index 0000000..06ae6a5
--- /dev/null
+++ b/fuzz/server_corpus/422fd028720e83722a7969f5d07d1265d19dad92
Binary files differ
diff --git a/fuzz/server_corpus/45c8ed787ce862a29bbef404b84fd672d4e44c02 b/fuzz/server_corpus/45c8ed787ce862a29bbef404b84fd672d4e44c02
new file mode 100644
index 0000000..8b3f1a1
--- /dev/null
+++ b/fuzz/server_corpus/45c8ed787ce862a29bbef404b84fd672d4e44c02
Binary files differ
diff --git a/fuzz/server_corpus/463b9a9c1edafa2d42b1b0dbd9390186002eb775 b/fuzz/server_corpus/463b9a9c1edafa2d42b1b0dbd9390186002eb775
new file mode 100644
index 0000000..213c0be
--- /dev/null
+++ b/fuzz/server_corpus/463b9a9c1edafa2d42b1b0dbd9390186002eb775
Binary files differ
diff --git a/fuzz/server_corpus/4764b65b699e01e120f42657ea1196f632ac653a b/fuzz/server_corpus/4764b65b699e01e120f42657ea1196f632ac653a
new file mode 100644
index 0000000..ad8070c
--- /dev/null
+++ b/fuzz/server_corpus/4764b65b699e01e120f42657ea1196f632ac653a
Binary files differ
diff --git a/fuzz/server_corpus/48b6e6c2a8d277c48f6272981d3ac13458bda2fc b/fuzz/server_corpus/48b6e6c2a8d277c48f6272981d3ac13458bda2fc
new file mode 100644
index 0000000..96cd018
--- /dev/null
+++ b/fuzz/server_corpus/48b6e6c2a8d277c48f6272981d3ac13458bda2fc
Binary files differ
diff --git a/fuzz/server_corpus/4b649f3c60bec1b30ef7f8597137f3543ec585e3 b/fuzz/server_corpus/4b649f3c60bec1b30ef7f8597137f3543ec585e3
new file mode 100644
index 0000000..bbf57cd
--- /dev/null
+++ b/fuzz/server_corpus/4b649f3c60bec1b30ef7f8597137f3543ec585e3
Binary files differ
diff --git a/fuzz/server_corpus/4b88614946037f4cb5d6b399b6e70b539c4828f0 b/fuzz/server_corpus/4b88614946037f4cb5d6b399b6e70b539c4828f0
new file mode 100644
index 0000000..4f88ee4
--- /dev/null
+++ b/fuzz/server_corpus/4b88614946037f4cb5d6b399b6e70b539c4828f0
Binary files differ
diff --git a/fuzz/server_corpus/4b8a432fa4bf47f45d9c2ed257f0a958fcc94f9c b/fuzz/server_corpus/4b8a432fa4bf47f45d9c2ed257f0a958fcc94f9c
new file mode 100644
index 0000000..c510272
--- /dev/null
+++ b/fuzz/server_corpus/4b8a432fa4bf47f45d9c2ed257f0a958fcc94f9c
Binary files differ
diff --git a/fuzz/server_corpus/4d0beb8342107afedf7ad91e13c3b8d2cf558ecf b/fuzz/server_corpus/4d0beb8342107afedf7ad91e13c3b8d2cf558ecf
new file mode 100644
index 0000000..ea0eea7
--- /dev/null
+++ b/fuzz/server_corpus/4d0beb8342107afedf7ad91e13c3b8d2cf558ecf
Binary files differ
diff --git a/fuzz/server_corpus/50a76b85475b46e113ddbe4d4a44172208c17fb3 b/fuzz/server_corpus/50a76b85475b46e113ddbe4d4a44172208c17fb3
new file mode 100644
index 0000000..23e09f0
--- /dev/null
+++ b/fuzz/server_corpus/50a76b85475b46e113ddbe4d4a44172208c17fb3
Binary files differ
diff --git a/fuzz/server_corpus/522b17e9f535af7fc5b599d857207431ee29b65f b/fuzz/server_corpus/522b17e9f535af7fc5b599d857207431ee29b65f
new file mode 100644
index 0000000..7e7246f
--- /dev/null
+++ b/fuzz/server_corpus/522b17e9f535af7fc5b599d857207431ee29b65f
Binary files differ
diff --git a/fuzz/server_corpus/53f52c2e3ddcfb9734487f3efdb568de0a689cc4 b/fuzz/server_corpus/53f52c2e3ddcfb9734487f3efdb568de0a689cc4
new file mode 100644
index 0000000..63e1516
--- /dev/null
+++ b/fuzz/server_corpus/53f52c2e3ddcfb9734487f3efdb568de0a689cc4
Binary files differ
diff --git a/fuzz/server_corpus/544c898ba75d916822d203f69b087734eac3ac54 b/fuzz/server_corpus/544c898ba75d916822d203f69b087734eac3ac54
new file mode 100644
index 0000000..ce13589
--- /dev/null
+++ b/fuzz/server_corpus/544c898ba75d916822d203f69b087734eac3ac54
Binary files differ
diff --git a/fuzz/server_corpus/553ea433d44d7866c9c76bba5b0b9ae45fd4f3b1 b/fuzz/server_corpus/553ea433d44d7866c9c76bba5b0b9ae45fd4f3b1
new file mode 100644
index 0000000..d9e0707
--- /dev/null
+++ b/fuzz/server_corpus/553ea433d44d7866c9c76bba5b0b9ae45fd4f3b1
Binary files differ
diff --git a/fuzz/server_corpus/57662bdb72f6c06ac58cdd7d97a165b101a3b4a6 b/fuzz/server_corpus/57662bdb72f6c06ac58cdd7d97a165b101a3b4a6
new file mode 100644
index 0000000..a125419
--- /dev/null
+++ b/fuzz/server_corpus/57662bdb72f6c06ac58cdd7d97a165b101a3b4a6
Binary files differ
diff --git a/fuzz/server_corpus/57ba9684364da841ee30c106d56032967bf5a625 b/fuzz/server_corpus/57ba9684364da841ee30c106d56032967bf5a625
new file mode 100644
index 0000000..6ac78d8
--- /dev/null
+++ b/fuzz/server_corpus/57ba9684364da841ee30c106d56032967bf5a625
Binary files differ
diff --git a/fuzz/server_corpus/5bef1a165880066972ce67fc28c01f46bc306e6b b/fuzz/server_corpus/5bef1a165880066972ce67fc28c01f46bc306e6b
new file mode 100644
index 0000000..ebc94a5
--- /dev/null
+++ b/fuzz/server_corpus/5bef1a165880066972ce67fc28c01f46bc306e6b
@@ -0,0 +1 @@
+€)(:q*
\ No newline at end of file
diff --git a/fuzz/server_corpus/600beb23de824f30e772b89f1c8c93ce42f00a46 b/fuzz/server_corpus/600beb23de824f30e772b89f1c8c93ce42f00a46
new file mode 100644
index 0000000..1468ee5
--- /dev/null
+++ b/fuzz/server_corpus/600beb23de824f30e772b89f1c8c93ce42f00a46
Binary files differ
diff --git a/fuzz/server_corpus/61b6294cb28f0a49350591fc8cc61f586506c87d b/fuzz/server_corpus/61b6294cb28f0a49350591fc8cc61f586506c87d
new file mode 100644
index 0000000..cbd3892
--- /dev/null
+++ b/fuzz/server_corpus/61b6294cb28f0a49350591fc8cc61f586506c87d
Binary files differ
diff --git a/fuzz/server_corpus/6297728e4a0eafcbd2cbda655014c10578b8a035 b/fuzz/server_corpus/6297728e4a0eafcbd2cbda655014c10578b8a035
new file mode 100644
index 0000000..6286ea3
--- /dev/null
+++ b/fuzz/server_corpus/6297728e4a0eafcbd2cbda655014c10578b8a035
Binary files differ
diff --git a/fuzz/server_corpus/630800205061e44da8f2a98f73192b6c02ac2cda b/fuzz/server_corpus/630800205061e44da8f2a98f73192b6c02ac2cda
new file mode 100644
index 0000000..6279ce2
--- /dev/null
+++ b/fuzz/server_corpus/630800205061e44da8f2a98f73192b6c02ac2cda
Binary files differ
diff --git a/fuzz/server_corpus/65ee094875fb0e661e0a83872c5ef2a2b96456d3 b/fuzz/server_corpus/65ee094875fb0e661e0a83872c5ef2a2b96456d3
new file mode 100644
index 0000000..f109c69
--- /dev/null
+++ b/fuzz/server_corpus/65ee094875fb0e661e0a83872c5ef2a2b96456d3
Binary files differ
diff --git a/fuzz/server_corpus/67c8257c44d360e45e68f3737f83f8ac7f22a290 b/fuzz/server_corpus/67c8257c44d360e45e68f3737f83f8ac7f22a290
new file mode 100644
index 0000000..9151f45
--- /dev/null
+++ b/fuzz/server_corpus/67c8257c44d360e45e68f3737f83f8ac7f22a290
Binary files differ
diff --git a/fuzz/server_corpus/6ad9e29108e9b826b4ae5ef1b6748dcaee3647bb b/fuzz/server_corpus/6ad9e29108e9b826b4ae5ef1b6748dcaee3647bb
new file mode 100644
index 0000000..6401242
--- /dev/null
+++ b/fuzz/server_corpus/6ad9e29108e9b826b4ae5ef1b6748dcaee3647bb
Binary files differ
diff --git a/fuzz/server_corpus/6d52942721bf6fe08707bc9704f9b5a217604040 b/fuzz/server_corpus/6d52942721bf6fe08707bc9704f9b5a217604040
new file mode 100644
index 0000000..a280f78
--- /dev/null
+++ b/fuzz/server_corpus/6d52942721bf6fe08707bc9704f9b5a217604040
Binary files differ
diff --git a/fuzz/server_corpus/6de0d9b261c2372c7bc5752e95aa09c174ea6236 b/fuzz/server_corpus/6de0d9b261c2372c7bc5752e95aa09c174ea6236
new file mode 100644
index 0000000..d6755b0
--- /dev/null
+++ b/fuzz/server_corpus/6de0d9b261c2372c7bc5752e95aa09c174ea6236
Binary files differ
diff --git a/fuzz/server_corpus/6e6afb6395fd0d20c76073c13a3a21aa4a09872b b/fuzz/server_corpus/6e6afb6395fd0d20c76073c13a3a21aa4a09872b
new file mode 100644
index 0000000..f7ba8d8
--- /dev/null
+++ b/fuzz/server_corpus/6e6afb6395fd0d20c76073c13a3a21aa4a09872b
Binary files differ
diff --git a/fuzz/server_corpus/6f170e93d9ef844ff73d7a3f218295bf36f596cf b/fuzz/server_corpus/6f170e93d9ef844ff73d7a3f218295bf36f596cf
new file mode 100644
index 0000000..bd3faf0
--- /dev/null
+++ b/fuzz/server_corpus/6f170e93d9ef844ff73d7a3f218295bf36f596cf
Binary files differ
diff --git a/fuzz/server_corpus/6fd39c966479b90d2c88765b6d3adbe2fdb9d354 b/fuzz/server_corpus/6fd39c966479b90d2c88765b6d3adbe2fdb9d354
new file mode 100644
index 0000000..1632cdd
--- /dev/null
+++ b/fuzz/server_corpus/6fd39c966479b90d2c88765b6d3adbe2fdb9d354
Binary files differ
diff --git a/fuzz/server_corpus/706f54bf24538976566b61e852b1c4d9ae1119f4 b/fuzz/server_corpus/706f54bf24538976566b61e852b1c4d9ae1119f4
new file mode 100644
index 0000000..c0ad820
--- /dev/null
+++ b/fuzz/server_corpus/706f54bf24538976566b61e852b1c4d9ae1119f4
Binary files differ
diff --git a/fuzz/server_corpus/70c37f8fac66c1b1246354d4c7236ee2dc283e5c b/fuzz/server_corpus/70c37f8fac66c1b1246354d4c7236ee2dc283e5c
new file mode 100644
index 0000000..030998e
--- /dev/null
+++ b/fuzz/server_corpus/70c37f8fac66c1b1246354d4c7236ee2dc283e5c
Binary files differ
diff --git a/fuzz/server_corpus/7156c271eb4a8acce258dfb77255bdfb1f96e0b6 b/fuzz/server_corpus/7156c271eb4a8acce258dfb77255bdfb1f96e0b6
new file mode 100644
index 0000000..54de72c
--- /dev/null
+++ b/fuzz/server_corpus/7156c271eb4a8acce258dfb77255bdfb1f96e0b6
Binary files differ
diff --git a/fuzz/server_corpus/76cda8b0fd71861b7bd6360429f58f60a9d2da31 b/fuzz/server_corpus/76cda8b0fd71861b7bd6360429f58f60a9d2da31
new file mode 100644
index 0000000..13870ef
--- /dev/null
+++ b/fuzz/server_corpus/76cda8b0fd71861b7bd6360429f58f60a9d2da31
Binary files differ
diff --git a/fuzz/server_corpus/78866cc7c4e60906cf1d7de6bc6dde5dfc32b829 b/fuzz/server_corpus/78866cc7c4e60906cf1d7de6bc6dde5dfc32b829
new file mode 100644
index 0000000..aae562b
--- /dev/null
+++ b/fuzz/server_corpus/78866cc7c4e60906cf1d7de6bc6dde5dfc32b829
Binary files differ
diff --git a/fuzz/server_corpus/7ab6f7c59ef1603d1a868536fb5c6d0d5bf85bbc b/fuzz/server_corpus/7ab6f7c59ef1603d1a868536fb5c6d0d5bf85bbc
new file mode 100644
index 0000000..39970a9
--- /dev/null
+++ b/fuzz/server_corpus/7ab6f7c59ef1603d1a868536fb5c6d0d5bf85bbc
Binary files differ
diff --git a/fuzz/server_corpus/7f2f7edfaa6968dfaf619fecd3b361247b52e157 b/fuzz/server_corpus/7f2f7edfaa6968dfaf619fecd3b361247b52e157
new file mode 100644
index 0000000..9038012
--- /dev/null
+++ b/fuzz/server_corpus/7f2f7edfaa6968dfaf619fecd3b361247b52e157
Binary files differ
diff --git a/fuzz/server_corpus/7f762ef581bf5b21dc2b9e5d0a6f01556d02827d b/fuzz/server_corpus/7f762ef581bf5b21dc2b9e5d0a6f01556d02827d
new file mode 100644
index 0000000..4753456
--- /dev/null
+++ b/fuzz/server_corpus/7f762ef581bf5b21dc2b9e5d0a6f01556d02827d
@@ -0,0 +1 @@
+€)(:*
\ No newline at end of file
diff --git a/fuzz/server_corpus/7fd784bcc4b1e7cca034bd5e90d013cdd5ed37fc b/fuzz/server_corpus/7fd784bcc4b1e7cca034bd5e90d013cdd5ed37fc
new file mode 100644
index 0000000..0afcf05
--- /dev/null
+++ b/fuzz/server_corpus/7fd784bcc4b1e7cca034bd5e90d013cdd5ed37fc
Binary files differ
diff --git a/fuzz/server_corpus/8aa81c0c002cac098bd1edd10c052fb57e69679c b/fuzz/server_corpus/8aa81c0c002cac098bd1edd10c052fb57e69679c
new file mode 100644
index 0000000..a21731c
--- /dev/null
+++ b/fuzz/server_corpus/8aa81c0c002cac098bd1edd10c052fb57e69679c
@@ -0,0 +1 @@
+ã)ã);›×(*¹;;ð:;Û×(*¹;!);ð:!
\ No newline at end of file
diff --git a/fuzz/server_corpus/8b4baceeb58bb4519ec45a72dacb301b2e4ca6dd b/fuzz/server_corpus/8b4baceeb58bb4519ec45a72dacb301b2e4ca6dd
new file mode 100644
index 0000000..f7cf852
--- /dev/null
+++ b/fuzz/server_corpus/8b4baceeb58bb4519ec45a72dacb301b2e4ca6dd
Binary files differ
diff --git a/fuzz/server_corpus/9db46cc80dae06880031c8279e30d2aef9e7079f b/fuzz/server_corpus/9db46cc80dae06880031c8279e30d2aef9e7079f
new file mode 100644
index 0000000..b323cae
--- /dev/null
+++ b/fuzz/server_corpus/9db46cc80dae06880031c8279e30d2aef9e7079f
Binary files differ
diff --git a/fuzz/server_corpus/9e745ecc6939d4a76f37c3de8d2e3d68f692438c b/fuzz/server_corpus/9e745ecc6939d4a76f37c3de8d2e3d68f692438c
new file mode 100644
index 0000000..526f538
--- /dev/null
+++ b/fuzz/server_corpus/9e745ecc6939d4a76f37c3de8d2e3d68f692438c
Binary files differ
diff --git a/fuzz/server_corpus/9fee65e41087256c7dc5884b17620015b3fb08b4 b/fuzz/server_corpus/9fee65e41087256c7dc5884b17620015b3fb08b4
new file mode 100644
index 0000000..bf96963
--- /dev/null
+++ b/fuzz/server_corpus/9fee65e41087256c7dc5884b17620015b3fb08b4
Binary files differ
diff --git a/fuzz/server_corpus/a2119075a436f488b9caddcd0d2e78f08eb9a5ff b/fuzz/server_corpus/a2119075a436f488b9caddcd0d2e78f08eb9a5ff
new file mode 100644
index 0000000..9dac082
--- /dev/null
+++ b/fuzz/server_corpus/a2119075a436f488b9caddcd0d2e78f08eb9a5ff
Binary files differ
diff --git a/fuzz/server_corpus/a38a19f50fd1cda8c1fecbe27ac83324ca211b84 b/fuzz/server_corpus/a38a19f50fd1cda8c1fecbe27ac83324ca211b84
new file mode 100644
index 0000000..445b39a
--- /dev/null
+++ b/fuzz/server_corpus/a38a19f50fd1cda8c1fecbe27ac83324ca211b84
Binary files differ
diff --git a/fuzz/server_corpus/a5f0853c378fde7efb226984638045505658b9dd b/fuzz/server_corpus/a5f0853c378fde7efb226984638045505658b9dd
new file mode 100644
index 0000000..1dde1d5
--- /dev/null
+++ b/fuzz/server_corpus/a5f0853c378fde7efb226984638045505658b9dd
Binary files differ
diff --git a/fuzz/server_corpus/a8461484408a8b22ac775b72a0fae9362e1bbf46 b/fuzz/server_corpus/a8461484408a8b22ac775b72a0fae9362e1bbf46
new file mode 100644
index 0000000..c96f6b6
--- /dev/null
+++ b/fuzz/server_corpus/a8461484408a8b22ac775b72a0fae9362e1bbf46
@@ -0,0 +1 @@
+‡*;›ã
\ No newline at end of file
diff --git a/fuzz/server_corpus/b110009f633e2daf74b775a2f29521e49cb50021 b/fuzz/server_corpus/b110009f633e2daf74b775a2f29521e49cb50021
new file mode 100644
index 0000000..3fb45eb
--- /dev/null
+++ b/fuzz/server_corpus/b110009f633e2daf74b775a2f29521e49cb50021
Binary files differ
diff --git a/fuzz/server_corpus/b16626539339321ee54036ee741497bfe1cd8b60 b/fuzz/server_corpus/b16626539339321ee54036ee741497bfe1cd8b60
new file mode 100644
index 0000000..2d9aa25
--- /dev/null
+++ b/fuzz/server_corpus/b16626539339321ee54036ee741497bfe1cd8b60
Binary files differ
diff --git a/fuzz/server_corpus/b5e350594b8a451635004e4adbac220855746f95 b/fuzz/server_corpus/b5e350594b8a451635004e4adbac220855746f95
new file mode 100644
index 0000000..b86f57f
--- /dev/null
+++ b/fuzz/server_corpus/b5e350594b8a451635004e4adbac220855746f95
Binary files differ
diff --git a/fuzz/server_corpus/b7dcbba77174c4a08c659a593ec3f5ebe5094343 b/fuzz/server_corpus/b7dcbba77174c4a08c659a593ec3f5ebe5094343
new file mode 100644
index 0000000..81f58bf
--- /dev/null
+++ b/fuzz/server_corpus/b7dcbba77174c4a08c659a593ec3f5ebe5094343
Binary files differ
diff --git a/fuzz/server_corpus/ba9782e7bbe3e7556d18212a6cb075a5a312b78a b/fuzz/server_corpus/ba9782e7bbe3e7556d18212a6cb075a5a312b78a
new file mode 100644
index 0000000..89833fb
--- /dev/null
+++ b/fuzz/server_corpus/ba9782e7bbe3e7556d18212a6cb075a5a312b78a
Binary files differ
diff --git a/fuzz/server_corpus/bd2f13c2ea9251c8f5984e4801964d2c535e979a b/fuzz/server_corpus/bd2f13c2ea9251c8f5984e4801964d2c535e979a
new file mode 100644
index 0000000..fd6a5cf
--- /dev/null
+++ b/fuzz/server_corpus/bd2f13c2ea9251c8f5984e4801964d2c535e979a
@@ -0,0 +1 @@
+Î*);›ã)ã×(*¹;
\ No newline at end of file
diff --git a/fuzz/server_corpus/c03d4ba11f670a200b13e6cea0cdb7bc68d97f03 b/fuzz/server_corpus/c03d4ba11f670a200b13e6cea0cdb7bc68d97f03
new file mode 100644
index 0000000..3328e34
--- /dev/null
+++ b/fuzz/server_corpus/c03d4ba11f670a200b13e6cea0cdb7bc68d97f03
Binary files differ
diff --git a/fuzz/server_corpus/c3b18d830d2afda016d1c6d2cf8656707936d9aa b/fuzz/server_corpus/c3b18d830d2afda016d1c6d2cf8656707936d9aa
new file mode 100644
index 0000000..f4fbeed
--- /dev/null
+++ b/fuzz/server_corpus/c3b18d830d2afda016d1c6d2cf8656707936d9aa
@@ -0,0 +1 @@
+€	);՛ã)ã×(
\ No newline at end of file
diff --git a/fuzz/server_corpus/c4dd3c8cdd8d7c95603dd67f1cd873d5f9148b29 b/fuzz/server_corpus/c4dd3c8cdd8d7c95603dd67f1cd873d5f9148b29
new file mode 100644
index 0000000..c5fa784
--- /dev/null
+++ b/fuzz/server_corpus/c4dd3c8cdd8d7c95603dd67f1cd873d5f9148b29
@@ -0,0 +1 @@
+<
\ No newline at end of file
diff --git a/fuzz/server_corpus/c5066473dc223630844e607d6e35fd1c797ee3fa b/fuzz/server_corpus/c5066473dc223630844e607d6e35fd1c797ee3fa
new file mode 100644
index 0000000..9064620
--- /dev/null
+++ b/fuzz/server_corpus/c5066473dc223630844e607d6e35fd1c797ee3fa
Binary files differ
diff --git a/fuzz/server_corpus/c92f61d8be9fb24c5e64d39b60c6a381bcae5dc1 b/fuzz/server_corpus/c92f61d8be9fb24c5e64d39b60c6a381bcae5dc1
new file mode 100644
index 0000000..4734797
--- /dev/null
+++ b/fuzz/server_corpus/c92f61d8be9fb24c5e64d39b60c6a381bcae5dc1
Binary files differ
diff --git a/fuzz/server_corpus/cab79dd0612ba0a5213ad42c88619860f9e9485b b/fuzz/server_corpus/cab79dd0612ba0a5213ad42c88619860f9e9485b
new file mode 100644
index 0000000..2c064c4
--- /dev/null
+++ b/fuzz/server_corpus/cab79dd0612ba0a5213ad42c88619860f9e9485b
Binary files differ
diff --git a/fuzz/server_corpus/ccc5475c71ff21dbd2fd9dffe756ca081227a1d5 b/fuzz/server_corpus/ccc5475c71ff21dbd2fd9dffe756ca081227a1d5
new file mode 100644
index 0000000..af8a333
--- /dev/null
+++ b/fuzz/server_corpus/ccc5475c71ff21dbd2fd9dffe756ca081227a1d5
Binary files differ
diff --git a/fuzz/server_corpus/cef9da3480218f4a353a1d4b10d5095b2273be49 b/fuzz/server_corpus/cef9da3480218f4a353a1d4b10d5095b2273be49
new file mode 100644
index 0000000..68372e9
--- /dev/null
+++ b/fuzz/server_corpus/cef9da3480218f4a353a1d4b10d5095b2273be49
Binary files differ
diff --git a/fuzz/server_corpus/d149e6461f327b710dbaf2c1597b67939ab4d8e6 b/fuzz/server_corpus/d149e6461f327b710dbaf2c1597b67939ab4d8e6
new file mode 100644
index 0000000..5c688e5
--- /dev/null
+++ b/fuzz/server_corpus/d149e6461f327b710dbaf2c1597b67939ab4d8e6
Binary files differ
diff --git a/fuzz/server_corpus/d374b7d09d4196c596a2586a88256fcb1e9fcb2e b/fuzz/server_corpus/d374b7d09d4196c596a2586a88256fcb1e9fcb2e
new file mode 100644
index 0000000..53fdb72
--- /dev/null
+++ b/fuzz/server_corpus/d374b7d09d4196c596a2586a88256fcb1e9fcb2e
Binary files differ
diff --git a/fuzz/server_corpus/d503f0f105b563087338bf3517a269ba8b130f1c b/fuzz/server_corpus/d503f0f105b563087338bf3517a269ba8b130f1c
new file mode 100644
index 0000000..2f3c1ee
--- /dev/null
+++ b/fuzz/server_corpus/d503f0f105b563087338bf3517a269ba8b130f1c
Binary files differ
diff --git a/fuzz/server_corpus/d6a617adce65f5e26d0b216b04cf5faf774ae5df b/fuzz/server_corpus/d6a617adce65f5e26d0b216b04cf5faf774ae5df
new file mode 100644
index 0000000..d7045a4
--- /dev/null
+++ b/fuzz/server_corpus/d6a617adce65f5e26d0b216b04cf5faf774ae5df
Binary files differ
diff --git a/fuzz/server_corpus/d91fd09e2be8480f38d7e0a11ab9867e7d25eeb5 b/fuzz/server_corpus/d91fd09e2be8480f38d7e0a11ab9867e7d25eeb5
new file mode 100644
index 0000000..16ac7cc
--- /dev/null
+++ b/fuzz/server_corpus/d91fd09e2be8480f38d7e0a11ab9867e7d25eeb5
Binary files differ
diff --git a/fuzz/server_corpus/e28cb4459b7e5473200931b48e935805a8e6981b b/fuzz/server_corpus/e28cb4459b7e5473200931b48e935805a8e6981b
new file mode 100644
index 0000000..20830f6
--- /dev/null
+++ b/fuzz/server_corpus/e28cb4459b7e5473200931b48e935805a8e6981b
Binary files differ
diff --git a/fuzz/server_corpus/e5b19696b772ec3b5f68e10e5022a65377d1edf7 b/fuzz/server_corpus/e5b19696b772ec3b5f68e10e5022a65377d1edf7
new file mode 100644
index 0000000..dd88586
--- /dev/null
+++ b/fuzz/server_corpus/e5b19696b772ec3b5f68e10e5022a65377d1edf7
Binary files differ
diff --git a/fuzz/server_corpus/e7d86d43ca9db0835b3060862e06f653f9ec66ac b/fuzz/server_corpus/e7d86d43ca9db0835b3060862e06f653f9ec66ac
new file mode 100644
index 0000000..c6dfca7
--- /dev/null
+++ b/fuzz/server_corpus/e7d86d43ca9db0835b3060862e06f653f9ec66ac
Binary files differ
diff --git a/fuzz/server_corpus/e9162032d46632075da7b3306c7677a2ddf251f4 b/fuzz/server_corpus/e9162032d46632075da7b3306c7677a2ddf251f4
new file mode 100644
index 0000000..0f4efea
--- /dev/null
+++ b/fuzz/server_corpus/e9162032d46632075da7b3306c7677a2ddf251f4
Binary files differ
diff --git a/fuzz/server_corpus/ebe605930e73da69d25b156cff9dbd13f0861484 b/fuzz/server_corpus/ebe605930e73da69d25b156cff9dbd13f0861484
new file mode 100644
index 0000000..85e4c67
--- /dev/null
+++ b/fuzz/server_corpus/ebe605930e73da69d25b156cff9dbd13f0861484
@@ -0,0 +1 @@
+‡*);›ãÂ)ã×(D
\ No newline at end of file
diff --git a/fuzz/server_corpus/ed379815625c97a8821c47db565c7b4284e1fe1d b/fuzz/server_corpus/ed379815625c97a8821c47db565c7b4284e1fe1d
new file mode 100644
index 0000000..dd15182
--- /dev/null
+++ b/fuzz/server_corpus/ed379815625c97a8821c47db565c7b4284e1fe1d
Binary files differ
diff --git a/fuzz/server_corpus/ee6080e7aa0f9fd158ce42f1917f20332244d69c b/fuzz/server_corpus/ee6080e7aa0f9fd158ce42f1917f20332244d69c
new file mode 100644
index 0000000..f10e0ed
--- /dev/null
+++ b/fuzz/server_corpus/ee6080e7aa0f9fd158ce42f1917f20332244d69c
Binary files differ
diff --git a/fuzz/server_corpus/f007648fdfe7ba45b5b1ab9aae3f5c7b6c3b3273 b/fuzz/server_corpus/f007648fdfe7ba45b5b1ab9aae3f5c7b6c3b3273
new file mode 100644
index 0000000..3a12743
--- /dev/null
+++ b/fuzz/server_corpus/f007648fdfe7ba45b5b1ab9aae3f5c7b6c3b3273
Binary files differ
diff --git a/fuzz/server_corpus/f4425d6adf697df0f85be8758c0cd21d6a5df57a b/fuzz/server_corpus/f4425d6adf697df0f85be8758c0cd21d6a5df57a
new file mode 100644
index 0000000..b677caa
--- /dev/null
+++ b/fuzz/server_corpus/f4425d6adf697df0f85be8758c0cd21d6a5df57a
Binary files differ
diff --git a/fuzz/server_corpus/f5bd02993373de994d1ef28348706b7193a1509e b/fuzz/server_corpus/f5bd02993373de994d1ef28348706b7193a1509e
new file mode 100644
index 0000000..f35e14d
--- /dev/null
+++ b/fuzz/server_corpus/f5bd02993373de994d1ef28348706b7193a1509e
Binary files differ
diff --git a/fuzz/server_corpus/f8d60c0f5ffe3d0c9d0f5f269abeb2a93f5a993b b/fuzz/server_corpus/f8d60c0f5ffe3d0c9d0f5f269abeb2a93f5a993b
new file mode 100644
index 0000000..fa6dd91
--- /dev/null
+++ b/fuzz/server_corpus/f8d60c0f5ffe3d0c9d0f5f269abeb2a93f5a993b
Binary files differ
diff --git a/fuzz/server_corpus/f9ab9d3c9c03c45d6fde5b9e97178527a6bee22e b/fuzz/server_corpus/f9ab9d3c9c03c45d6fde5b9e97178527a6bee22e
new file mode 100644
index 0000000..95a2b27
--- /dev/null
+++ b/fuzz/server_corpus/f9ab9d3c9c03c45d6fde5b9e97178527a6bee22e
Binary files differ
diff --git a/fuzz/server_corpus/f9d559051861eb3b763b00700696e730beb170b1 b/fuzz/server_corpus/f9d559051861eb3b763b00700696e730beb170b1
new file mode 100644
index 0000000..72985f1
--- /dev/null
+++ b/fuzz/server_corpus/f9d559051861eb3b763b00700696e730beb170b1
Binary files differ
diff --git a/fuzz/server_corpus/fa3f57c938561581946d3707058b7f7b8686d259 b/fuzz/server_corpus/fa3f57c938561581946d3707058b7f7b8686d259
new file mode 100644
index 0000000..6429ca9
--- /dev/null
+++ b/fuzz/server_corpus/fa3f57c938561581946d3707058b7f7b8686d259
Binary files differ
diff --git a/fuzz/server_corpus/fcdae0d5d842421d559fcb9fbebd2d4c7dcf058c b/fuzz/server_corpus/fcdae0d5d842421d559fcb9fbebd2d4c7dcf058c
new file mode 100644
index 0000000..449f0ec
--- /dev/null
+++ b/fuzz/server_corpus/fcdae0d5d842421d559fcb9fbebd2d4c7dcf058c
Binary files differ
diff --git a/fuzz/server_corpus/fe0954ff6f348044e4c2a48dd81e6081cd9a88ef b/fuzz/server_corpus/fe0954ff6f348044e4c2a48dd81e6081cd9a88ef
new file mode 100644
index 0000000..6e1bb53
--- /dev/null
+++ b/fuzz/server_corpus/fe0954ff6f348044e4c2a48dd81e6081cd9a88ef
Binary files differ
diff --git a/fuzz/server_corpus/fe9517d5de1d6e4b9d9fa9cc67e809b697e61886 b/fuzz/server_corpus/fe9517d5de1d6e4b9d9fa9cc67e809b697e61886
new file mode 100644
index 0000000..349e1dd
--- /dev/null
+++ b/fuzz/server_corpus/fe9517d5de1d6e4b9d9fa9cc67e809b697e61886
Binary files differ