From 4075324e2b81c11254a28362942a477594be6b28 Mon Sep 17 00:00:00 2001
From: Ivan Nardi <12729895+IvanNardi@users.noreply.github.com>
Date: Thu, 16 Feb 2023 18:04:34 +0100
Subject: fuzz: extend fuzz coverage (#1888)

---
 .gitignore                                         |   4 ++
 fuzz/Makefile.am                                   |  46 +++++++++++++++++-
 .../00f699c111a4216c827906dddc7e53d2676c436c       |   1 +
 fuzz/corpus/fuzz_alg_bytestream/1                  |   1 +
 .../1c45e235b337db8b9e98bf2aa0ee02dde9384efa       |   1 +
 fuzz/corpus/fuzz_alg_bytestream/2                  |   1 +
 .../7f6a3512755b96414b7dfe5a21d2952a9cc70333       |   1 +
 .../b6589fc6ab0dc82cf12099d1c2d40ab994e8410c       |   1 +
 .../b7103ca278a75cad8f7d065acda0c2e80da0b7dc       |   1 +
 .../d2418811df5936bdb530e9c66aca38f4fc6da70c       |   1 +
 .../1b27923041cd9943fec04f9e795252294a140884       | Bin 615 -> 0 bytes
 .../1d0509e291e563f66715ddb3476689931516f533       | Bin 892 -> 0 bytes
 .../1de3ce546c3443fb0ba76988f36f1e42c022d603       | Bin 617 -> 0 bytes
 .../290a66605b81b38623979b32de5e552f40732dad       | Bin 684 -> 0 bytes
 .../3036bf1df14f0ad0c2b5614e51789f575af97dfb       | Bin 0 -> 690 bytes
 .../3bf49bd80bf3c787f49222fc50c41f48f85fa013       | Bin 0 -> 614 bytes
 .../3f22430a14710ba1d01f3547b60aded67efb9833       | Bin 0 -> 612 bytes
 .../44446f3b2a2200f31349b0ab61076e52bd8b0efd       | Bin 822 -> 0 bytes
 .../4714c051ed397aa1778184fc9ba513f77f17a511       | Bin 0 -> 706 bytes
 .../4e873d14a5b6764f075247f14e69a615a9c702d0       | Bin 0 -> 625 bytes
 .../579120e2b849fa886d3e00e85da1aadaf012a530       | Bin 620 -> 0 bytes
 .../5eaf59d9cedde7668db1179a10af6d41cfd25acb       | Bin 641 -> 0 bytes
 .../63cf7bf35278ec03c440970b1324abeca2526d14       | Bin 618 -> 0 bytes
 .../685a648c4186681d6e5a663fa7797d424dd8181e       | Bin 0 -> 612 bytes
 .../72d80bd288fdbf7f3cce29f635b3d235c0aeaa74       | Bin 617 -> 0 bytes
 .../76bc4759342543f5312d55d4d6e4133c6d298546       | Bin 615 -> 0 bytes
 .../77281fce6fb40a568b750e97b356153447f92021       | Bin 0 -> 643 bytes
 .../7b261995a0ed0a8b6ca544edfd56765963d113be       | Bin 0 -> 615 bytes
 .../7f4baf1ac218c942a8dc127ec07b1fc2ac670262       | Bin 621 -> 0 bytes
 .../828f8f1454722c92c14f9b25ad776eb5e676459c       | Bin 0 -> 611 bytes
 .../8bb38a19254c0d699e4d551a9ff65bc7a99e9a63       | Bin 0 -> 627 bytes
 .../8ce8bfe5ac7addf5e2c5da6794cf5934678dd06c       |   3 --
 .../907d8cd14928d4035594a91347a407857b868baf       | Bin 0 -> 615 bytes
 .../9220c147a2a2e08183c4fd85d62c7f15247969a6       | Bin 693 -> 0 bytes
 .../a79e2ad75b81e48a7e7153d9f1d2a60740e04360       | Bin 0 -> 616 bytes
 .../ae51624e0c6ecf1897244da20a17ef2052058380       | Bin 617 -> 0 bytes
 .../b00102178b488b3e299f9465f91093894f4649aa       | Bin 623 -> 0 bytes
 .../b160a30be750571b70090c2811c25d0c6ba460d4       | Bin 0 -> 769 bytes
 .../b46ee834ea6b1b6b860bbcc0bfad3de77ec72d32       | Bin 0 -> 611 bytes
 .../c3dac33fc878793d7aa0012b46fbd67584ecfe86       | Bin 639 -> 0 bytes
 .../cbf4471e64914dc5eb45a1de426f42723c703cec       | Bin 0 -> 613 bytes
 .../ccc5d3518a38a1c9c89139202aac46507a7b9f08       | Bin 0 -> 616 bytes
 .../d828ee9bc3dc0de65cb5e0ec6091c5e362fbae50       | Bin 775 -> 0 bytes
 .../e063dec4ae4ac11531c42b97ff54614517327eb1       | Bin 0 -> 616 bytes
 .../e499f9f18ca9edd456fd9efd129dbe0f77caa5a0       | Bin 692 -> 0 bytes
 .../ecf80e7622e869e8783e6bf9be48bc1dd4a61c13       | Bin 0 -> 611 bytes
 .../ee595881722ceecd4931d38b08c66192af4b8e75       | Bin 621 -> 0 bytes
 .../fea0c8b59dc63399afd8a0e6eab1753c444e4833       | Bin 0 -> 613 bytes
 .../02a2b9e7466b872abc5a767eb232dc1d6e4816b8       | Bin 0 -> 1289 bytes
 .../03ad53be4d12007e829eac994224f6ca64e7228f       | Bin 0 -> 1961 bytes
 .../043d681d837a34b44d0d622cd5a3622ff02eba72       | Bin 2062 -> 0 bytes
 .../05d177ca5e93fabb2166bd7c28a8cf6257c67ef4       | Bin 1054 -> 0 bytes
 .../0bed72f62a06502c94ecfc59416de25809b974ae       | Bin 1024 -> 0 bytes
 .../0fa79cef56c5f4da6b71a32485bbeed91a3e6203       | Bin 1069 -> 0 bytes
 .../1005b3b07fd38f41a4925e68904601025e717561       | Bin 0 -> 1032 bytes
 .../12e3e23dce00d6af75cb1b5cf07ad6b700dab3b7       | Bin 0 -> 1052 bytes
 .../139cba76bb0199abdb1889c0cf48a14a18ebe9bc       | Bin 0 -> 1024 bytes
 .../154a61898521268affa31f6bbe94d924a40818aa       | Bin 0 -> 4045 bytes
 .../1cfcca57c0f0390357f1451b8b7fe8e1d30df833       | Bin 0 -> 1153 bytes
 .../1e17f87333b37b4009f70119882d8ab2d665166d       |   1 +
 .../21c148221b9132dcc37253edcd045ff7c549f7ce       | Bin 0 -> 1084 bytes
 .../2af1bb5979d693feb8d7f60d08d4fdd771ac2718       | Bin 0 -> 1120 bytes
 .../2c735ad522e229407f1ab8c335118e80b5779830       | Bin 0 -> 1105 bytes
 .../2ff35048123232a78e60d8f3420332b287b0f773       | Bin 1024 -> 0 bytes
 .../317a2aa594d0853ff202f8057d2653095d8f36ea       | Bin 2636 -> 0 bytes
 .../336a77464e94ca4c1d7f672bbb67ea7990540d24       | Bin 0 -> 1024 bytes
 .../3f16a014d67b679493f0d58a243024aaaa803e16       | Bin 2675 -> 0 bytes
 .../4341e6b065a9cba995c43d99d94f49f0c49ebca1       | Bin 1140 -> 0 bytes
 .../4412b1a8aff0c488f5c3cc4da1231c2dbdedeb55       | Bin 0 -> 1032 bytes
 .../465c2afda08c7da6e343c77d853a940088162b7b       | Bin 0 -> 1211 bytes
 .../49535c6efd404f0cbc925547e7d9fb0b069eee79       | Bin 0 -> 1025 bytes
 .../4b1fa94f2b83be23347467ab47e05492df185edf       | Bin 0 -> 1042 bytes
 .../4b7a0785ffb61d694acf53da91b2b040d9e37e19       | Bin 0 -> 1024 bytes
 .../4d862ee798be8b896adca8810dcaf8cfdd364bc4       | Bin 3346 -> 0 bytes
 .../4e383efd4e347ef2d70ea9f6ff688388600a0aca       | Bin 0 -> 1316 bytes
 .../4f19efda0a66facee2c09c94146659f6439f50c4       | Bin 0 -> 1566 bytes
 .../50a01934a05c3208fbecdda6588b311b983ad082       | Bin 0 -> 3349 bytes
 .../60496a70ac884918a0582b59058311721a8b0e2e       | Bin 1026 -> 0 bytes
 .../623e38fe802c821ad817b815f808a5492e871c20       | Bin 1073 -> 0 bytes
 .../62a749a5d329509d40f4d2060f6bde3f2db4b6de       | Bin 0 -> 1026 bytes
 .../68c0e323bbd159c19570fd5846920da37c63de3c       | Bin 0 -> 1093 bytes
 .../69279e4e0b12475f6b9cc6416d37dcbb9a14577a       | Bin 0 -> 1394 bytes
 .../6bb2273d12529ab96590014560aeac1d31f2de8d       | Bin 3949 -> 0 bytes
 .../6c3cb2bb4ed7b1eeb7989b5924007425b6bf0cd3       | Bin 0 -> 2057 bytes
 .../6cada63e7ab4c1c89e9ff4b9766ed042158ab707       | Bin 1125 -> 0 bytes
 .../6db306e691ee4b8e7026ec0d276b0d9b0bc119ee       | Bin 0 -> 1024 bytes
 .../6e54438e59553c7ec563261c63ac5a221d6c90e1       | Bin 0 -> 1133 bytes
 .../776a3a38cb2120e3d561dfdd9e44fd4238c8bb0f       | Bin 0 -> 1067 bytes
 .../777d0616e337cd787f7e1a8eb8b6c9d95ebef769       | Bin 1074 -> 0 bytes
 .../7d6dad61754d37986f02fb4fdebf76c88924b721       | Bin 0 -> 2130 bytes
 .../826cb260348830beae2949391e2c1bb7aa6b2c20       | Bin 1053 -> 0 bytes
 .../85bf45ca4b279439c3943964cd04887a2efcd494       | Bin 0 -> 1160 bytes
 .../8a6b341220525d524375490a4e69a3500212a2a5       | Bin 3854 -> 0 bytes
 .../8dfbb3915b3b637fb1502c2ee3e2e415fce3fb17       | Bin 0 -> 2984 bytes
 .../8e1036e187eeeddcc7fd08d7c6ff1b4205b1f355       | Bin 1580 -> 0 bytes
 .../91f71999712440ca5447391852cdad9be5d9518e       | Bin 0 -> 2057 bytes
 .../9716238edba975d8983a50ebe002ede8f36f0ef3       | Bin 0 -> 1062 bytes
 .../97c2cafc5d282ddaa6138dc3f1c7bc4a38a93d8e       | Bin 0 -> 1029 bytes
 .../99b476c3cb17d01f8cfea2f61d4520b847e07c38       | Bin 3878 -> 0 bytes
 .../9c27bb866b16349315305294074ae44bff7e54ad       | Bin 3998 -> 0 bytes
 .../9cfc93d48121339ddf7f0207fda639895afcee9a       | Bin 0 -> 1025 bytes
 .../a09384231aff9f82af04ee38e22349ab7fd1a555       | Bin 1026 -> 0 bytes
 .../a0bc9499c818ee2793d68d8c1569cbdaefc4fd81       | Bin 0 -> 1027 bytes
 .../a225fb40652e717735e19cb581b689ff4cc10a94       | Bin 4068 -> 0 bytes
 .../a3a4c2a17536c11c7ba9126fb67b5eb9b5199f58       | Bin 1709 -> 0 bytes
 .../a4bf32e5ce76c8a6684d02b1193a9ae4384e7f1a       | Bin 3460 -> 0 bytes
 .../abe0c48360d8463fe9e1434c351266db57fdbb32       | Bin 3905 -> 0 bytes
 .../ad877afa0d998ba233fa2d47b46b417e3427d76e       |   1 -
 .../b3bdaaa1e6135890da0da803d628ac73de03c388       | Bin 0 -> 1585 bytes
 .../b45a0a9f2a405c5dd5d214636d65db272ec49bae       | Bin 1026 -> 0 bytes
 .../b5be0470cc34038240a5e46a8a303bc682547c7d       | Bin 0 -> 1024 bytes
 .../b94d5b2cf966cf52e69f56b6da301cb3e6c69113       | Bin 0 -> 1452 bytes
 .../b9b62c2834f059a0cecc77a1b2ead0bebf9802b1       | Bin 0 -> 2597 bytes
 .../ba7bccc10810a844ef20acb4d45f23653f1ed4cc       | Bin 1025 -> 0 bytes
 .../c012a2977323790cbc2c8b57d09ebf097547bb04       | Bin 1034 -> 0 bytes
 .../c09a9b5c79f1b7f7925e3071f1b2489f208ffe9d       | Bin 1252 -> 0 bytes
 .../c9c7120c7fb44d074f838921e3a4eca2277f23a5       | Bin 0 -> 1092 bytes
 .../cb82a4ccd0559b84f3003fa9a4f5fbc685f7eabc       | Bin 0 -> 1024 bytes
 .../ce4eea6ae2e470659e758c9649271a641e56c8cc       | Bin 0 -> 1033 bytes
 .../cea18c331ca6cec59fd099065629fb2d9cfb7e0a       | Bin 0 -> 2726 bytes
 .../cf90e33cc0801d4f52015247dcdcee00ae210a0a       | Bin 0 -> 2855 bytes
 .../d18c1455e3dbc31d072706e4105b576e3b4af411       | Bin 1139 -> 0 bytes
 .../d2b95e4312fd14b0953a7c9c8985929f78e6aabc       | Bin 0 -> 1029 bytes
 .../d4313c17a49f5e1e6db729b57fc49c50d5010864       | Bin 1172 -> 0 bytes
 .../d63453082276852db11afb5ce6a7aeec380ed457       | Bin 0 -> 1037 bytes
 .../d85ba3fe4414a8294c41a5479ca9dd27a3294b76       | Bin 2199 -> 0 bytes
 .../dadda676c596fc0295f52af417ed755de1701ecb       | Bin 1029 -> 0 bytes
 .../dcf51a934b620b5cc212780823070ebd50dbdc16       | Bin 0 -> 1394 bytes
 .../ddc1f7e2ab9fbad16aefbcecfa50615135555eea       | Bin 1156 -> 0 bytes
 .../de42ae3f925cb1591c116e7deea6ed5846e035b5       | Bin 1033 -> 0 bytes
 .../e3866ba1859eec0377c563931cd0bdb372d109b6       | Bin 0 -> 1188 bytes
 .../e779274511b5fd28af45a5929b3ba1ff4cdd8ed5       | Bin 1028 -> 0 bytes
 .../e95a74bccef2fa04191002aa3f1576c8ce8462e0       | Bin 2770 -> 0 bytes
 .../ea586988a98b6744558e063100765eaa0a9bee69       | Bin 0 -> 1024 bytes
 .../ececf77f65af9b9ea5f90022a540b77b386d64b7       | Bin 2636 -> 0 bytes
 .../f0249dacbe8a06a608cf6c0cf8973c9901771eac       | Bin 1024 -> 0 bytes
 .../f20fd0903488d8969146fe8f8fdaa24f55280593       | Bin 1035 -> 0 bytes
 .../f26b8ac9baea4eae0f6682e8de949106265a8ec1       | Bin 0 -> 1869 bytes
 .../f29d76560d2c84ccbfe2481bd9c56f1082b477f4       | Bin 0 -> 1081 bytes
 .../f3ecb935c9d00b5fc46918835fa0f84cef89e58d       | Bin 1024 -> 0 bytes
 .../f5182a61a5cd67e087328b227ab48da7833f83e0       | Bin 1071 -> 0 bytes
 .../f6dca2adfd75f73ada3c68ff46300fa50410f5d3       | Bin 1027 -> 0 bytes
 .../f73678f30e5424ea5b4166929554be60b49348c9       | Bin 0 -> 1153 bytes
 .../fb6dbdd81d0b399df74d81878cde95c566a7306f       | Bin 0 -> 1024 bytes
 .../00b3152badbdc709990d63ccec1805739bbf8447       | Bin 0 -> 312 bytes
 .../0140b979ed7fbc87e8a647e82173dca8339462ee       | Bin 0 -> 1028 bytes
 .../06b73472d2ec64afd11c3a77d550d7806b33809c       | Bin 0 -> 368 bytes
 .../078d6985462cfd48d06f42c78d277a9932efcef6       | Bin 0 -> 907 bytes
 .../07b7c84ba855992f14c05c1ed0b11acfae308978       | Bin 0 -> 236 bytes
 .../0ab182d56e9d758677f771f7731a01d48612723f       | Bin 0 -> 2931 bytes
 .../14b9090f67d5b756f140734ccd18624bfd6379a1       | Bin 0 -> 1788 bytes
 .../15362103ab120b70ce6256c5b112cf5089f2e809       | Bin 0 -> 1856 bytes
 .../1a2ddc134226abd613c6b5f804b14987c5fb91bb       | Bin 0 -> 38 bytes
 .../1c3e3a97a50cfceb9863f940fb59e7534cebc4b4       | Bin 0 -> 179 bytes
 .../1e0d6060af6d68f7c5df21ec2a3268cecfcebdfa       | Bin 0 -> 2126 bytes
 .../1f7a617ab67da069c0ee8143b8c626c6f935abdd       | Bin 0 -> 276 bytes
 .../2165ddc96b4ccbdedc8b78a41407864f9f26d895       | Bin 0 -> 451 bytes
 .../22386051c86870ad59d65af6f8da5921cca20d5b       | Bin 0 -> 2970 bytes
 .../25732e2c49101274529cb4769426330f1b958401       | Bin 0 -> 241 bytes
 .../2902833756445148e2151d93a3bf8ab0cd269aac       | Bin 0 -> 132 bytes
 .../2a1b15b3f0056aeb9a5aa89d77a903dfccd0b02a       | Bin 0 -> 674 bytes
 .../2bea75e47b90c2aca274af658e79a8973d2a7e76       | Bin 0 -> 322 bytes
 .../2ce6b2c8d3c010b2a9c76165440c1a7ce3abc6b1       | Bin 0 -> 598 bytes
 .../2eb452be460a03159aa28c90eaf83e719a69d74b       | Bin 0 -> 1942 bytes
 .../3301381edefd92364acf23b142eacbaf89b138ef       | Bin 0 -> 2 bytes
 .../34eeb7af3cc7c82bcd0291f74b5a9aecc2f1b7cc       | Bin 0 -> 240 bytes
 .../3a8bab234fc79f763b4fff83c7c51c122cb73a92       | Bin 0 -> 914 bytes
 .../3d9b592938351112b05b38e649790699b6555591       | Bin 0 -> 289 bytes
 .../3ff0e5ef71bea278b465ce517eba40f9487e90a0       | Bin 0 -> 821 bytes
 .../40c2ee3cec844627486313ee3147d9778adecb26       | Bin 0 -> 1201 bytes
 .../418052c42f19e85fbd3bc3428a67ed99577edc1e       | Bin 0 -> 129 bytes
 .../423a25963500f20052e92a1d368c5b4073562cd3       | Bin 0 -> 647 bytes
 .../439f62298be458904b543d9ec9dd1105779a2792       | Bin 0 -> 332 bytes
 .../44b60374026ac3082d5552e05288351be79416c6       | Bin 0 -> 98 bytes
 .../469baadf20586b44d080774ece492677e39582bf       | Bin 0 -> 2467 bytes
 .../4809570a2b2f805906691e011b9beffe03c8dc68       | Bin 0 -> 2748 bytes
 .../4b55df102046a74e75b3ac7345efaeecda19dc55       | Bin 0 -> 1946 bytes
 .../4ba43c4473a2e24ef66ee6e6d3a083f1e90ecb59       | Bin 0 -> 995 bytes
 .../4c7465a03792f8ffbc3da94133c575fd0fb609fd       | Bin 0 -> 2480 bytes
 .../4e22436534f7ddda6023610945ad3fb84b08d5f2       | Bin 0 -> 2 bytes
 .../4efdd9552994e50cf0e8ad8f6869617e3e6df619       | Bin 0 -> 218 bytes
 .../4f4c26fc8981a82def4bcf89f87acfb7a7dccd12       | Bin 0 -> 153 bytes
 .../50c35604d27ae3a4ff73ce17b732c0d53a8f349e       | Bin 0 -> 331 bytes
 .../51211af99f2a4ac87c1c641a12b7a7b959f002e7       | Bin 0 -> 3 bytes
 .../55011c61bb58706f7b17f11bddc631d7eb42a119       | Bin 0 -> 135 bytes
 .../551546026dfe20045855431e4c080643ecc649b8       | Bin 0 -> 902 bytes
 .../57c83eb9c9a089aa1ab86366da0811f717b038f9       | Bin 0 -> 844 bytes
 .../5a034d850b354a2214b09f0617f30ddaa193d870       | Bin 0 -> 126 bytes
 .../5c85ceaa041ec1771c68bdfcba6a9cd0a6344948       | Bin 0 -> 1063 bytes
 .../62d6104e71b6395eeaa1b49c4f765b7a60bd6ff1       | Bin 0 -> 358 bytes
 .../686671b3b022759c727efe542acdfde5fc20ae75       | Bin 0 -> 289 bytes
 .../690363830d846fde982978f7a272efb319aba9bc       | Bin 0 -> 126 bytes
 .../69a692732a936cc3828f63652848002b3fe3a435       | Bin 0 -> 339 bytes
 .../69e22aaa579ee53595e6056db92c810715ceaafd       | Bin 0 -> 117 bytes
 .../6a57403d937cbde464b34234a7337290f69dc06b       | Bin 0 -> 2762 bytes
 .../6ce6b8051d4a3b36ecb7def5fea922158df41b17       | Bin 0 -> 577 bytes
 .../6e7d12ff2919fcb6e6bc8abc17704b051cd331f4       | Bin 0 -> 332 bytes
 .../6fa9f5ebf1422d95d84776798d3daab6392c4373       | Bin 0 -> 611 bytes
 .../6fefd1d81cf134070c52ded64e18c4af5d6bbf68       | Bin 0 -> 324 bytes
 .../70ebe0d4b36bbab381551e76da348db86befb8ee       | Bin 0 -> 609 bytes
 .../717964c88a8f58cded91ceda5f671810d22bdaa2       | Bin 0 -> 1085 bytes
 .../7609c86bdcdf1341dcb7071412941fa5c077721b       | Bin 0 -> 495 bytes
 .../774167b00ab27912f8e78bfd2e3d39e0239b9873       | Bin 0 -> 774 bytes
 .../7754fb0cc9a31fd3b039fa813826615451cb93ed       | Bin 0 -> 349 bytes
 .../7919c53b964111b4ad091f41cec0574d1cb5be68       | Bin 0 -> 1670 bytes
 .../7b224f368d1f355febd30215deaf8fa9b11d48af       | Bin 0 -> 135 bytes
 .../7b2d2d12df2087abb44a8438f1c7ea308ffe16dc       | Bin 0 -> 584 bytes
 .../7db619b14a5b41ef2ea72f6ed50bc3222c92008c       | Bin 0 -> 2778 bytes
 .../7fa5a0da8c3d5dbb7c0239d7746dfcc6fa349c44       | Bin 0 -> 2538 bytes
 .../83e1ff87052fcf0a295f517908437ce3ec8c3d12       | Bin 0 -> 589 bytes
 .../8836449903a9055d2c819f1df8640599fc127141       | Bin 0 -> 762 bytes
 .../8d004499628b6ed79de469223ab62454203a265f       | Bin 0 -> 478 bytes
 .../9023a6c7f1c63ff0b75b849e4755330e99203134       | Bin 0 -> 556 bytes
 .../92c6d71fa16a5bdc100739558de6b93ae1d8a503       | Bin 0 -> 334 bytes
 .../941b82fe6daa2f4352e40fe63ec19a11476d4ab1       | Bin 0 -> 288 bytes
 .../9d781a671ecba151d1e1981abba8b786228f6a10       | Bin 0 -> 656 bytes
 .../a17bf522b252ba23f1ca4b42417aa8f124c1da88       | Bin 0 -> 183 bytes
 .../a6af46f15f2ed5a6bd386fd3873d2721dc97bc83       | Bin 0 -> 999 bytes
 .../aac35375179c3d2bb4a989199ff53e61b2932016       | Bin 0 -> 1485 bytes
 .../acadd490cdf801aab3030c05259f236486e220d7       | Bin 0 -> 157 bytes
 .../acc6d2f9f7675eb304ec822db3f534c598d651c4       | Bin 0 -> 1113 bytes
 .../adb71b5cf8f2be28b6c83bf06cdb7f902484d83c       | Bin 0 -> 357 bytes
 .../af4f83441796a7ac67555445851416adc02a42d1       | Bin 0 -> 540 bytes
 .../b753e14020c99abb2881c03dcd804a5dfec839ab       | Bin 0 -> 588 bytes
 .../bb4531b735c2020482c5129e47a5ea48ed403974       | Bin 0 -> 99 bytes
 .../c6a3e7f64c82dd3179cda6cead0e6ee9273c1c0f       | Bin 0 -> 2647 bytes
 .../c74d256a196e60a949648988b9356d3a3072ee25       | Bin 0 -> 581 bytes
 .../c8fdfe97b51c909c756b64690190dcece85be226       | Bin 0 -> 312 bytes
 .../cfd3a43762d6d2a31623c4ac47f87116230b2476       | Bin 0 -> 159 bytes
 .../d3428aa728010662173909467f09ebaa06762ade       | Bin 0 -> 382 bytes
 .../d43e4aeb7c2b693185eb565551026fbb5cd43e1a       | Bin 0 -> 501 bytes
 .../daf8d904c3ffb96e4a93db65231ce11c8dcbaa13       | Bin 0 -> 975 bytes
 .../db9c9d5c699d60365433a924be9626ae19554fac       | Bin 0 -> 931 bytes
 .../dda3319e9709921f533039b5a8cd4b80a7458bae       | Bin 0 -> 191 bytes
 .../de63782e6e4c00cfca5e67994638d3af631ff36e       | Bin 0 -> 134 bytes
 .../e0154c05d36e1aa8be5a3565060c16c5e022b32b       | Bin 0 -> 1805 bytes
 .../e02f1cedfa5dcb4f3229efb3b45a77b0e237af19       | Bin 0 -> 426 bytes
 .../e338a95654d105d4956fcd11f1232714010e6e76       | Bin 0 -> 1800 bytes
 .../e6369f11ef7abb23bbf27d3d8c536da569321ae7       | Bin 0 -> 520 bytes
 .../eb7d414eb5c3fdc62bd419b096a11731de84225f       | Bin 0 -> 690 bytes
 .../ed0bd0662d2819ea276b5c2d6bcf35edd70191da       | Bin 0 -> 1142 bytes
 .../ee088a031e6943efb877e9a3b8358a7315fcc703       | Bin 0 -> 294 bytes
 .../ef4de892e052ae14f2aadd35eeab00429dde5e7e       | Bin 0 -> 683 bytes
 .../ef8e81dceb5aa848dd47748f5499722188dad63c       | Bin 0 -> 737 bytes
 .../f2a5bfaea48014d5fc4c581da5ca9f8b85d210fa       | Bin 0 -> 323 bytes
 .../f4868f08b07effd8338f23a12186e0c39c0004fd       | Bin 0 -> 724 bytes
 .../f4b0d4c72dc7c7da532f9ea84131a979a6241a55       | Bin 0 -> 380 bytes
 .../f63e15cd167a055eb187db5fa75d5c296c607fea       | Bin 0 -> 641 bytes
 .../f8ade6c2559a0cc772f4b2913b8277458e3b8779       | Bin 0 -> 601 bytes
 .../fc2d9c7fdcca93fe201c398e41f6b31b63365181       | Bin 0 -> 466 bytes
 .../0d2f951037b2a99323a6f292bed158dcb84f8525       | Bin 0 -> 46 bytes
 fuzz/corpus/fuzz_libinjection/10                   |   1 +
 fuzz/corpus/fuzz_libinjection/11                   |   1 +
 .../15b476de3caa02284e485d66b68081608ae4faf5       |   1 +
 .../1a38ab89c73b1bb6a4d06294c94b413f9ad0822e       |   1 +
 fuzz/corpus/fuzz_libinjection/2                    |   1 +
 fuzz/corpus/fuzz_libinjection/20                   |   1 +
 fuzz/corpus/fuzz_libinjection/21                   |   1 +
 fuzz/corpus/fuzz_libinjection/22                   |   1 +
 fuzz/corpus/fuzz_libinjection/3                    |   1 +
 fuzz/corpus/fuzz_libinjection/30                   |   1 +
 fuzz/corpus/fuzz_libinjection/31                   |   1 +
 fuzz/corpus/fuzz_libinjection/32                   |   1 +
 fuzz/corpus/fuzz_libinjection/33                   |   1 +
 .../33aa651e011ff40ba1edd9950093275800b9a40c       | Bin 0 -> 58 bytes
 fuzz/corpus/fuzz_libinjection/34                   |   1 +
 .../3450506a01feb1c676c383da2351d81c95e361b9       |   1 +
 fuzz/corpus/fuzz_libinjection/35                   |   1 +
 fuzz/corpus/fuzz_libinjection/36                   |   1 +
 fuzz/corpus/fuzz_libinjection/37                   |   1 +
 fuzz/corpus/fuzz_libinjection/38                   |   1 +
 fuzz/corpus/fuzz_libinjection/39                   |   1 +
 .../39a9b3ad3544180f4614c356bec4305a940c27bc       |   1 +
 fuzz/corpus/fuzz_libinjection/4                    |   1 +
 fuzz/corpus/fuzz_libinjection/40                   |   1 +
 fuzz/corpus/fuzz_libinjection/41                   |   1 +
 fuzz/corpus/fuzz_libinjection/42                   |   1 +
 fuzz/corpus/fuzz_libinjection/43                   |   1 +
 fuzz/corpus/fuzz_libinjection/44                   |   1 +
 fuzz/corpus/fuzz_libinjection/45                   |   1 +
 fuzz/corpus/fuzz_libinjection/46                   |   1 +
 fuzz/corpus/fuzz_libinjection/47                   |   1 +
 fuzz/corpus/fuzz_libinjection/48                   |   1 +
 fuzz/corpus/fuzz_libinjection/49                   |   1 +
 fuzz/corpus/fuzz_libinjection/5                    |   1 +
 fuzz/corpus/fuzz_libinjection/50                   |   1 +
 fuzz/corpus/fuzz_libinjection/51                   |   1 +
 fuzz/corpus/fuzz_libinjection/52                   |   1 +
 .../5202e03fa50b3bc1b55fb03faa3c26659e6fcee8       |   1 +
 fuzz/corpus/fuzz_libinjection/53                   |   1 +
 fuzz/corpus/fuzz_libinjection/54                   |   1 +
 fuzz/corpus/fuzz_libinjection/55                   |   1 +
 fuzz/corpus/fuzz_libinjection/56                   |   1 +
 fuzz/corpus/fuzz_libinjection/57                   |   1 +
 fuzz/corpus/fuzz_libinjection/58                   |   1 +
 fuzz/corpus/fuzz_libinjection/59                   |   1 +
 fuzz/corpus/fuzz_libinjection/6                    |   1 +
 fuzz/corpus/fuzz_libinjection/7                    |   1 +
 fuzz/corpus/fuzz_libinjection/8                    |   1 +
 .../85e53271e14006f0265921d02d4d736cdc580b0b       |   1 +
 fuzz/corpus/fuzz_libinjection/9                    |   1 +
 .../9d1de8279add3b6d037aa2a801da30d45f91cf8d       |   1 +
 .../c487a9ed6ce4beef9e9ebfa821e7181c68476088       | Bin 0 -> 25 bytes
 .../cc7ddbb1c7ce7d7181615313b0c6ac81575c7668       |   2 +
 .../cf98534696ff97a4f2f1f9f96fdfba41cad2057d       |   2 +
 .../08e28514b30a7df231e574d430f9207be60081a5       | Bin 0 -> 14 bytes
 .../0bd1690046cf11535e1fe7ef887bd881bc26e248       | Bin 86 -> 0 bytes
 .../0bf770e429cba6c9fd4e3c5275572951c8bb7b0d       | Bin 30 -> 0 bytes
 .../10420923df54bfca05312d5fafaa4189373b4683       | Bin 26 -> 0 bytes
 .../1aa0ba13369b1e0c11cdfb707ee96bbc0077635f       | Bin 0 -> 659 bytes
 .../2b88205b31bcff3b918131c9f6accbd0dd820eec       | Bin 0 -> 702 bytes
 .../35fb4e382eea90c8483725b23c933d4cc418df47       |   1 -
 .../405c78f0be0c46d2888206056cbad22223a9d801       | Bin 0 -> 1142 bytes
 .../4778131281f96295cef3f8c9929d3870d88ac5a8       | Bin 0 -> 162 bytes
 .../50ccf2ef2a396f9181f5233cb5943f65308ad506       | Bin 59 -> 0 bytes
 .../52a719f9d01e6a1882f97bc011e52c80f807e955       |   1 +
 .../53e7833e9616f944ea630228d8443ee2f62f647f       | Bin 0 -> 703 bytes
 .../54575b941c0641906092a4d2eb88d4b571cd7244       | Bin 705 -> 0 bytes
 .../5df39e5d3b76ed758bd70bab5c02fb4b1913565c       | Bin 1482 -> 0 bytes
 .../6046a35020d5b394b3d7458fac00f154e4eb9135       | Bin 0 -> 58 bytes
 .../63c9f30967ffc232fd1b52b7b3f0b9a99051e81e       | Bin 163 -> 0 bytes
 .../77206cbd399692b257926ffad2150642cb10dfbf       | Bin 0 -> 142 bytes
 .../82bb3eab86d4063ea4a3cb97821feb07cecf7b72       |   1 -
 .../83631c962f6eb3da79b4ac7c8c7074b8d6227679       |   1 -
 .../85d363c3f0967b1c9d3ec9d1038fd1c153a9cb67       | Bin 0 -> 846 bytes
 .../8ac56fc7a60893ae2e6019bc00644af784c50067       | Bin 0 -> 1357 bytes
 .../97f9c819682d7ddc67733f4ba04511c2005d2660       | Bin 0 -> 704 bytes
 .../9dae31ee55b9d421f11caa6fd6257faf8b992675       | Bin 0 -> 108 bytes
 .../a0de36639862a94a491974369a7c45a16ed4ff6e       | Bin 261 -> 0 bytes
 .../a5dd6d24cfa78a8faba860c8806bac4ba7540eff       | Bin 1549 -> 0 bytes
 .../aa564c1c9f0278ad73a1958433ef4305f9ac71fd       | Bin 109 -> 0 bytes
 .../b2107343881e2efae5b729ef8f64234a7d772f3d       | Bin 850 -> 0 bytes
 .../b59e95164582a933229e86ed21cbcdd70010faec       | Bin 706 -> 0 bytes
 .../bcbec15886272236f8be41e4749d352051bd217e       | Bin 0 -> 48 bytes
 .../df3387059bc65a41f137c3292737f7c2891ac2a1       | Bin 709 -> 0 bytes
 .../eb4911efad5e1499cdfcd23a6e9bab9902b8a05e       | Bin 49 -> 0 bytes
 .../f0f58b2a1c62c37d7b8bc50a9db2d8d870e8b3a7       | Bin 0 -> 12 bytes
 .../f96555266adfc22b92ecd46749406be33e27beaa       | Bin 660 -> 0 bytes
 fuzz/fuzz_alg_bytestream.c                         |  13 +++++
 fuzz/fuzz_config.cpp                               |  47 +++++++++++++-----
 fuzz/fuzz_ds_ahocorasick.cpp                       |  27 ++++++++++-
 fuzz/fuzz_ds_ptree.cpp                             |   6 ++-
 fuzz/fuzz_libinjection.c                           |  25 ++++++++++
 fuzz/fuzz_ndpi_reader.c                            |   2 +-
 fuzz/fuzz_serialization.cpp                        |   2 +
 fuzz/ipv4_addresses.txt                            |   6 +++
 src/include/ndpi_api.h                             |   2 +-
 src/include/ndpi_main.h                            |   4 +-
 src/lib/ndpi_main.c                                |  53 +++++++++------------
 src/lib/ndpi_serializer.c                          |   2 +
 src/lib/ndpi_utils.c                               |   5 +-
 351 files changed, 256 insertions(+), 59 deletions(-)
 create mode 100644 fuzz/corpus/fuzz_alg_bytestream/00f699c111a4216c827906dddc7e53d2676c436c
 create mode 100644 fuzz/corpus/fuzz_alg_bytestream/1
 create mode 100644 fuzz/corpus/fuzz_alg_bytestream/1c45e235b337db8b9e98bf2aa0ee02dde9384efa
 create mode 100644 fuzz/corpus/fuzz_alg_bytestream/2
 create mode 100644 fuzz/corpus/fuzz_alg_bytestream/7f6a3512755b96414b7dfe5a21d2952a9cc70333
 create mode 100644 fuzz/corpus/fuzz_alg_bytestream/b6589fc6ab0dc82cf12099d1c2d40ab994e8410c
 create mode 100644 fuzz/corpus/fuzz_alg_bytestream/b7103ca278a75cad8f7d065acda0c2e80da0b7dc
 create mode 100644 fuzz/corpus/fuzz_alg_bytestream/d2418811df5936bdb530e9c66aca38f4fc6da70c
 delete mode 100644 fuzz/corpus/fuzz_config/1b27923041cd9943fec04f9e795252294a140884
 delete mode 100644 fuzz/corpus/fuzz_config/1d0509e291e563f66715ddb3476689931516f533
 delete mode 100644 fuzz/corpus/fuzz_config/1de3ce546c3443fb0ba76988f36f1e42c022d603
 delete mode 100644 fuzz/corpus/fuzz_config/290a66605b81b38623979b32de5e552f40732dad
 create mode 100644 fuzz/corpus/fuzz_config/3036bf1df14f0ad0c2b5614e51789f575af97dfb
 create mode 100644 fuzz/corpus/fuzz_config/3bf49bd80bf3c787f49222fc50c41f48f85fa013
 create mode 100644 fuzz/corpus/fuzz_config/3f22430a14710ba1d01f3547b60aded67efb9833
 delete mode 100644 fuzz/corpus/fuzz_config/44446f3b2a2200f31349b0ab61076e52bd8b0efd
 create mode 100644 fuzz/corpus/fuzz_config/4714c051ed397aa1778184fc9ba513f77f17a511
 create mode 100644 fuzz/corpus/fuzz_config/4e873d14a5b6764f075247f14e69a615a9c702d0
 delete mode 100644 fuzz/corpus/fuzz_config/579120e2b849fa886d3e00e85da1aadaf012a530
 delete mode 100644 fuzz/corpus/fuzz_config/5eaf59d9cedde7668db1179a10af6d41cfd25acb
 delete mode 100644 fuzz/corpus/fuzz_config/63cf7bf35278ec03c440970b1324abeca2526d14
 create mode 100644 fuzz/corpus/fuzz_config/685a648c4186681d6e5a663fa7797d424dd8181e
 delete mode 100644 fuzz/corpus/fuzz_config/72d80bd288fdbf7f3cce29f635b3d235c0aeaa74
 delete mode 100644 fuzz/corpus/fuzz_config/76bc4759342543f5312d55d4d6e4133c6d298546
 create mode 100644 fuzz/corpus/fuzz_config/77281fce6fb40a568b750e97b356153447f92021
 create mode 100644 fuzz/corpus/fuzz_config/7b261995a0ed0a8b6ca544edfd56765963d113be
 delete mode 100644 fuzz/corpus/fuzz_config/7f4baf1ac218c942a8dc127ec07b1fc2ac670262
 create mode 100644 fuzz/corpus/fuzz_config/828f8f1454722c92c14f9b25ad776eb5e676459c
 create mode 100644 fuzz/corpus/fuzz_config/8bb38a19254c0d699e4d551a9ff65bc7a99e9a63
 delete mode 100644 fuzz/corpus/fuzz_config/8ce8bfe5ac7addf5e2c5da6794cf5934678dd06c
 create mode 100644 fuzz/corpus/fuzz_config/907d8cd14928d4035594a91347a407857b868baf
 delete mode 100644 fuzz/corpus/fuzz_config/9220c147a2a2e08183c4fd85d62c7f15247969a6
 create mode 100644 fuzz/corpus/fuzz_config/a79e2ad75b81e48a7e7153d9f1d2a60740e04360
 delete mode 100644 fuzz/corpus/fuzz_config/ae51624e0c6ecf1897244da20a17ef2052058380
 delete mode 100644 fuzz/corpus/fuzz_config/b00102178b488b3e299f9465f91093894f4649aa
 create mode 100644 fuzz/corpus/fuzz_config/b160a30be750571b70090c2811c25d0c6ba460d4
 create mode 100644 fuzz/corpus/fuzz_config/b46ee834ea6b1b6b860bbcc0bfad3de77ec72d32
 delete mode 100644 fuzz/corpus/fuzz_config/c3dac33fc878793d7aa0012b46fbd67584ecfe86
 create mode 100644 fuzz/corpus/fuzz_config/cbf4471e64914dc5eb45a1de426f42723c703cec
 create mode 100644 fuzz/corpus/fuzz_config/ccc5d3518a38a1c9c89139202aac46507a7b9f08
 delete mode 100644 fuzz/corpus/fuzz_config/d828ee9bc3dc0de65cb5e0ec6091c5e362fbae50
 create mode 100644 fuzz/corpus/fuzz_config/e063dec4ae4ac11531c42b97ff54614517327eb1
 delete mode 100644 fuzz/corpus/fuzz_config/e499f9f18ca9edd456fd9efd129dbe0f77caa5a0
 create mode 100644 fuzz/corpus/fuzz_config/ecf80e7622e869e8783e6bf9be48bc1dd4a61c13
 delete mode 100644 fuzz/corpus/fuzz_config/ee595881722ceecd4931d38b08c66192af4b8e75
 create mode 100644 fuzz/corpus/fuzz_config/fea0c8b59dc63399afd8a0e6eab1753c444e4833
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/02a2b9e7466b872abc5a767eb232dc1d6e4816b8
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/03ad53be4d12007e829eac994224f6ca64e7228f
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/043d681d837a34b44d0d622cd5a3622ff02eba72
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/05d177ca5e93fabb2166bd7c28a8cf6257c67ef4
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/0bed72f62a06502c94ecfc59416de25809b974ae
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/0fa79cef56c5f4da6b71a32485bbeed91a3e6203
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/1005b3b07fd38f41a4925e68904601025e717561
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/12e3e23dce00d6af75cb1b5cf07ad6b700dab3b7
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/139cba76bb0199abdb1889c0cf48a14a18ebe9bc
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/154a61898521268affa31f6bbe94d924a40818aa
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/1cfcca57c0f0390357f1451b8b7fe8e1d30df833
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/1e17f87333b37b4009f70119882d8ab2d665166d
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/21c148221b9132dcc37253edcd045ff7c549f7ce
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/2af1bb5979d693feb8d7f60d08d4fdd771ac2718
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/2c735ad522e229407f1ab8c335118e80b5779830
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/2ff35048123232a78e60d8f3420332b287b0f773
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/317a2aa594d0853ff202f8057d2653095d8f36ea
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/336a77464e94ca4c1d7f672bbb67ea7990540d24
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/3f16a014d67b679493f0d58a243024aaaa803e16
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/4341e6b065a9cba995c43d99d94f49f0c49ebca1
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/4412b1a8aff0c488f5c3cc4da1231c2dbdedeb55
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/465c2afda08c7da6e343c77d853a940088162b7b
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/49535c6efd404f0cbc925547e7d9fb0b069eee79
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/4b1fa94f2b83be23347467ab47e05492df185edf
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/4b7a0785ffb61d694acf53da91b2b040d9e37e19
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/4d862ee798be8b896adca8810dcaf8cfdd364bc4
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/4e383efd4e347ef2d70ea9f6ff688388600a0aca
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/4f19efda0a66facee2c09c94146659f6439f50c4
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/50a01934a05c3208fbecdda6588b311b983ad082
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/60496a70ac884918a0582b59058311721a8b0e2e
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/623e38fe802c821ad817b815f808a5492e871c20
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/62a749a5d329509d40f4d2060f6bde3f2db4b6de
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/68c0e323bbd159c19570fd5846920da37c63de3c
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/69279e4e0b12475f6b9cc6416d37dcbb9a14577a
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/6bb2273d12529ab96590014560aeac1d31f2de8d
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/6c3cb2bb4ed7b1eeb7989b5924007425b6bf0cd3
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/6cada63e7ab4c1c89e9ff4b9766ed042158ab707
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/6db306e691ee4b8e7026ec0d276b0d9b0bc119ee
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/6e54438e59553c7ec563261c63ac5a221d6c90e1
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/776a3a38cb2120e3d561dfdd9e44fd4238c8bb0f
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/777d0616e337cd787f7e1a8eb8b6c9d95ebef769
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/7d6dad61754d37986f02fb4fdebf76c88924b721
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/826cb260348830beae2949391e2c1bb7aa6b2c20
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/85bf45ca4b279439c3943964cd04887a2efcd494
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/8a6b341220525d524375490a4e69a3500212a2a5
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/8dfbb3915b3b637fb1502c2ee3e2e415fce3fb17
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/8e1036e187eeeddcc7fd08d7c6ff1b4205b1f355
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/91f71999712440ca5447391852cdad9be5d9518e
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/9716238edba975d8983a50ebe002ede8f36f0ef3
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/97c2cafc5d282ddaa6138dc3f1c7bc4a38a93d8e
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/99b476c3cb17d01f8cfea2f61d4520b847e07c38
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/9c27bb866b16349315305294074ae44bff7e54ad
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/9cfc93d48121339ddf7f0207fda639895afcee9a
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/a09384231aff9f82af04ee38e22349ab7fd1a555
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/a0bc9499c818ee2793d68d8c1569cbdaefc4fd81
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/a225fb40652e717735e19cb581b689ff4cc10a94
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/a3a4c2a17536c11c7ba9126fb67b5eb9b5199f58
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/a4bf32e5ce76c8a6684d02b1193a9ae4384e7f1a
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/abe0c48360d8463fe9e1434c351266db57fdbb32
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/ad877afa0d998ba233fa2d47b46b417e3427d76e
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/b3bdaaa1e6135890da0da803d628ac73de03c388
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/b45a0a9f2a405c5dd5d214636d65db272ec49bae
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/b5be0470cc34038240a5e46a8a303bc682547c7d
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/b94d5b2cf966cf52e69f56b6da301cb3e6c69113
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/b9b62c2834f059a0cecc77a1b2ead0bebf9802b1
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/ba7bccc10810a844ef20acb4d45f23653f1ed4cc
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/c012a2977323790cbc2c8b57d09ebf097547bb04
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/c09a9b5c79f1b7f7925e3071f1b2489f208ffe9d
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/c9c7120c7fb44d074f838921e3a4eca2277f23a5
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/cb82a4ccd0559b84f3003fa9a4f5fbc685f7eabc
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/ce4eea6ae2e470659e758c9649271a641e56c8cc
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/cea18c331ca6cec59fd099065629fb2d9cfb7e0a
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/cf90e33cc0801d4f52015247dcdcee00ae210a0a
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/d18c1455e3dbc31d072706e4105b576e3b4af411
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/d2b95e4312fd14b0953a7c9c8985929f78e6aabc
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/d4313c17a49f5e1e6db729b57fc49c50d5010864
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/d63453082276852db11afb5ce6a7aeec380ed457
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/d85ba3fe4414a8294c41a5479ca9dd27a3294b76
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/dadda676c596fc0295f52af417ed755de1701ecb
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/dcf51a934b620b5cc212780823070ebd50dbdc16
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/ddc1f7e2ab9fbad16aefbcecfa50615135555eea
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/de42ae3f925cb1591c116e7deea6ed5846e035b5
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/e3866ba1859eec0377c563931cd0bdb372d109b6
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/e779274511b5fd28af45a5929b3ba1ff4cdd8ed5
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/e95a74bccef2fa04191002aa3f1576c8ce8462e0
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/ea586988a98b6744558e063100765eaa0a9bee69
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/ececf77f65af9b9ea5f90022a540b77b386d64b7
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/f0249dacbe8a06a608cf6c0cf8973c9901771eac
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/f20fd0903488d8969146fe8f8fdaa24f55280593
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/f26b8ac9baea4eae0f6682e8de949106265a8ec1
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/f29d76560d2c84ccbfe2481bd9c56f1082b477f4
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/f3ecb935c9d00b5fc46918835fa0f84cef89e58d
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/f5182a61a5cd67e087328b227ab48da7833f83e0
 delete mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/f6dca2adfd75f73ada3c68ff46300fa50410f5d3
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/f73678f30e5424ea5b4166929554be60b49348c9
 create mode 100644 fuzz/corpus/fuzz_ds_ahocorasick/fb6dbdd81d0b399df74d81878cde95c566a7306f
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/00b3152badbdc709990d63ccec1805739bbf8447
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/0140b979ed7fbc87e8a647e82173dca8339462ee
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/06b73472d2ec64afd11c3a77d550d7806b33809c
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/078d6985462cfd48d06f42c78d277a9932efcef6
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/07b7c84ba855992f14c05c1ed0b11acfae308978
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/0ab182d56e9d758677f771f7731a01d48612723f
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/14b9090f67d5b756f140734ccd18624bfd6379a1
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/15362103ab120b70ce6256c5b112cf5089f2e809
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/1a2ddc134226abd613c6b5f804b14987c5fb91bb
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/1c3e3a97a50cfceb9863f940fb59e7534cebc4b4
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/1e0d6060af6d68f7c5df21ec2a3268cecfcebdfa
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/1f7a617ab67da069c0ee8143b8c626c6f935abdd
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/2165ddc96b4ccbdedc8b78a41407864f9f26d895
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/22386051c86870ad59d65af6f8da5921cca20d5b
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/25732e2c49101274529cb4769426330f1b958401
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/2902833756445148e2151d93a3bf8ab0cd269aac
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/2a1b15b3f0056aeb9a5aa89d77a903dfccd0b02a
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/2bea75e47b90c2aca274af658e79a8973d2a7e76
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/2ce6b2c8d3c010b2a9c76165440c1a7ce3abc6b1
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/2eb452be460a03159aa28c90eaf83e719a69d74b
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/3301381edefd92364acf23b142eacbaf89b138ef
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/34eeb7af3cc7c82bcd0291f74b5a9aecc2f1b7cc
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/3a8bab234fc79f763b4fff83c7c51c122cb73a92
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/3d9b592938351112b05b38e649790699b6555591
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/3ff0e5ef71bea278b465ce517eba40f9487e90a0
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/40c2ee3cec844627486313ee3147d9778adecb26
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/418052c42f19e85fbd3bc3428a67ed99577edc1e
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/423a25963500f20052e92a1d368c5b4073562cd3
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/439f62298be458904b543d9ec9dd1105779a2792
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/44b60374026ac3082d5552e05288351be79416c6
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/469baadf20586b44d080774ece492677e39582bf
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/4809570a2b2f805906691e011b9beffe03c8dc68
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/4b55df102046a74e75b3ac7345efaeecda19dc55
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/4ba43c4473a2e24ef66ee6e6d3a083f1e90ecb59
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/4c7465a03792f8ffbc3da94133c575fd0fb609fd
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/4e22436534f7ddda6023610945ad3fb84b08d5f2
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/4efdd9552994e50cf0e8ad8f6869617e3e6df619
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/4f4c26fc8981a82def4bcf89f87acfb7a7dccd12
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/50c35604d27ae3a4ff73ce17b732c0d53a8f349e
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/51211af99f2a4ac87c1c641a12b7a7b959f002e7
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/55011c61bb58706f7b17f11bddc631d7eb42a119
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/551546026dfe20045855431e4c080643ecc649b8
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/57c83eb9c9a089aa1ab86366da0811f717b038f9
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/5a034d850b354a2214b09f0617f30ddaa193d870
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/5c85ceaa041ec1771c68bdfcba6a9cd0a6344948
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/62d6104e71b6395eeaa1b49c4f765b7a60bd6ff1
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/686671b3b022759c727efe542acdfde5fc20ae75
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/690363830d846fde982978f7a272efb319aba9bc
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/69a692732a936cc3828f63652848002b3fe3a435
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/69e22aaa579ee53595e6056db92c810715ceaafd
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/6a57403d937cbde464b34234a7337290f69dc06b
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/6ce6b8051d4a3b36ecb7def5fea922158df41b17
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/6e7d12ff2919fcb6e6bc8abc17704b051cd331f4
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/6fa9f5ebf1422d95d84776798d3daab6392c4373
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/6fefd1d81cf134070c52ded64e18c4af5d6bbf68
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/70ebe0d4b36bbab381551e76da348db86befb8ee
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/717964c88a8f58cded91ceda5f671810d22bdaa2
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/7609c86bdcdf1341dcb7071412941fa5c077721b
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/774167b00ab27912f8e78bfd2e3d39e0239b9873
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/7754fb0cc9a31fd3b039fa813826615451cb93ed
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/7919c53b964111b4ad091f41cec0574d1cb5be68
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/7b224f368d1f355febd30215deaf8fa9b11d48af
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/7b2d2d12df2087abb44a8438f1c7ea308ffe16dc
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/7db619b14a5b41ef2ea72f6ed50bc3222c92008c
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/7fa5a0da8c3d5dbb7c0239d7746dfcc6fa349c44
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/83e1ff87052fcf0a295f517908437ce3ec8c3d12
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/8836449903a9055d2c819f1df8640599fc127141
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/8d004499628b6ed79de469223ab62454203a265f
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/9023a6c7f1c63ff0b75b849e4755330e99203134
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/92c6d71fa16a5bdc100739558de6b93ae1d8a503
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/941b82fe6daa2f4352e40fe63ec19a11476d4ab1
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/9d781a671ecba151d1e1981abba8b786228f6a10
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/a17bf522b252ba23f1ca4b42417aa8f124c1da88
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/a6af46f15f2ed5a6bd386fd3873d2721dc97bc83
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/aac35375179c3d2bb4a989199ff53e61b2932016
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/acadd490cdf801aab3030c05259f236486e220d7
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/acc6d2f9f7675eb304ec822db3f534c598d651c4
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/adb71b5cf8f2be28b6c83bf06cdb7f902484d83c
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/af4f83441796a7ac67555445851416adc02a42d1
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/b753e14020c99abb2881c03dcd804a5dfec839ab
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/bb4531b735c2020482c5129e47a5ea48ed403974
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/c6a3e7f64c82dd3179cda6cead0e6ee9273c1c0f
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/c74d256a196e60a949648988b9356d3a3072ee25
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/c8fdfe97b51c909c756b64690190dcece85be226
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/cfd3a43762d6d2a31623c4ac47f87116230b2476
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/d3428aa728010662173909467f09ebaa06762ade
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/d43e4aeb7c2b693185eb565551026fbb5cd43e1a
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/daf8d904c3ffb96e4a93db65231ce11c8dcbaa13
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/db9c9d5c699d60365433a924be9626ae19554fac
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/dda3319e9709921f533039b5a8cd4b80a7458bae
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/de63782e6e4c00cfca5e67994638d3af631ff36e
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/e0154c05d36e1aa8be5a3565060c16c5e022b32b
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/e02f1cedfa5dcb4f3229efb3b45a77b0e237af19
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/e338a95654d105d4956fcd11f1232714010e6e76
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/e6369f11ef7abb23bbf27d3d8c536da569321ae7
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/eb7d414eb5c3fdc62bd419b096a11731de84225f
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/ed0bd0662d2819ea276b5c2d6bcf35edd70191da
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/ee088a031e6943efb877e9a3b8358a7315fcc703
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/ef4de892e052ae14f2aadd35eeab00429dde5e7e
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/ef8e81dceb5aa848dd47748f5499722188dad63c
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/f2a5bfaea48014d5fc4c581da5ca9f8b85d210fa
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/f4868f08b07effd8338f23a12186e0c39c0004fd
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/f4b0d4c72dc7c7da532f9ea84131a979a6241a55
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/f63e15cd167a055eb187db5fa75d5c296c607fea
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/f8ade6c2559a0cc772f4b2913b8277458e3b8779
 create mode 100644 fuzz/corpus/fuzz_ds_ptree/fc2d9c7fdcca93fe201c398e41f6b31b63365181
 create mode 100644 fuzz/corpus/fuzz_libinjection/0d2f951037b2a99323a6f292bed158dcb84f8525
 create mode 100644 fuzz/corpus/fuzz_libinjection/10
 create mode 100644 fuzz/corpus/fuzz_libinjection/11
 create mode 100644 fuzz/corpus/fuzz_libinjection/15b476de3caa02284e485d66b68081608ae4faf5
 create mode 100644 fuzz/corpus/fuzz_libinjection/1a38ab89c73b1bb6a4d06294c94b413f9ad0822e
 create mode 100644 fuzz/corpus/fuzz_libinjection/2
 create mode 100644 fuzz/corpus/fuzz_libinjection/20
 create mode 100644 fuzz/corpus/fuzz_libinjection/21
 create mode 100644 fuzz/corpus/fuzz_libinjection/22
 create mode 100644 fuzz/corpus/fuzz_libinjection/3
 create mode 100644 fuzz/corpus/fuzz_libinjection/30
 create mode 100644 fuzz/corpus/fuzz_libinjection/31
 create mode 100644 fuzz/corpus/fuzz_libinjection/32
 create mode 100644 fuzz/corpus/fuzz_libinjection/33
 create mode 100644 fuzz/corpus/fuzz_libinjection/33aa651e011ff40ba1edd9950093275800b9a40c
 create mode 100644 fuzz/corpus/fuzz_libinjection/34
 create mode 100644 fuzz/corpus/fuzz_libinjection/3450506a01feb1c676c383da2351d81c95e361b9
 create mode 100644 fuzz/corpus/fuzz_libinjection/35
 create mode 100644 fuzz/corpus/fuzz_libinjection/36
 create mode 100644 fuzz/corpus/fuzz_libinjection/37
 create mode 100644 fuzz/corpus/fuzz_libinjection/38
 create mode 100644 fuzz/corpus/fuzz_libinjection/39
 create mode 100644 fuzz/corpus/fuzz_libinjection/39a9b3ad3544180f4614c356bec4305a940c27bc
 create mode 100644 fuzz/corpus/fuzz_libinjection/4
 create mode 100644 fuzz/corpus/fuzz_libinjection/40
 create mode 100644 fuzz/corpus/fuzz_libinjection/41
 create mode 100644 fuzz/corpus/fuzz_libinjection/42
 create mode 100644 fuzz/corpus/fuzz_libinjection/43
 create mode 100644 fuzz/corpus/fuzz_libinjection/44
 create mode 100644 fuzz/corpus/fuzz_libinjection/45
 create mode 100644 fuzz/corpus/fuzz_libinjection/46
 create mode 100644 fuzz/corpus/fuzz_libinjection/47
 create mode 100644 fuzz/corpus/fuzz_libinjection/48
 create mode 100644 fuzz/corpus/fuzz_libinjection/49
 create mode 100644 fuzz/corpus/fuzz_libinjection/5
 create mode 100644 fuzz/corpus/fuzz_libinjection/50
 create mode 100644 fuzz/corpus/fuzz_libinjection/51
 create mode 100644 fuzz/corpus/fuzz_libinjection/52
 create mode 100644 fuzz/corpus/fuzz_libinjection/5202e03fa50b3bc1b55fb03faa3c26659e6fcee8
 create mode 100644 fuzz/corpus/fuzz_libinjection/53
 create mode 100644 fuzz/corpus/fuzz_libinjection/54
 create mode 100644 fuzz/corpus/fuzz_libinjection/55
 create mode 100644 fuzz/corpus/fuzz_libinjection/56
 create mode 100644 fuzz/corpus/fuzz_libinjection/57
 create mode 100644 fuzz/corpus/fuzz_libinjection/58
 create mode 100644 fuzz/corpus/fuzz_libinjection/59
 create mode 100644 fuzz/corpus/fuzz_libinjection/6
 create mode 100644 fuzz/corpus/fuzz_libinjection/7
 create mode 100644 fuzz/corpus/fuzz_libinjection/8
 create mode 100644 fuzz/corpus/fuzz_libinjection/85e53271e14006f0265921d02d4d736cdc580b0b
 create mode 100644 fuzz/corpus/fuzz_libinjection/9
 create mode 100644 fuzz/corpus/fuzz_libinjection/9d1de8279add3b6d037aa2a801da30d45f91cf8d
 create mode 100644 fuzz/corpus/fuzz_libinjection/c487a9ed6ce4beef9e9ebfa821e7181c68476088
 create mode 100644 fuzz/corpus/fuzz_libinjection/cc7ddbb1c7ce7d7181615313b0c6ac81575c7668
 create mode 100644 fuzz/corpus/fuzz_libinjection/cf98534696ff97a4f2f1f9f96fdfba41cad2057d
 create mode 100644 fuzz/corpus/fuzz_serialization/08e28514b30a7df231e574d430f9207be60081a5
 delete mode 100644 fuzz/corpus/fuzz_serialization/0bd1690046cf11535e1fe7ef887bd881bc26e248
 delete mode 100644 fuzz/corpus/fuzz_serialization/0bf770e429cba6c9fd4e3c5275572951c8bb7b0d
 delete mode 100644 fuzz/corpus/fuzz_serialization/10420923df54bfca05312d5fafaa4189373b4683
 create mode 100644 fuzz/corpus/fuzz_serialization/1aa0ba13369b1e0c11cdfb707ee96bbc0077635f
 create mode 100644 fuzz/corpus/fuzz_serialization/2b88205b31bcff3b918131c9f6accbd0dd820eec
 delete mode 100644 fuzz/corpus/fuzz_serialization/35fb4e382eea90c8483725b23c933d4cc418df47
 create mode 100644 fuzz/corpus/fuzz_serialization/405c78f0be0c46d2888206056cbad22223a9d801
 create mode 100644 fuzz/corpus/fuzz_serialization/4778131281f96295cef3f8c9929d3870d88ac5a8
 delete mode 100644 fuzz/corpus/fuzz_serialization/50ccf2ef2a396f9181f5233cb5943f65308ad506
 create mode 100644 fuzz/corpus/fuzz_serialization/52a719f9d01e6a1882f97bc011e52c80f807e955
 create mode 100644 fuzz/corpus/fuzz_serialization/53e7833e9616f944ea630228d8443ee2f62f647f
 delete mode 100644 fuzz/corpus/fuzz_serialization/54575b941c0641906092a4d2eb88d4b571cd7244
 delete mode 100644 fuzz/corpus/fuzz_serialization/5df39e5d3b76ed758bd70bab5c02fb4b1913565c
 create mode 100644 fuzz/corpus/fuzz_serialization/6046a35020d5b394b3d7458fac00f154e4eb9135
 delete mode 100644 fuzz/corpus/fuzz_serialization/63c9f30967ffc232fd1b52b7b3f0b9a99051e81e
 create mode 100644 fuzz/corpus/fuzz_serialization/77206cbd399692b257926ffad2150642cb10dfbf
 delete mode 100644 fuzz/corpus/fuzz_serialization/82bb3eab86d4063ea4a3cb97821feb07cecf7b72
 delete mode 100644 fuzz/corpus/fuzz_serialization/83631c962f6eb3da79b4ac7c8c7074b8d6227679
 create mode 100644 fuzz/corpus/fuzz_serialization/85d363c3f0967b1c9d3ec9d1038fd1c153a9cb67
 create mode 100644 fuzz/corpus/fuzz_serialization/8ac56fc7a60893ae2e6019bc00644af784c50067
 create mode 100644 fuzz/corpus/fuzz_serialization/97f9c819682d7ddc67733f4ba04511c2005d2660
 create mode 100644 fuzz/corpus/fuzz_serialization/9dae31ee55b9d421f11caa6fd6257faf8b992675
 delete mode 100644 fuzz/corpus/fuzz_serialization/a0de36639862a94a491974369a7c45a16ed4ff6e
 delete mode 100644 fuzz/corpus/fuzz_serialization/a5dd6d24cfa78a8faba860c8806bac4ba7540eff
 delete mode 100644 fuzz/corpus/fuzz_serialization/aa564c1c9f0278ad73a1958433ef4305f9ac71fd
 delete mode 100644 fuzz/corpus/fuzz_serialization/b2107343881e2efae5b729ef8f64234a7d772f3d
 delete mode 100644 fuzz/corpus/fuzz_serialization/b59e95164582a933229e86ed21cbcdd70010faec
 create mode 100644 fuzz/corpus/fuzz_serialization/bcbec15886272236f8be41e4749d352051bd217e
 delete mode 100644 fuzz/corpus/fuzz_serialization/df3387059bc65a41f137c3292737f7c2891ac2a1
 delete mode 100644 fuzz/corpus/fuzz_serialization/eb4911efad5e1499cdfcd23a6e9bab9902b8a05e
 create mode 100644 fuzz/corpus/fuzz_serialization/f0f58b2a1c62c37d7b8bc50a9db2d8d870e8b3a7
 delete mode 100644 fuzz/corpus/fuzz_serialization/f96555266adfc22b92ecd46749406be33e27beaa
 create mode 100644 fuzz/fuzz_alg_bytestream.c
 create mode 100644 fuzz/fuzz_libinjection.c
 create mode 100644 fuzz/ipv4_addresses.txt

diff --git a/.gitignore b/.gitignore
index d4aa51370..12f83d067 100644
--- a/.gitignore
+++ b/.gitignore
@@ -60,6 +60,7 @@
 /fuzz/fuzz_alg_jitter
 /fuzz/fuzz_alg_crc32_md5
 /fuzz/fuzz_alg_ses_des
+/fuzz/fuzz_alg_bytestream
 /fuzz/fuzz_config
 /fuzz/fuzz_community_id
 /fuzz/fuzz_serialization
@@ -68,6 +69,7 @@
 /fuzz/fuzz_ds_tree
 /fuzz/fuzz_ds_ptree
 /fuzz/fuzz_ds_ahocorasick
+/fuzz/fuzz_libinjection
 /fuzz/fuzz_ndpi_reader_alloc_fail_seed_corpus.zip
 /fuzz/fuzz_ndpi_reader_seed_corpus.zip
 /fuzz/fuzz_quic_get_crypto_data_seed_corpus.zip
@@ -80,11 +82,13 @@
 /fuzz/fuzz_alg_jitter_seed_corpus.zip
 /fuzz/fuzz_alg_crc32_md5_seed_corpus.zip
 /fuzz/fuzz_alg_hw_rsi_outliers_da_seed_corpus.zip
+/fuzz/fuzz_alg_bytestream_seed_corpus.zip
 /fuzz/fuzz_ds_patricia_seed_corpus.zip
 /fuzz/fuzz_ds_libcache_seed_corpus.zip
 /fuzz/fuzz_ds_tree_seed_corpus.zip
 /fuzz/fuzz_ds_ptree_seed_corpus.zip
 /fuzz/fuzz_ds_ahocorasick_seed_corpus.zip
+/fuzz/fuzz_libinjection_seed_corpus.zip
 /fuzz/fuzz_*.dict
 /influxdb/Makefile
 /install-sh
diff --git a/fuzz/Makefile.am b/fuzz/Makefile.am
index 6bbc3ca08..7e4e922ee 100644
--- a/fuzz/Makefile.am
+++ b/fuzz/Makefile.am
@@ -1,8 +1,10 @@
 bin_PROGRAMS = fuzz_process_packet fuzz_ndpi_reader fuzz_ndpi_reader_alloc_fail fuzz_quic_get_crypto_data fuzz_config fuzz_community_id fuzz_serialization
 #Alghoritms
-bin_PROGRAMS += fuzz_alg_bins fuzz_alg_hll fuzz_alg_hw_rsi_outliers_da fuzz_alg_jitter fuzz_alg_ses_des fuzz_alg_crc32_md5
+bin_PROGRAMS += fuzz_alg_bins fuzz_alg_hll fuzz_alg_hw_rsi_outliers_da fuzz_alg_jitter fuzz_alg_ses_des fuzz_alg_crc32_md5 fuzz_alg_bytestream
 #Data structures
 bin_PROGRAMS += fuzz_ds_patricia fuzz_ds_ahocorasick fuzz_ds_libcache fuzz_ds_tree fuzz_ds_ptree
+#Third party
+bin_PROGRAMS += fuzz_libinjection
 
 fuzz_process_packet_SOURCES = fuzz_process_packet.c fuzz_common_code.c
 fuzz_process_packet_CFLAGS = @NDPI_CFLAGS@ $(CXXFLAGS)
@@ -174,6 +176,19 @@ fuzz_alg_crc32_md5_LINK=$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
     $(LIBTOOLFLAGS) --mode=link $(CXX) @NDPI_CFLAGS@ $(AM_CXXFLAGS) $(CXXFLAGS) \
     $(fuzz_alg_crc32_md5_LDFLAGS) @NDPI_LDFLAGS@ $(LDFLAGS) -o $@
 
+fuzz_alg_bytestream_SOURCES = fuzz_alg_bytestream.c
+fuzz_alg_bytestream_CFLAGS = @NDPI_CFLAGS@ $(CXXFLAGS)
+fuzz_alg_bytestream_LDADD = ../src/lib/libndpi.a $(ADDITIONAL_LIBS)
+fuzz_alg_bytestream_LDFLAGS = $(LIBS)
+if HAS_FUZZLDFLAGS
+fuzz_alg_bytestream_CFLAGS += $(LIB_FUZZING_ENGINE)
+fuzz_alg_bytestream_LDFLAGS += $(LIB_FUZZING_ENGINE)
+endif
+# force usage of CXX for linker
+fuzz_alg_bytestream_LINK=$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+    $(LIBTOOLFLAGS) --mode=link $(CXX) @NDPI_CFLAGS@ $(AM_CXXFLAGS) $(CXXFLAGS) \
+    $(fuzz_alg_bytestream_LDFLAGS) @NDPI_LDFLAGS@ $(LDFLAGS) -o $@
+
 fuzz_alg_ses_des_SOURCES = fuzz_alg_ses_des.cpp fuzz_common_code.c
 fuzz_alg_ses_des_CXXFLAGS = @NDPI_CFLAGS@ $(CXXFLAGS)
 fuzz_alg_ses_des_CFLAGS = @NDPI_CFLAGS@ $(CXXFLAGS)
@@ -264,6 +279,20 @@ fuzz_ds_ptree_LINK=$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
     $(LIBTOOLFLAGS) --mode=link $(CXX) @NDPI_CFLAGS@ $(AM_CXXFLAGS) $(CXXFLAGS) \
     $(fuzz_ds_ptree_LDFLAGS) @NDPI_LDFLAGS@ $(LDFLAGS) -o $@
 
+fuzz_libinjection_SOURCES = fuzz_libinjection.c
+fuzz_libinjection_CFLAGS = @NDPI_CFLAGS@ $(CXXFLAGS)
+fuzz_libinjection_LDADD = ../src/lib/libndpi.a $(ADDITIONAL_LIBS)
+fuzz_libinjection_LDFLAGS = $(LIBS)
+if HAS_FUZZLDFLAGS
+fuzz_libinjection_CFLAGS += $(LIB_FUZZING_ENGINE)
+fuzz_libinjection_LDFLAGS += $(LIB_FUZZING_ENGINE)
+endif
+# force usage of CXX for linker
+fuzz_libinjection_LINK=$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+    $(LIBTOOLFLAGS) --mode=link $(CXX) @NDPI_CFLAGS@ $(AM_CXXFLAGS) $(CXXFLAGS) \
+    $(fuzz_libinjection_LDFLAGS) @NDPI_LDFLAGS@ $(LDFLAGS) -o $@
+
+
 
 # required for Google oss-fuzz
 # see https://github.com/google/oss-fuzz/tree/master/projects/ndpi
@@ -350,8 +379,18 @@ files_corpus_fuzz_ds_ptree :=  $(wildcard corpus/fuzz_ds_ptree/*)
 fuzz_ds_ptree_seed_corpus.zip: $(files_corpus_fuzz_ds_ptree)
 	zip -j fuzz_ds_ptree_seed_corpus.zip $(files_corpus_fuzz_ds_ptree)
 
+files_corpus_fuzz_alg_bytestream :=  $(wildcard corpus/fuzz_alg_bytestream/*)
+
+fuzz_alg_bytestream_seed_corpus.zip: $(files_corpus_fuzz_alg_bytestream)
+	zip -j fuzz_alg_bytestream_seed_corpus.zip $(files_corpus_fuzz_alg_bytestream)
+
+files_corpus_fuzz_libinjection :=  $(wildcard corpus/fuzz_libinjection/*)
+
+fuzz_libinjection_seed_corpus.zip: $(files_corpus_fuzz_libinjection)
+	zip -j fuzz_libinjection_seed_corpus.zip $(files_corpus_fuzz_libinjection)
+
 
-corpus: fuzz_ndpi_reader_seed_corpus.zip fuzz_ndpi_reader_alloc_fail_seed_corpus.zip fuzz_quic_get_crypto_data_seed_corpus.zip fuzz_config_seed_corpus.zip fuzz_ds_patricia_seed_corpus.zip fuzz_ds_ahocorasick_seed_corpus.zip fuzz_alg_ses_des_seed_corpus.zip fuzz_alg_hw_rsi_outliers_da_seed_corpus.zip fuzz_alg_bins_seed_corpus.zip fuzz_alg_hll_seed_corpus.zip fuzz_alg_jitter_seed_corpus.zip fuzz_ds_libcache_seed_corpus.zip fuzz_community_id_seed_corpus.zip fuzz_ds_tree_seed_corpus.zip fuzz_serialization_seed_corpus.zip fuzz_ds_ptree_seed_corpus.zip fuzz_alg_crc32_md5_seed_corpus.zip
+corpus: fuzz_ndpi_reader_seed_corpus.zip fuzz_ndpi_reader_alloc_fail_seed_corpus.zip fuzz_quic_get_crypto_data_seed_corpus.zip fuzz_config_seed_corpus.zip fuzz_ds_patricia_seed_corpus.zip fuzz_ds_ahocorasick_seed_corpus.zip fuzz_alg_ses_des_seed_corpus.zip fuzz_alg_hw_rsi_outliers_da_seed_corpus.zip fuzz_alg_bins_seed_corpus.zip fuzz_alg_hll_seed_corpus.zip fuzz_alg_jitter_seed_corpus.zip fuzz_ds_libcache_seed_corpus.zip fuzz_community_id_seed_corpus.zip fuzz_ds_tree_seed_corpus.zip fuzz_serialization_seed_corpus.zip fuzz_ds_ptree_seed_corpus.zip fuzz_alg_crc32_md5_seed_corpus.zip fuzz_alg_bytestream_seed_corpus.zip fuzz_libinjection_seed_corpus.zip
 
 #Create dictionaries exactly as expected by oss-fuzz.
 #This way, if we need to change/update/add something,
@@ -368,16 +407,19 @@ distdir:
 		-o -name '*.h' \
 		-o -name '*.cpp' \
 		-o -name '*.dict' \
+		-o -name 'ipv4_addresses.txt' \
 		-o -path './corpus/fuzz_quic_get_crypto_data/*' \
 		-o -path './corpus/fuzz_config/*' \
 		-o -path './corpus/fuzz_serialization/*' \
 		-o -path './corpus/fuzz_community_id/*' \
+		-o -path './corpus/fuzz_libinjection/*' \
 		-o -path './corpus/fuzz_alg_ses_des/*' \
 		-o -path './corpus/fuzz_alg_bins/*' \
 		-o -path './corpus/fuzz_alg_hll/*' \
 		-o -path './corpus/fuzz_alg_jitter/*' \
 		-o -path './corpus/fuzz_alg_crc32_md5/*' \
 		-o -path './corpus/fuzz_alg_hw_rsi_outliers_da/*' \
+		-o -path './corpus/fuzz_alg_bytestream/*' \
 		-o -path './corpus/fuzz_ds_ahocorasick/*' \
 		-o -path './corpus/fuzz_ds_libcache/*' \
 		-o -path './corpus/fuzz_ds_tree/*' \
diff --git a/fuzz/corpus/fuzz_alg_bytestream/00f699c111a4216c827906dddc7e53d2676c436c b/fuzz/corpus/fuzz_alg_bytestream/00f699c111a4216c827906dddc7e53d2676c436c
new file mode 100644
index 000000000..78603a1d9
--- /dev/null
+++ b/fuzz/corpus/fuzz_alg_bytestream/00f699c111a4216c827906dddc7e53d2676c436c
@@ -0,0 +1 @@
+5�70
\ No newline at end of file
diff --git a/fuzz/corpus/fuzz_alg_bytestream/1 b/fuzz/corpus/fuzz_alg_bytestream/1
new file mode 100644
index 000000000..cc503f5be
--- /dev/null
+++ b/fuzz/corpus/fuzz_alg_bytestream/1
@@ -0,0 +1 @@
+59708719594136008472212676481906
diff --git a/fuzz/corpus/fuzz_alg_bytestream/1c45e235b337db8b9e98bf2aa0ee02dde9384efa b/fuzz/corpus/fuzz_alg_bytestream/1c45e235b337db8b9e98bf2aa0ee02dde9384efa
new file mode 100644
index 000000000..6c89c9fb3
--- /dev/null
+++ b/fuzz/corpus/fuzz_alg_bytestream/1c45e235b337db8b9e98bf2aa0ee02dde9384efa
@@ -0,0 +1 @@
+5�705�(770(777
\ No newline at end of file
diff --git a/fuzz/corpus/fuzz_alg_bytestream/2 b/fuzz/corpus/fuzz_alg_bytestream/2
new file mode 100644
index 000000000..a92ac83bd
--- /dev/null
+++ b/fuzz/corpus/fuzz_alg_bytestream/2
@@ -0,0 +1 @@
+2Bba5a7FEEcfced4fbbBfFEe16bfcaA4
diff --git a/fuzz/corpus/fuzz_alg_bytestream/7f6a3512755b96414b7dfe5a21d2952a9cc70333 b/fuzz/corpus/fuzz_alg_bytestream/7f6a3512755b96414b7dfe5a21d2952a9cc70333
new file mode 100644
index 000000000..4474da2e3
--- /dev/null
+++ b/fuzz/corpus/fuzz_alg_bytestream/7f6a3512755b96414b7dfe5a21d2952a9cc70333
@@ -0,0 +1 @@
+5�70(77247�906:
\ No newline at end of file
diff --git a/fuzz/corpus/fuzz_alg_bytestream/b6589fc6ab0dc82cf12099d1c2d40ab994e8410c b/fuzz/corpus/fuzz_alg_bytestream/b6589fc6ab0dc82cf12099d1c2d40ab994e8410c
new file mode 100644
index 000000000..c22708346
--- /dev/null
+++ b/fuzz/corpus/fuzz_alg_bytestream/b6589fc6ab0dc82cf12099d1c2d40ab994e8410c
@@ -0,0 +1 @@
+0
\ No newline at end of file
diff --git a/fuzz/corpus/fuzz_alg_bytestream/b7103ca278a75cad8f7d065acda0c2e80da0b7dc b/fuzz/corpus/fuzz_alg_bytestream/b7103ca278a75cad8f7d065acda0c2e80da0b7dc
new file mode 100644
index 000000000..d7765fe47
--- /dev/null
+++ b/fuzz/corpus/fuzz_alg_bytestream/b7103ca278a75cad8f7d065acda0c2e80da0b7dc
@@ -0,0 +1 @@
+70
\ No newline at end of file
diff --git a/fuzz/corpus/fuzz_alg_bytestream/d2418811df5936bdb530e9c66aca38f4fc6da70c b/fuzz/corpus/fuzz_alg_bytestream/d2418811df5936bdb530e9c66aca38f4fc6da70c
new file mode 100644
index 000000000..90f378613
--- /dev/null
+++ b/fuzz/corpus/fuzz_alg_bytestream/d2418811df5936bdb530e9c66aca38f4fc6da70c
@@ -0,0 +1 @@
+5�700772212676481906:
\ No newline at end of file
diff --git a/fuzz/corpus/fuzz_config/1b27923041cd9943fec04f9e795252294a140884 b/fuzz/corpus/fuzz_config/1b27923041cd9943fec04f9e795252294a140884
deleted file mode 100644
index 75427c8d2..000000000
Binary files a/fuzz/corpus/fuzz_config/1b27923041cd9943fec04f9e795252294a140884 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/1d0509e291e563f66715ddb3476689931516f533 b/fuzz/corpus/fuzz_config/1d0509e291e563f66715ddb3476689931516f533
deleted file mode 100644
index eaafc77ce..000000000
Binary files a/fuzz/corpus/fuzz_config/1d0509e291e563f66715ddb3476689931516f533 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/1de3ce546c3443fb0ba76988f36f1e42c022d603 b/fuzz/corpus/fuzz_config/1de3ce546c3443fb0ba76988f36f1e42c022d603
deleted file mode 100644
index 4317945b7..000000000
Binary files a/fuzz/corpus/fuzz_config/1de3ce546c3443fb0ba76988f36f1e42c022d603 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/290a66605b81b38623979b32de5e552f40732dad b/fuzz/corpus/fuzz_config/290a66605b81b38623979b32de5e552f40732dad
deleted file mode 100644
index 3e80313c5..000000000
Binary files a/fuzz/corpus/fuzz_config/290a66605b81b38623979b32de5e552f40732dad and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/3036bf1df14f0ad0c2b5614e51789f575af97dfb b/fuzz/corpus/fuzz_config/3036bf1df14f0ad0c2b5614e51789f575af97dfb
new file mode 100644
index 000000000..0053008b5
Binary files /dev/null and b/fuzz/corpus/fuzz_config/3036bf1df14f0ad0c2b5614e51789f575af97dfb differ
diff --git a/fuzz/corpus/fuzz_config/3bf49bd80bf3c787f49222fc50c41f48f85fa013 b/fuzz/corpus/fuzz_config/3bf49bd80bf3c787f49222fc50c41f48f85fa013
new file mode 100644
index 000000000..05a402637
Binary files /dev/null and b/fuzz/corpus/fuzz_config/3bf49bd80bf3c787f49222fc50c41f48f85fa013 differ
diff --git a/fuzz/corpus/fuzz_config/3f22430a14710ba1d01f3547b60aded67efb9833 b/fuzz/corpus/fuzz_config/3f22430a14710ba1d01f3547b60aded67efb9833
new file mode 100644
index 000000000..9c2b1e5c6
Binary files /dev/null and b/fuzz/corpus/fuzz_config/3f22430a14710ba1d01f3547b60aded67efb9833 differ
diff --git a/fuzz/corpus/fuzz_config/44446f3b2a2200f31349b0ab61076e52bd8b0efd b/fuzz/corpus/fuzz_config/44446f3b2a2200f31349b0ab61076e52bd8b0efd
deleted file mode 100644
index ab8867878..000000000
Binary files a/fuzz/corpus/fuzz_config/44446f3b2a2200f31349b0ab61076e52bd8b0efd and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/4714c051ed397aa1778184fc9ba513f77f17a511 b/fuzz/corpus/fuzz_config/4714c051ed397aa1778184fc9ba513f77f17a511
new file mode 100644
index 000000000..dffcb7aa1
Binary files /dev/null and b/fuzz/corpus/fuzz_config/4714c051ed397aa1778184fc9ba513f77f17a511 differ
diff --git a/fuzz/corpus/fuzz_config/4e873d14a5b6764f075247f14e69a615a9c702d0 b/fuzz/corpus/fuzz_config/4e873d14a5b6764f075247f14e69a615a9c702d0
new file mode 100644
index 000000000..da1238a44
Binary files /dev/null and b/fuzz/corpus/fuzz_config/4e873d14a5b6764f075247f14e69a615a9c702d0 differ
diff --git a/fuzz/corpus/fuzz_config/579120e2b849fa886d3e00e85da1aadaf012a530 b/fuzz/corpus/fuzz_config/579120e2b849fa886d3e00e85da1aadaf012a530
deleted file mode 100644
index ad41b8e05..000000000
Binary files a/fuzz/corpus/fuzz_config/579120e2b849fa886d3e00e85da1aadaf012a530 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/5eaf59d9cedde7668db1179a10af6d41cfd25acb b/fuzz/corpus/fuzz_config/5eaf59d9cedde7668db1179a10af6d41cfd25acb
deleted file mode 100644
index 6c2ab2319..000000000
Binary files a/fuzz/corpus/fuzz_config/5eaf59d9cedde7668db1179a10af6d41cfd25acb and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/63cf7bf35278ec03c440970b1324abeca2526d14 b/fuzz/corpus/fuzz_config/63cf7bf35278ec03c440970b1324abeca2526d14
deleted file mode 100644
index 60ee5fc13..000000000
Binary files a/fuzz/corpus/fuzz_config/63cf7bf35278ec03c440970b1324abeca2526d14 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/685a648c4186681d6e5a663fa7797d424dd8181e b/fuzz/corpus/fuzz_config/685a648c4186681d6e5a663fa7797d424dd8181e
new file mode 100644
index 000000000..267619009
Binary files /dev/null and b/fuzz/corpus/fuzz_config/685a648c4186681d6e5a663fa7797d424dd8181e differ
diff --git a/fuzz/corpus/fuzz_config/72d80bd288fdbf7f3cce29f635b3d235c0aeaa74 b/fuzz/corpus/fuzz_config/72d80bd288fdbf7f3cce29f635b3d235c0aeaa74
deleted file mode 100644
index 26b3bb838..000000000
Binary files a/fuzz/corpus/fuzz_config/72d80bd288fdbf7f3cce29f635b3d235c0aeaa74 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/76bc4759342543f5312d55d4d6e4133c6d298546 b/fuzz/corpus/fuzz_config/76bc4759342543f5312d55d4d6e4133c6d298546
deleted file mode 100644
index a9a24a5de..000000000
Binary files a/fuzz/corpus/fuzz_config/76bc4759342543f5312d55d4d6e4133c6d298546 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/77281fce6fb40a568b750e97b356153447f92021 b/fuzz/corpus/fuzz_config/77281fce6fb40a568b750e97b356153447f92021
new file mode 100644
index 000000000..23259edba
Binary files /dev/null and b/fuzz/corpus/fuzz_config/77281fce6fb40a568b750e97b356153447f92021 differ
diff --git a/fuzz/corpus/fuzz_config/7b261995a0ed0a8b6ca544edfd56765963d113be b/fuzz/corpus/fuzz_config/7b261995a0ed0a8b6ca544edfd56765963d113be
new file mode 100644
index 000000000..ff311b19c
Binary files /dev/null and b/fuzz/corpus/fuzz_config/7b261995a0ed0a8b6ca544edfd56765963d113be differ
diff --git a/fuzz/corpus/fuzz_config/7f4baf1ac218c942a8dc127ec07b1fc2ac670262 b/fuzz/corpus/fuzz_config/7f4baf1ac218c942a8dc127ec07b1fc2ac670262
deleted file mode 100644
index d1c8e3cbb..000000000
Binary files a/fuzz/corpus/fuzz_config/7f4baf1ac218c942a8dc127ec07b1fc2ac670262 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/828f8f1454722c92c14f9b25ad776eb5e676459c b/fuzz/corpus/fuzz_config/828f8f1454722c92c14f9b25ad776eb5e676459c
new file mode 100644
index 000000000..f7835fe77
Binary files /dev/null and b/fuzz/corpus/fuzz_config/828f8f1454722c92c14f9b25ad776eb5e676459c differ
diff --git a/fuzz/corpus/fuzz_config/8bb38a19254c0d699e4d551a9ff65bc7a99e9a63 b/fuzz/corpus/fuzz_config/8bb38a19254c0d699e4d551a9ff65bc7a99e9a63
new file mode 100644
index 000000000..a9f5bc14c
Binary files /dev/null and b/fuzz/corpus/fuzz_config/8bb38a19254c0d699e4d551a9ff65bc7a99e9a63 differ
diff --git a/fuzz/corpus/fuzz_config/8ce8bfe5ac7addf5e2c5da6794cf5934678dd06c b/fuzz/corpus/fuzz_config/8ce8bfe5ac7addf5e2c5da6794cf5934678dd06c
deleted file mode 100644
index 95230a07a..000000000
--- a/fuzz/corpus/fuzz_config/8ce8bfe5ac7addf5e2c5da6794cf5934678dd06c
+++ /dev/null
@@ -1,3 +0,0 @@
-�P7��돝!�A�V�#�K�QX���)����)!a����,��q��58�e!�A�V�#�K�QX���)����)!a����,��q��58�e��.V߻
P��*Wy��"ڬ��]�%Y�q䠀k��ў
-T��;J3s�O[����5P���v ֈ��3�;k& ��K���,�!+�1�^'��Th���T�4H+-�A3:=���W�0R������]�'�*b;()��O���"2v���G��������������������������������������������������������������������=s���c�p��������.V߻
P��*Wy��"ڬ��]�%Y�q䠀k��ў
-T��;J3s�O[����5P���v ֈ��3�;k& ��K���,�!+�1�^'��Th���T�4H+-�A3:=���W�0R������]�'�*b;()��O���"2v���G��������������������������������������������������������������������=s���c�p������x�fQ�'����,�?��^BT7�7���OP�
6[hw�!^W\��q&k�Q����(����hJi�%�hQK�-����h�	pj�@�
\ No newline at end of file
diff --git a/fuzz/corpus/fuzz_config/907d8cd14928d4035594a91347a407857b868baf b/fuzz/corpus/fuzz_config/907d8cd14928d4035594a91347a407857b868baf
new file mode 100644
index 000000000..394b628e0
Binary files /dev/null and b/fuzz/corpus/fuzz_config/907d8cd14928d4035594a91347a407857b868baf differ
diff --git a/fuzz/corpus/fuzz_config/9220c147a2a2e08183c4fd85d62c7f15247969a6 b/fuzz/corpus/fuzz_config/9220c147a2a2e08183c4fd85d62c7f15247969a6
deleted file mode 100644
index 82d3b40b8..000000000
Binary files a/fuzz/corpus/fuzz_config/9220c147a2a2e08183c4fd85d62c7f15247969a6 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/a79e2ad75b81e48a7e7153d9f1d2a60740e04360 b/fuzz/corpus/fuzz_config/a79e2ad75b81e48a7e7153d9f1d2a60740e04360
new file mode 100644
index 000000000..29e3c6d15
Binary files /dev/null and b/fuzz/corpus/fuzz_config/a79e2ad75b81e48a7e7153d9f1d2a60740e04360 differ
diff --git a/fuzz/corpus/fuzz_config/ae51624e0c6ecf1897244da20a17ef2052058380 b/fuzz/corpus/fuzz_config/ae51624e0c6ecf1897244da20a17ef2052058380
deleted file mode 100644
index 245f446e3..000000000
Binary files a/fuzz/corpus/fuzz_config/ae51624e0c6ecf1897244da20a17ef2052058380 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/b00102178b488b3e299f9465f91093894f4649aa b/fuzz/corpus/fuzz_config/b00102178b488b3e299f9465f91093894f4649aa
deleted file mode 100644
index 3e4aa774b..000000000
Binary files a/fuzz/corpus/fuzz_config/b00102178b488b3e299f9465f91093894f4649aa and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/b160a30be750571b70090c2811c25d0c6ba460d4 b/fuzz/corpus/fuzz_config/b160a30be750571b70090c2811c25d0c6ba460d4
new file mode 100644
index 000000000..22c00b7af
Binary files /dev/null and b/fuzz/corpus/fuzz_config/b160a30be750571b70090c2811c25d0c6ba460d4 differ
diff --git a/fuzz/corpus/fuzz_config/b46ee834ea6b1b6b860bbcc0bfad3de77ec72d32 b/fuzz/corpus/fuzz_config/b46ee834ea6b1b6b860bbcc0bfad3de77ec72d32
new file mode 100644
index 000000000..2b7ced466
Binary files /dev/null and b/fuzz/corpus/fuzz_config/b46ee834ea6b1b6b860bbcc0bfad3de77ec72d32 differ
diff --git a/fuzz/corpus/fuzz_config/c3dac33fc878793d7aa0012b46fbd67584ecfe86 b/fuzz/corpus/fuzz_config/c3dac33fc878793d7aa0012b46fbd67584ecfe86
deleted file mode 100644
index 9e042e98d..000000000
Binary files a/fuzz/corpus/fuzz_config/c3dac33fc878793d7aa0012b46fbd67584ecfe86 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/cbf4471e64914dc5eb45a1de426f42723c703cec b/fuzz/corpus/fuzz_config/cbf4471e64914dc5eb45a1de426f42723c703cec
new file mode 100644
index 000000000..64aa513d2
Binary files /dev/null and b/fuzz/corpus/fuzz_config/cbf4471e64914dc5eb45a1de426f42723c703cec differ
diff --git a/fuzz/corpus/fuzz_config/ccc5d3518a38a1c9c89139202aac46507a7b9f08 b/fuzz/corpus/fuzz_config/ccc5d3518a38a1c9c89139202aac46507a7b9f08
new file mode 100644
index 000000000..cd8e2ffec
Binary files /dev/null and b/fuzz/corpus/fuzz_config/ccc5d3518a38a1c9c89139202aac46507a7b9f08 differ
diff --git a/fuzz/corpus/fuzz_config/d828ee9bc3dc0de65cb5e0ec6091c5e362fbae50 b/fuzz/corpus/fuzz_config/d828ee9bc3dc0de65cb5e0ec6091c5e362fbae50
deleted file mode 100644
index 411e6dfaf..000000000
Binary files a/fuzz/corpus/fuzz_config/d828ee9bc3dc0de65cb5e0ec6091c5e362fbae50 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/e063dec4ae4ac11531c42b97ff54614517327eb1 b/fuzz/corpus/fuzz_config/e063dec4ae4ac11531c42b97ff54614517327eb1
new file mode 100644
index 000000000..fdcee70a9
Binary files /dev/null and b/fuzz/corpus/fuzz_config/e063dec4ae4ac11531c42b97ff54614517327eb1 differ
diff --git a/fuzz/corpus/fuzz_config/e499f9f18ca9edd456fd9efd129dbe0f77caa5a0 b/fuzz/corpus/fuzz_config/e499f9f18ca9edd456fd9efd129dbe0f77caa5a0
deleted file mode 100644
index 1326ea786..000000000
Binary files a/fuzz/corpus/fuzz_config/e499f9f18ca9edd456fd9efd129dbe0f77caa5a0 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/ecf80e7622e869e8783e6bf9be48bc1dd4a61c13 b/fuzz/corpus/fuzz_config/ecf80e7622e869e8783e6bf9be48bc1dd4a61c13
new file mode 100644
index 000000000..8caa90571
Binary files /dev/null and b/fuzz/corpus/fuzz_config/ecf80e7622e869e8783e6bf9be48bc1dd4a61c13 differ
diff --git a/fuzz/corpus/fuzz_config/ee595881722ceecd4931d38b08c66192af4b8e75 b/fuzz/corpus/fuzz_config/ee595881722ceecd4931d38b08c66192af4b8e75
deleted file mode 100644
index ca1dd6b17..000000000
Binary files a/fuzz/corpus/fuzz_config/ee595881722ceecd4931d38b08c66192af4b8e75 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_config/fea0c8b59dc63399afd8a0e6eab1753c444e4833 b/fuzz/corpus/fuzz_config/fea0c8b59dc63399afd8a0e6eab1753c444e4833
new file mode 100644
index 000000000..402b241c1
Binary files /dev/null and b/fuzz/corpus/fuzz_config/fea0c8b59dc63399afd8a0e6eab1753c444e4833 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/02a2b9e7466b872abc5a767eb232dc1d6e4816b8 b/fuzz/corpus/fuzz_ds_ahocorasick/02a2b9e7466b872abc5a767eb232dc1d6e4816b8
new file mode 100644
index 000000000..d96be86e9
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/02a2b9e7466b872abc5a767eb232dc1d6e4816b8 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/03ad53be4d12007e829eac994224f6ca64e7228f b/fuzz/corpus/fuzz_ds_ahocorasick/03ad53be4d12007e829eac994224f6ca64e7228f
new file mode 100644
index 000000000..d1f1291c1
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/03ad53be4d12007e829eac994224f6ca64e7228f differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/043d681d837a34b44d0d622cd5a3622ff02eba72 b/fuzz/corpus/fuzz_ds_ahocorasick/043d681d837a34b44d0d622cd5a3622ff02eba72
deleted file mode 100644
index 933fe7e1a..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/043d681d837a34b44d0d622cd5a3622ff02eba72 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/05d177ca5e93fabb2166bd7c28a8cf6257c67ef4 b/fuzz/corpus/fuzz_ds_ahocorasick/05d177ca5e93fabb2166bd7c28a8cf6257c67ef4
deleted file mode 100644
index a62c0f2a1..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/05d177ca5e93fabb2166bd7c28a8cf6257c67ef4 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/0bed72f62a06502c94ecfc59416de25809b974ae b/fuzz/corpus/fuzz_ds_ahocorasick/0bed72f62a06502c94ecfc59416de25809b974ae
deleted file mode 100644
index 47f73c1bd..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/0bed72f62a06502c94ecfc59416de25809b974ae and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/0fa79cef56c5f4da6b71a32485bbeed91a3e6203 b/fuzz/corpus/fuzz_ds_ahocorasick/0fa79cef56c5f4da6b71a32485bbeed91a3e6203
deleted file mode 100644
index 79f699879..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/0fa79cef56c5f4da6b71a32485bbeed91a3e6203 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/1005b3b07fd38f41a4925e68904601025e717561 b/fuzz/corpus/fuzz_ds_ahocorasick/1005b3b07fd38f41a4925e68904601025e717561
new file mode 100644
index 000000000..ffb285d00
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/1005b3b07fd38f41a4925e68904601025e717561 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/12e3e23dce00d6af75cb1b5cf07ad6b700dab3b7 b/fuzz/corpus/fuzz_ds_ahocorasick/12e3e23dce00d6af75cb1b5cf07ad6b700dab3b7
new file mode 100644
index 000000000..3d25d6e95
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/12e3e23dce00d6af75cb1b5cf07ad6b700dab3b7 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/139cba76bb0199abdb1889c0cf48a14a18ebe9bc b/fuzz/corpus/fuzz_ds_ahocorasick/139cba76bb0199abdb1889c0cf48a14a18ebe9bc
new file mode 100644
index 000000000..28460624d
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/139cba76bb0199abdb1889c0cf48a14a18ebe9bc differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/154a61898521268affa31f6bbe94d924a40818aa b/fuzz/corpus/fuzz_ds_ahocorasick/154a61898521268affa31f6bbe94d924a40818aa
new file mode 100644
index 000000000..ded5e02a7
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/154a61898521268affa31f6bbe94d924a40818aa differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/1cfcca57c0f0390357f1451b8b7fe8e1d30df833 b/fuzz/corpus/fuzz_ds_ahocorasick/1cfcca57c0f0390357f1451b8b7fe8e1d30df833
new file mode 100644
index 000000000..d98cccbe1
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/1cfcca57c0f0390357f1451b8b7fe8e1d30df833 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/1e17f87333b37b4009f70119882d8ab2d665166d b/fuzz/corpus/fuzz_ds_ahocorasick/1e17f87333b37b4009f70119882d8ab2d665166d
new file mode 100644
index 000000000..b0a9a7414
--- /dev/null
+++ b/fuzz/corpus/fuzz_ds_ahocorasick/1e17f87333b37b4009f70119882d8ab2d665166d
@@ -0,0 +1 @@
+����������""""""""""""""""""""""""""""""����������������"""��������������������������������������������������������������������������������������������������""""�b�Mn1y���<���u����������������h�a����������������������������������rrrrrrrr������������������������������������CCCCCCCCCCC�����������������������"""""""""""""""""""""""""""""""""rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr�������������������������������������������������������������������������������������������������������������������������"������������������������������������������������������������������������������������������������������?�CCCCCCCCCSCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC��������������������������������������������������������������������������������������������������������������������CCCCCCCCCCC�����������������������"""""""""""""""""""""""""""""""""��������������&�����������?������xp5�l���q3]��F	,�.����e^!������
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/21c148221b9132dcc37253edcd045ff7c549f7ce b/fuzz/corpus/fuzz_ds_ahocorasick/21c148221b9132dcc37253edcd045ff7c549f7ce
new file mode 100644
index 000000000..f9f86fcdb
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/21c148221b9132dcc37253edcd045ff7c549f7ce differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/2af1bb5979d693feb8d7f60d08d4fdd771ac2718 b/fuzz/corpus/fuzz_ds_ahocorasick/2af1bb5979d693feb8d7f60d08d4fdd771ac2718
new file mode 100644
index 000000000..6602a0164
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/2af1bb5979d693feb8d7f60d08d4fdd771ac2718 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/2c735ad522e229407f1ab8c335118e80b5779830 b/fuzz/corpus/fuzz_ds_ahocorasick/2c735ad522e229407f1ab8c335118e80b5779830
new file mode 100644
index 000000000..980e43c47
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/2c735ad522e229407f1ab8c335118e80b5779830 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/2ff35048123232a78e60d8f3420332b287b0f773 b/fuzz/corpus/fuzz_ds_ahocorasick/2ff35048123232a78e60d8f3420332b287b0f773
deleted file mode 100644
index 20e52873d..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/2ff35048123232a78e60d8f3420332b287b0f773 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/317a2aa594d0853ff202f8057d2653095d8f36ea b/fuzz/corpus/fuzz_ds_ahocorasick/317a2aa594d0853ff202f8057d2653095d8f36ea
deleted file mode 100644
index d07b49d69..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/317a2aa594d0853ff202f8057d2653095d8f36ea and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/336a77464e94ca4c1d7f672bbb67ea7990540d24 b/fuzz/corpus/fuzz_ds_ahocorasick/336a77464e94ca4c1d7f672bbb67ea7990540d24
new file mode 100644
index 000000000..8762f699b
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/336a77464e94ca4c1d7f672bbb67ea7990540d24 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/3f16a014d67b679493f0d58a243024aaaa803e16 b/fuzz/corpus/fuzz_ds_ahocorasick/3f16a014d67b679493f0d58a243024aaaa803e16
deleted file mode 100644
index 67740538d..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/3f16a014d67b679493f0d58a243024aaaa803e16 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/4341e6b065a9cba995c43d99d94f49f0c49ebca1 b/fuzz/corpus/fuzz_ds_ahocorasick/4341e6b065a9cba995c43d99d94f49f0c49ebca1
deleted file mode 100644
index 9bc58b798..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/4341e6b065a9cba995c43d99d94f49f0c49ebca1 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/4412b1a8aff0c488f5c3cc4da1231c2dbdedeb55 b/fuzz/corpus/fuzz_ds_ahocorasick/4412b1a8aff0c488f5c3cc4da1231c2dbdedeb55
new file mode 100644
index 000000000..fa3aa41b0
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/4412b1a8aff0c488f5c3cc4da1231c2dbdedeb55 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/465c2afda08c7da6e343c77d853a940088162b7b b/fuzz/corpus/fuzz_ds_ahocorasick/465c2afda08c7da6e343c77d853a940088162b7b
new file mode 100644
index 000000000..e47153e67
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/465c2afda08c7da6e343c77d853a940088162b7b differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/49535c6efd404f0cbc925547e7d9fb0b069eee79 b/fuzz/corpus/fuzz_ds_ahocorasick/49535c6efd404f0cbc925547e7d9fb0b069eee79
new file mode 100644
index 000000000..e8e96c10c
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/49535c6efd404f0cbc925547e7d9fb0b069eee79 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/4b1fa94f2b83be23347467ab47e05492df185edf b/fuzz/corpus/fuzz_ds_ahocorasick/4b1fa94f2b83be23347467ab47e05492df185edf
new file mode 100644
index 000000000..dc77cec32
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/4b1fa94f2b83be23347467ab47e05492df185edf differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/4b7a0785ffb61d694acf53da91b2b040d9e37e19 b/fuzz/corpus/fuzz_ds_ahocorasick/4b7a0785ffb61d694acf53da91b2b040d9e37e19
new file mode 100644
index 000000000..2f2f59757
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/4b7a0785ffb61d694acf53da91b2b040d9e37e19 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/4d862ee798be8b896adca8810dcaf8cfdd364bc4 b/fuzz/corpus/fuzz_ds_ahocorasick/4d862ee798be8b896adca8810dcaf8cfdd364bc4
deleted file mode 100644
index 2c8b06e01..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/4d862ee798be8b896adca8810dcaf8cfdd364bc4 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/4e383efd4e347ef2d70ea9f6ff688388600a0aca b/fuzz/corpus/fuzz_ds_ahocorasick/4e383efd4e347ef2d70ea9f6ff688388600a0aca
new file mode 100644
index 000000000..e801ae1ea
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/4e383efd4e347ef2d70ea9f6ff688388600a0aca differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/4f19efda0a66facee2c09c94146659f6439f50c4 b/fuzz/corpus/fuzz_ds_ahocorasick/4f19efda0a66facee2c09c94146659f6439f50c4
new file mode 100644
index 000000000..4c515b0fb
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/4f19efda0a66facee2c09c94146659f6439f50c4 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/50a01934a05c3208fbecdda6588b311b983ad082 b/fuzz/corpus/fuzz_ds_ahocorasick/50a01934a05c3208fbecdda6588b311b983ad082
new file mode 100644
index 000000000..2c4cafe23
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/50a01934a05c3208fbecdda6588b311b983ad082 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/60496a70ac884918a0582b59058311721a8b0e2e b/fuzz/corpus/fuzz_ds_ahocorasick/60496a70ac884918a0582b59058311721a8b0e2e
deleted file mode 100644
index 9bd0b9801..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/60496a70ac884918a0582b59058311721a8b0e2e and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/623e38fe802c821ad817b815f808a5492e871c20 b/fuzz/corpus/fuzz_ds_ahocorasick/623e38fe802c821ad817b815f808a5492e871c20
deleted file mode 100644
index 3f87a9d9c..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/623e38fe802c821ad817b815f808a5492e871c20 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/62a749a5d329509d40f4d2060f6bde3f2db4b6de b/fuzz/corpus/fuzz_ds_ahocorasick/62a749a5d329509d40f4d2060f6bde3f2db4b6de
new file mode 100644
index 000000000..98fa4a7fc
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/62a749a5d329509d40f4d2060f6bde3f2db4b6de differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/68c0e323bbd159c19570fd5846920da37c63de3c b/fuzz/corpus/fuzz_ds_ahocorasick/68c0e323bbd159c19570fd5846920da37c63de3c
new file mode 100644
index 000000000..4aa8b37fe
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/68c0e323bbd159c19570fd5846920da37c63de3c differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/69279e4e0b12475f6b9cc6416d37dcbb9a14577a b/fuzz/corpus/fuzz_ds_ahocorasick/69279e4e0b12475f6b9cc6416d37dcbb9a14577a
new file mode 100644
index 000000000..0bbd324a6
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/69279e4e0b12475f6b9cc6416d37dcbb9a14577a differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/6bb2273d12529ab96590014560aeac1d31f2de8d b/fuzz/corpus/fuzz_ds_ahocorasick/6bb2273d12529ab96590014560aeac1d31f2de8d
deleted file mode 100644
index 9593bb36c..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/6bb2273d12529ab96590014560aeac1d31f2de8d and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/6c3cb2bb4ed7b1eeb7989b5924007425b6bf0cd3 b/fuzz/corpus/fuzz_ds_ahocorasick/6c3cb2bb4ed7b1eeb7989b5924007425b6bf0cd3
new file mode 100644
index 000000000..03bf5f604
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/6c3cb2bb4ed7b1eeb7989b5924007425b6bf0cd3 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/6cada63e7ab4c1c89e9ff4b9766ed042158ab707 b/fuzz/corpus/fuzz_ds_ahocorasick/6cada63e7ab4c1c89e9ff4b9766ed042158ab707
deleted file mode 100644
index e2833b678..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/6cada63e7ab4c1c89e9ff4b9766ed042158ab707 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/6db306e691ee4b8e7026ec0d276b0d9b0bc119ee b/fuzz/corpus/fuzz_ds_ahocorasick/6db306e691ee4b8e7026ec0d276b0d9b0bc119ee
new file mode 100644
index 000000000..f583210c9
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/6db306e691ee4b8e7026ec0d276b0d9b0bc119ee differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/6e54438e59553c7ec563261c63ac5a221d6c90e1 b/fuzz/corpus/fuzz_ds_ahocorasick/6e54438e59553c7ec563261c63ac5a221d6c90e1
new file mode 100644
index 000000000..80158c499
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/6e54438e59553c7ec563261c63ac5a221d6c90e1 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/776a3a38cb2120e3d561dfdd9e44fd4238c8bb0f b/fuzz/corpus/fuzz_ds_ahocorasick/776a3a38cb2120e3d561dfdd9e44fd4238c8bb0f
new file mode 100644
index 000000000..91a14ef39
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/776a3a38cb2120e3d561dfdd9e44fd4238c8bb0f differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/777d0616e337cd787f7e1a8eb8b6c9d95ebef769 b/fuzz/corpus/fuzz_ds_ahocorasick/777d0616e337cd787f7e1a8eb8b6c9d95ebef769
deleted file mode 100644
index 34f477b7f..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/777d0616e337cd787f7e1a8eb8b6c9d95ebef769 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/7d6dad61754d37986f02fb4fdebf76c88924b721 b/fuzz/corpus/fuzz_ds_ahocorasick/7d6dad61754d37986f02fb4fdebf76c88924b721
new file mode 100644
index 000000000..7c9c24705
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/7d6dad61754d37986f02fb4fdebf76c88924b721 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/826cb260348830beae2949391e2c1bb7aa6b2c20 b/fuzz/corpus/fuzz_ds_ahocorasick/826cb260348830beae2949391e2c1bb7aa6b2c20
deleted file mode 100644
index cfe5d0454..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/826cb260348830beae2949391e2c1bb7aa6b2c20 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/85bf45ca4b279439c3943964cd04887a2efcd494 b/fuzz/corpus/fuzz_ds_ahocorasick/85bf45ca4b279439c3943964cd04887a2efcd494
new file mode 100644
index 000000000..1b6a1a38b
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/85bf45ca4b279439c3943964cd04887a2efcd494 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/8a6b341220525d524375490a4e69a3500212a2a5 b/fuzz/corpus/fuzz_ds_ahocorasick/8a6b341220525d524375490a4e69a3500212a2a5
deleted file mode 100644
index 805d69868..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/8a6b341220525d524375490a4e69a3500212a2a5 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/8dfbb3915b3b637fb1502c2ee3e2e415fce3fb17 b/fuzz/corpus/fuzz_ds_ahocorasick/8dfbb3915b3b637fb1502c2ee3e2e415fce3fb17
new file mode 100644
index 000000000..3865f0993
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/8dfbb3915b3b637fb1502c2ee3e2e415fce3fb17 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/8e1036e187eeeddcc7fd08d7c6ff1b4205b1f355 b/fuzz/corpus/fuzz_ds_ahocorasick/8e1036e187eeeddcc7fd08d7c6ff1b4205b1f355
deleted file mode 100644
index 719bd2604..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/8e1036e187eeeddcc7fd08d7c6ff1b4205b1f355 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/91f71999712440ca5447391852cdad9be5d9518e b/fuzz/corpus/fuzz_ds_ahocorasick/91f71999712440ca5447391852cdad9be5d9518e
new file mode 100644
index 000000000..7b59b5a3c
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/91f71999712440ca5447391852cdad9be5d9518e differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/9716238edba975d8983a50ebe002ede8f36f0ef3 b/fuzz/corpus/fuzz_ds_ahocorasick/9716238edba975d8983a50ebe002ede8f36f0ef3
new file mode 100644
index 000000000..7f8daaace
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/9716238edba975d8983a50ebe002ede8f36f0ef3 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/97c2cafc5d282ddaa6138dc3f1c7bc4a38a93d8e b/fuzz/corpus/fuzz_ds_ahocorasick/97c2cafc5d282ddaa6138dc3f1c7bc4a38a93d8e
new file mode 100644
index 000000000..67fc3a71f
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/97c2cafc5d282ddaa6138dc3f1c7bc4a38a93d8e differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/99b476c3cb17d01f8cfea2f61d4520b847e07c38 b/fuzz/corpus/fuzz_ds_ahocorasick/99b476c3cb17d01f8cfea2f61d4520b847e07c38
deleted file mode 100644
index 035b5ec8b..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/99b476c3cb17d01f8cfea2f61d4520b847e07c38 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/9c27bb866b16349315305294074ae44bff7e54ad b/fuzz/corpus/fuzz_ds_ahocorasick/9c27bb866b16349315305294074ae44bff7e54ad
deleted file mode 100644
index 516cbaccc..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/9c27bb866b16349315305294074ae44bff7e54ad and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/9cfc93d48121339ddf7f0207fda639895afcee9a b/fuzz/corpus/fuzz_ds_ahocorasick/9cfc93d48121339ddf7f0207fda639895afcee9a
new file mode 100644
index 000000000..89c70207d
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/9cfc93d48121339ddf7f0207fda639895afcee9a differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/a09384231aff9f82af04ee38e22349ab7fd1a555 b/fuzz/corpus/fuzz_ds_ahocorasick/a09384231aff9f82af04ee38e22349ab7fd1a555
deleted file mode 100644
index 3aed802ef..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/a09384231aff9f82af04ee38e22349ab7fd1a555 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/a0bc9499c818ee2793d68d8c1569cbdaefc4fd81 b/fuzz/corpus/fuzz_ds_ahocorasick/a0bc9499c818ee2793d68d8c1569cbdaefc4fd81
new file mode 100644
index 000000000..460c96f01
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/a0bc9499c818ee2793d68d8c1569cbdaefc4fd81 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/a225fb40652e717735e19cb581b689ff4cc10a94 b/fuzz/corpus/fuzz_ds_ahocorasick/a225fb40652e717735e19cb581b689ff4cc10a94
deleted file mode 100644
index 5fa3929dd..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/a225fb40652e717735e19cb581b689ff4cc10a94 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/a3a4c2a17536c11c7ba9126fb67b5eb9b5199f58 b/fuzz/corpus/fuzz_ds_ahocorasick/a3a4c2a17536c11c7ba9126fb67b5eb9b5199f58
deleted file mode 100644
index e80693b5d..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/a3a4c2a17536c11c7ba9126fb67b5eb9b5199f58 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/a4bf32e5ce76c8a6684d02b1193a9ae4384e7f1a b/fuzz/corpus/fuzz_ds_ahocorasick/a4bf32e5ce76c8a6684d02b1193a9ae4384e7f1a
deleted file mode 100644
index e7c26c581..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/a4bf32e5ce76c8a6684d02b1193a9ae4384e7f1a and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/abe0c48360d8463fe9e1434c351266db57fdbb32 b/fuzz/corpus/fuzz_ds_ahocorasick/abe0c48360d8463fe9e1434c351266db57fdbb32
deleted file mode 100644
index 6801fded6..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/abe0c48360d8463fe9e1434c351266db57fdbb32 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/ad877afa0d998ba233fa2d47b46b417e3427d76e b/fuzz/corpus/fuzz_ds_ahocorasick/ad877afa0d998ba233fa2d47b46b417e3427d76e
deleted file mode 100644
index 5889844c6..000000000
--- a/fuzz/corpus/fuzz_ds_ahocorasick/ad877afa0d998ba233fa2d47b46b417e3427d76e
+++ /dev/null
@@ -1 +0,0 @@
-��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""��������������������������������������������������������""""""""""""""""""""""""""""""""""""�����������������""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""������������������������"""""""""""""""""""""""""���������������"""""""""""""""��������������������������""""""""""""""""""""""""""""""�����������������������������������������������������������������������������������""""""""""""""""""""""""""""""���������������������������������������������������������������������������������������MLLLL���"""""""""""""""""""""""""""""""""""""""""""""""""""""""""�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������""""""""""""""""""""""""""""""""""""""""""""�����������������������������"���������������������"""""""""""
\ No newline at end of file
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/b3bdaaa1e6135890da0da803d628ac73de03c388 b/fuzz/corpus/fuzz_ds_ahocorasick/b3bdaaa1e6135890da0da803d628ac73de03c388
new file mode 100644
index 000000000..162e70d3a
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/b3bdaaa1e6135890da0da803d628ac73de03c388 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/b45a0a9f2a405c5dd5d214636d65db272ec49bae b/fuzz/corpus/fuzz_ds_ahocorasick/b45a0a9f2a405c5dd5d214636d65db272ec49bae
deleted file mode 100644
index 6927d0934..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/b45a0a9f2a405c5dd5d214636d65db272ec49bae and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/b5be0470cc34038240a5e46a8a303bc682547c7d b/fuzz/corpus/fuzz_ds_ahocorasick/b5be0470cc34038240a5e46a8a303bc682547c7d
new file mode 100644
index 000000000..d83e0dc62
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/b5be0470cc34038240a5e46a8a303bc682547c7d differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/b94d5b2cf966cf52e69f56b6da301cb3e6c69113 b/fuzz/corpus/fuzz_ds_ahocorasick/b94d5b2cf966cf52e69f56b6da301cb3e6c69113
new file mode 100644
index 000000000..3f58be0fc
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/b94d5b2cf966cf52e69f56b6da301cb3e6c69113 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/b9b62c2834f059a0cecc77a1b2ead0bebf9802b1 b/fuzz/corpus/fuzz_ds_ahocorasick/b9b62c2834f059a0cecc77a1b2ead0bebf9802b1
new file mode 100644
index 000000000..c8c233a78
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/b9b62c2834f059a0cecc77a1b2ead0bebf9802b1 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/ba7bccc10810a844ef20acb4d45f23653f1ed4cc b/fuzz/corpus/fuzz_ds_ahocorasick/ba7bccc10810a844ef20acb4d45f23653f1ed4cc
deleted file mode 100644
index 126cf9251..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/ba7bccc10810a844ef20acb4d45f23653f1ed4cc and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/c012a2977323790cbc2c8b57d09ebf097547bb04 b/fuzz/corpus/fuzz_ds_ahocorasick/c012a2977323790cbc2c8b57d09ebf097547bb04
deleted file mode 100644
index c8fa129fb..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/c012a2977323790cbc2c8b57d09ebf097547bb04 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/c09a9b5c79f1b7f7925e3071f1b2489f208ffe9d b/fuzz/corpus/fuzz_ds_ahocorasick/c09a9b5c79f1b7f7925e3071f1b2489f208ffe9d
deleted file mode 100644
index e8809ab75..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/c09a9b5c79f1b7f7925e3071f1b2489f208ffe9d and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/c9c7120c7fb44d074f838921e3a4eca2277f23a5 b/fuzz/corpus/fuzz_ds_ahocorasick/c9c7120c7fb44d074f838921e3a4eca2277f23a5
new file mode 100644
index 000000000..db0e951d9
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/c9c7120c7fb44d074f838921e3a4eca2277f23a5 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/cb82a4ccd0559b84f3003fa9a4f5fbc685f7eabc b/fuzz/corpus/fuzz_ds_ahocorasick/cb82a4ccd0559b84f3003fa9a4f5fbc685f7eabc
new file mode 100644
index 000000000..e08be7919
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/cb82a4ccd0559b84f3003fa9a4f5fbc685f7eabc differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/ce4eea6ae2e470659e758c9649271a641e56c8cc b/fuzz/corpus/fuzz_ds_ahocorasick/ce4eea6ae2e470659e758c9649271a641e56c8cc
new file mode 100644
index 000000000..00fed7691
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/ce4eea6ae2e470659e758c9649271a641e56c8cc differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/cea18c331ca6cec59fd099065629fb2d9cfb7e0a b/fuzz/corpus/fuzz_ds_ahocorasick/cea18c331ca6cec59fd099065629fb2d9cfb7e0a
new file mode 100644
index 000000000..051ff6aac
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/cea18c331ca6cec59fd099065629fb2d9cfb7e0a differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/cf90e33cc0801d4f52015247dcdcee00ae210a0a b/fuzz/corpus/fuzz_ds_ahocorasick/cf90e33cc0801d4f52015247dcdcee00ae210a0a
new file mode 100644
index 000000000..689805f37
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/cf90e33cc0801d4f52015247dcdcee00ae210a0a differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/d18c1455e3dbc31d072706e4105b576e3b4af411 b/fuzz/corpus/fuzz_ds_ahocorasick/d18c1455e3dbc31d072706e4105b576e3b4af411
deleted file mode 100644
index a3e6ed198..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/d18c1455e3dbc31d072706e4105b576e3b4af411 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/d2b95e4312fd14b0953a7c9c8985929f78e6aabc b/fuzz/corpus/fuzz_ds_ahocorasick/d2b95e4312fd14b0953a7c9c8985929f78e6aabc
new file mode 100644
index 000000000..b65117398
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/d2b95e4312fd14b0953a7c9c8985929f78e6aabc differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/d4313c17a49f5e1e6db729b57fc49c50d5010864 b/fuzz/corpus/fuzz_ds_ahocorasick/d4313c17a49f5e1e6db729b57fc49c50d5010864
deleted file mode 100644
index a1637ffa2..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/d4313c17a49f5e1e6db729b57fc49c50d5010864 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/d63453082276852db11afb5ce6a7aeec380ed457 b/fuzz/corpus/fuzz_ds_ahocorasick/d63453082276852db11afb5ce6a7aeec380ed457
new file mode 100644
index 000000000..895d117b8
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/d63453082276852db11afb5ce6a7aeec380ed457 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/d85ba3fe4414a8294c41a5479ca9dd27a3294b76 b/fuzz/corpus/fuzz_ds_ahocorasick/d85ba3fe4414a8294c41a5479ca9dd27a3294b76
deleted file mode 100644
index 25bfa7852..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/d85ba3fe4414a8294c41a5479ca9dd27a3294b76 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/dadda676c596fc0295f52af417ed755de1701ecb b/fuzz/corpus/fuzz_ds_ahocorasick/dadda676c596fc0295f52af417ed755de1701ecb
deleted file mode 100644
index 75c2387b3..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/dadda676c596fc0295f52af417ed755de1701ecb and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/dcf51a934b620b5cc212780823070ebd50dbdc16 b/fuzz/corpus/fuzz_ds_ahocorasick/dcf51a934b620b5cc212780823070ebd50dbdc16
new file mode 100644
index 000000000..dc31821f9
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/dcf51a934b620b5cc212780823070ebd50dbdc16 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/ddc1f7e2ab9fbad16aefbcecfa50615135555eea b/fuzz/corpus/fuzz_ds_ahocorasick/ddc1f7e2ab9fbad16aefbcecfa50615135555eea
deleted file mode 100644
index 502c7c00b..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/ddc1f7e2ab9fbad16aefbcecfa50615135555eea and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/de42ae3f925cb1591c116e7deea6ed5846e035b5 b/fuzz/corpus/fuzz_ds_ahocorasick/de42ae3f925cb1591c116e7deea6ed5846e035b5
deleted file mode 100644
index aaf8a1002..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/de42ae3f925cb1591c116e7deea6ed5846e035b5 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/e3866ba1859eec0377c563931cd0bdb372d109b6 b/fuzz/corpus/fuzz_ds_ahocorasick/e3866ba1859eec0377c563931cd0bdb372d109b6
new file mode 100644
index 000000000..64d5668e1
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/e3866ba1859eec0377c563931cd0bdb372d109b6 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/e779274511b5fd28af45a5929b3ba1ff4cdd8ed5 b/fuzz/corpus/fuzz_ds_ahocorasick/e779274511b5fd28af45a5929b3ba1ff4cdd8ed5
deleted file mode 100644
index 7c31566a1..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/e779274511b5fd28af45a5929b3ba1ff4cdd8ed5 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/e95a74bccef2fa04191002aa3f1576c8ce8462e0 b/fuzz/corpus/fuzz_ds_ahocorasick/e95a74bccef2fa04191002aa3f1576c8ce8462e0
deleted file mode 100644
index 4571cff48..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/e95a74bccef2fa04191002aa3f1576c8ce8462e0 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/ea586988a98b6744558e063100765eaa0a9bee69 b/fuzz/corpus/fuzz_ds_ahocorasick/ea586988a98b6744558e063100765eaa0a9bee69
new file mode 100644
index 000000000..e95262476
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/ea586988a98b6744558e063100765eaa0a9bee69 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/ececf77f65af9b9ea5f90022a540b77b386d64b7 b/fuzz/corpus/fuzz_ds_ahocorasick/ececf77f65af9b9ea5f90022a540b77b386d64b7
deleted file mode 100644
index 029fc9d1b..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/ececf77f65af9b9ea5f90022a540b77b386d64b7 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/f0249dacbe8a06a608cf6c0cf8973c9901771eac b/fuzz/corpus/fuzz_ds_ahocorasick/f0249dacbe8a06a608cf6c0cf8973c9901771eac
deleted file mode 100644
index 11638819a..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/f0249dacbe8a06a608cf6c0cf8973c9901771eac and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/f20fd0903488d8969146fe8f8fdaa24f55280593 b/fuzz/corpus/fuzz_ds_ahocorasick/f20fd0903488d8969146fe8f8fdaa24f55280593
deleted file mode 100644
index 04508b6da..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/f20fd0903488d8969146fe8f8fdaa24f55280593 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/f26b8ac9baea4eae0f6682e8de949106265a8ec1 b/fuzz/corpus/fuzz_ds_ahocorasick/f26b8ac9baea4eae0f6682e8de949106265a8ec1
new file mode 100644
index 000000000..8a859bae6
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/f26b8ac9baea4eae0f6682e8de949106265a8ec1 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/f29d76560d2c84ccbfe2481bd9c56f1082b477f4 b/fuzz/corpus/fuzz_ds_ahocorasick/f29d76560d2c84ccbfe2481bd9c56f1082b477f4
new file mode 100644
index 000000000..f5ddc8909
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/f29d76560d2c84ccbfe2481bd9c56f1082b477f4 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/f3ecb935c9d00b5fc46918835fa0f84cef89e58d b/fuzz/corpus/fuzz_ds_ahocorasick/f3ecb935c9d00b5fc46918835fa0f84cef89e58d
deleted file mode 100644
index ec0ab5910..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/f3ecb935c9d00b5fc46918835fa0f84cef89e58d and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/f5182a61a5cd67e087328b227ab48da7833f83e0 b/fuzz/corpus/fuzz_ds_ahocorasick/f5182a61a5cd67e087328b227ab48da7833f83e0
deleted file mode 100644
index 22da5eecc..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/f5182a61a5cd67e087328b227ab48da7833f83e0 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/f6dca2adfd75f73ada3c68ff46300fa50410f5d3 b/fuzz/corpus/fuzz_ds_ahocorasick/f6dca2adfd75f73ada3c68ff46300fa50410f5d3
deleted file mode 100644
index cda8d752d..000000000
Binary files a/fuzz/corpus/fuzz_ds_ahocorasick/f6dca2adfd75f73ada3c68ff46300fa50410f5d3 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/f73678f30e5424ea5b4166929554be60b49348c9 b/fuzz/corpus/fuzz_ds_ahocorasick/f73678f30e5424ea5b4166929554be60b49348c9
new file mode 100644
index 000000000..f3d08a6b6
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/f73678f30e5424ea5b4166929554be60b49348c9 differ
diff --git a/fuzz/corpus/fuzz_ds_ahocorasick/fb6dbdd81d0b399df74d81878cde95c566a7306f b/fuzz/corpus/fuzz_ds_ahocorasick/fb6dbdd81d0b399df74d81878cde95c566a7306f
new file mode 100644
index 000000000..8539c2df6
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ahocorasick/fb6dbdd81d0b399df74d81878cde95c566a7306f differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/00b3152badbdc709990d63ccec1805739bbf8447 b/fuzz/corpus/fuzz_ds_ptree/00b3152badbdc709990d63ccec1805739bbf8447
new file mode 100644
index 000000000..67b27a493
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/00b3152badbdc709990d63ccec1805739bbf8447 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/0140b979ed7fbc87e8a647e82173dca8339462ee b/fuzz/corpus/fuzz_ds_ptree/0140b979ed7fbc87e8a647e82173dca8339462ee
new file mode 100644
index 000000000..9e95a2dc3
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/0140b979ed7fbc87e8a647e82173dca8339462ee differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/06b73472d2ec64afd11c3a77d550d7806b33809c b/fuzz/corpus/fuzz_ds_ptree/06b73472d2ec64afd11c3a77d550d7806b33809c
new file mode 100644
index 000000000..046c66ee1
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/06b73472d2ec64afd11c3a77d550d7806b33809c differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/078d6985462cfd48d06f42c78d277a9932efcef6 b/fuzz/corpus/fuzz_ds_ptree/078d6985462cfd48d06f42c78d277a9932efcef6
new file mode 100644
index 000000000..a4d1bdfb4
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/078d6985462cfd48d06f42c78d277a9932efcef6 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/07b7c84ba855992f14c05c1ed0b11acfae308978 b/fuzz/corpus/fuzz_ds_ptree/07b7c84ba855992f14c05c1ed0b11acfae308978
new file mode 100644
index 000000000..4a5f324ee
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/07b7c84ba855992f14c05c1ed0b11acfae308978 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/0ab182d56e9d758677f771f7731a01d48612723f b/fuzz/corpus/fuzz_ds_ptree/0ab182d56e9d758677f771f7731a01d48612723f
new file mode 100644
index 000000000..58bd69ba6
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/0ab182d56e9d758677f771f7731a01d48612723f differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/14b9090f67d5b756f140734ccd18624bfd6379a1 b/fuzz/corpus/fuzz_ds_ptree/14b9090f67d5b756f140734ccd18624bfd6379a1
new file mode 100644
index 000000000..41b79aa88
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/14b9090f67d5b756f140734ccd18624bfd6379a1 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/15362103ab120b70ce6256c5b112cf5089f2e809 b/fuzz/corpus/fuzz_ds_ptree/15362103ab120b70ce6256c5b112cf5089f2e809
new file mode 100644
index 000000000..a1b7d58d6
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/15362103ab120b70ce6256c5b112cf5089f2e809 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/1a2ddc134226abd613c6b5f804b14987c5fb91bb b/fuzz/corpus/fuzz_ds_ptree/1a2ddc134226abd613c6b5f804b14987c5fb91bb
new file mode 100644
index 000000000..4edc4a610
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/1a2ddc134226abd613c6b5f804b14987c5fb91bb differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/1c3e3a97a50cfceb9863f940fb59e7534cebc4b4 b/fuzz/corpus/fuzz_ds_ptree/1c3e3a97a50cfceb9863f940fb59e7534cebc4b4
new file mode 100644
index 000000000..71c1594ce
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/1c3e3a97a50cfceb9863f940fb59e7534cebc4b4 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/1e0d6060af6d68f7c5df21ec2a3268cecfcebdfa b/fuzz/corpus/fuzz_ds_ptree/1e0d6060af6d68f7c5df21ec2a3268cecfcebdfa
new file mode 100644
index 000000000..b7a8759c3
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/1e0d6060af6d68f7c5df21ec2a3268cecfcebdfa differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/1f7a617ab67da069c0ee8143b8c626c6f935abdd b/fuzz/corpus/fuzz_ds_ptree/1f7a617ab67da069c0ee8143b8c626c6f935abdd
new file mode 100644
index 000000000..23fb57647
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/1f7a617ab67da069c0ee8143b8c626c6f935abdd differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/2165ddc96b4ccbdedc8b78a41407864f9f26d895 b/fuzz/corpus/fuzz_ds_ptree/2165ddc96b4ccbdedc8b78a41407864f9f26d895
new file mode 100644
index 000000000..230db99bc
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/2165ddc96b4ccbdedc8b78a41407864f9f26d895 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/22386051c86870ad59d65af6f8da5921cca20d5b b/fuzz/corpus/fuzz_ds_ptree/22386051c86870ad59d65af6f8da5921cca20d5b
new file mode 100644
index 000000000..103958d39
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/22386051c86870ad59d65af6f8da5921cca20d5b differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/25732e2c49101274529cb4769426330f1b958401 b/fuzz/corpus/fuzz_ds_ptree/25732e2c49101274529cb4769426330f1b958401
new file mode 100644
index 000000000..cfdee63c3
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/25732e2c49101274529cb4769426330f1b958401 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/2902833756445148e2151d93a3bf8ab0cd269aac b/fuzz/corpus/fuzz_ds_ptree/2902833756445148e2151d93a3bf8ab0cd269aac
new file mode 100644
index 000000000..aadd6ef56
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/2902833756445148e2151d93a3bf8ab0cd269aac differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/2a1b15b3f0056aeb9a5aa89d77a903dfccd0b02a b/fuzz/corpus/fuzz_ds_ptree/2a1b15b3f0056aeb9a5aa89d77a903dfccd0b02a
new file mode 100644
index 000000000..da624fd1c
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/2a1b15b3f0056aeb9a5aa89d77a903dfccd0b02a differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/2bea75e47b90c2aca274af658e79a8973d2a7e76 b/fuzz/corpus/fuzz_ds_ptree/2bea75e47b90c2aca274af658e79a8973d2a7e76
new file mode 100644
index 000000000..b793c6593
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/2bea75e47b90c2aca274af658e79a8973d2a7e76 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/2ce6b2c8d3c010b2a9c76165440c1a7ce3abc6b1 b/fuzz/corpus/fuzz_ds_ptree/2ce6b2c8d3c010b2a9c76165440c1a7ce3abc6b1
new file mode 100644
index 000000000..2ecd301b3
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/2ce6b2c8d3c010b2a9c76165440c1a7ce3abc6b1 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/2eb452be460a03159aa28c90eaf83e719a69d74b b/fuzz/corpus/fuzz_ds_ptree/2eb452be460a03159aa28c90eaf83e719a69d74b
new file mode 100644
index 000000000..8e95beec4
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/2eb452be460a03159aa28c90eaf83e719a69d74b differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/3301381edefd92364acf23b142eacbaf89b138ef b/fuzz/corpus/fuzz_ds_ptree/3301381edefd92364acf23b142eacbaf89b138ef
new file mode 100644
index 000000000..74ffd4dd0
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/3301381edefd92364acf23b142eacbaf89b138ef differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/34eeb7af3cc7c82bcd0291f74b5a9aecc2f1b7cc b/fuzz/corpus/fuzz_ds_ptree/34eeb7af3cc7c82bcd0291f74b5a9aecc2f1b7cc
new file mode 100644
index 000000000..94eb83e68
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/34eeb7af3cc7c82bcd0291f74b5a9aecc2f1b7cc differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/3a8bab234fc79f763b4fff83c7c51c122cb73a92 b/fuzz/corpus/fuzz_ds_ptree/3a8bab234fc79f763b4fff83c7c51c122cb73a92
new file mode 100644
index 000000000..33335ac28
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/3a8bab234fc79f763b4fff83c7c51c122cb73a92 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/3d9b592938351112b05b38e649790699b6555591 b/fuzz/corpus/fuzz_ds_ptree/3d9b592938351112b05b38e649790699b6555591
new file mode 100644
index 000000000..0132d7e79
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/3d9b592938351112b05b38e649790699b6555591 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/3ff0e5ef71bea278b465ce517eba40f9487e90a0 b/fuzz/corpus/fuzz_ds_ptree/3ff0e5ef71bea278b465ce517eba40f9487e90a0
new file mode 100644
index 000000000..c54ac9996
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/3ff0e5ef71bea278b465ce517eba40f9487e90a0 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/40c2ee3cec844627486313ee3147d9778adecb26 b/fuzz/corpus/fuzz_ds_ptree/40c2ee3cec844627486313ee3147d9778adecb26
new file mode 100644
index 000000000..67f2d218e
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/40c2ee3cec844627486313ee3147d9778adecb26 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/418052c42f19e85fbd3bc3428a67ed99577edc1e b/fuzz/corpus/fuzz_ds_ptree/418052c42f19e85fbd3bc3428a67ed99577edc1e
new file mode 100644
index 000000000..b97d132b1
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/418052c42f19e85fbd3bc3428a67ed99577edc1e differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/423a25963500f20052e92a1d368c5b4073562cd3 b/fuzz/corpus/fuzz_ds_ptree/423a25963500f20052e92a1d368c5b4073562cd3
new file mode 100644
index 000000000..4f918f58b
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/423a25963500f20052e92a1d368c5b4073562cd3 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/439f62298be458904b543d9ec9dd1105779a2792 b/fuzz/corpus/fuzz_ds_ptree/439f62298be458904b543d9ec9dd1105779a2792
new file mode 100644
index 000000000..578c22494
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/439f62298be458904b543d9ec9dd1105779a2792 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/44b60374026ac3082d5552e05288351be79416c6 b/fuzz/corpus/fuzz_ds_ptree/44b60374026ac3082d5552e05288351be79416c6
new file mode 100644
index 000000000..8f8d4f1da
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/44b60374026ac3082d5552e05288351be79416c6 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/469baadf20586b44d080774ece492677e39582bf b/fuzz/corpus/fuzz_ds_ptree/469baadf20586b44d080774ece492677e39582bf
new file mode 100644
index 000000000..494fdd48f
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/469baadf20586b44d080774ece492677e39582bf differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/4809570a2b2f805906691e011b9beffe03c8dc68 b/fuzz/corpus/fuzz_ds_ptree/4809570a2b2f805906691e011b9beffe03c8dc68
new file mode 100644
index 000000000..778a01b1a
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/4809570a2b2f805906691e011b9beffe03c8dc68 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/4b55df102046a74e75b3ac7345efaeecda19dc55 b/fuzz/corpus/fuzz_ds_ptree/4b55df102046a74e75b3ac7345efaeecda19dc55
new file mode 100644
index 000000000..29a0e75c4
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/4b55df102046a74e75b3ac7345efaeecda19dc55 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/4ba43c4473a2e24ef66ee6e6d3a083f1e90ecb59 b/fuzz/corpus/fuzz_ds_ptree/4ba43c4473a2e24ef66ee6e6d3a083f1e90ecb59
new file mode 100644
index 000000000..ba21a3bc3
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/4ba43c4473a2e24ef66ee6e6d3a083f1e90ecb59 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/4c7465a03792f8ffbc3da94133c575fd0fb609fd b/fuzz/corpus/fuzz_ds_ptree/4c7465a03792f8ffbc3da94133c575fd0fb609fd
new file mode 100644
index 000000000..e41c249b6
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/4c7465a03792f8ffbc3da94133c575fd0fb609fd differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/4e22436534f7ddda6023610945ad3fb84b08d5f2 b/fuzz/corpus/fuzz_ds_ptree/4e22436534f7ddda6023610945ad3fb84b08d5f2
new file mode 100644
index 000000000..d825e1ad7
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/4e22436534f7ddda6023610945ad3fb84b08d5f2 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/4efdd9552994e50cf0e8ad8f6869617e3e6df619 b/fuzz/corpus/fuzz_ds_ptree/4efdd9552994e50cf0e8ad8f6869617e3e6df619
new file mode 100644
index 000000000..d81164ed6
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/4efdd9552994e50cf0e8ad8f6869617e3e6df619 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/4f4c26fc8981a82def4bcf89f87acfb7a7dccd12 b/fuzz/corpus/fuzz_ds_ptree/4f4c26fc8981a82def4bcf89f87acfb7a7dccd12
new file mode 100644
index 000000000..b5e57a2a0
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/4f4c26fc8981a82def4bcf89f87acfb7a7dccd12 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/50c35604d27ae3a4ff73ce17b732c0d53a8f349e b/fuzz/corpus/fuzz_ds_ptree/50c35604d27ae3a4ff73ce17b732c0d53a8f349e
new file mode 100644
index 000000000..fbcbef8fa
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/50c35604d27ae3a4ff73ce17b732c0d53a8f349e differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/51211af99f2a4ac87c1c641a12b7a7b959f002e7 b/fuzz/corpus/fuzz_ds_ptree/51211af99f2a4ac87c1c641a12b7a7b959f002e7
new file mode 100644
index 000000000..1c450a8b2
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/51211af99f2a4ac87c1c641a12b7a7b959f002e7 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/55011c61bb58706f7b17f11bddc631d7eb42a119 b/fuzz/corpus/fuzz_ds_ptree/55011c61bb58706f7b17f11bddc631d7eb42a119
new file mode 100644
index 000000000..189bdb01d
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/55011c61bb58706f7b17f11bddc631d7eb42a119 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/551546026dfe20045855431e4c080643ecc649b8 b/fuzz/corpus/fuzz_ds_ptree/551546026dfe20045855431e4c080643ecc649b8
new file mode 100644
index 000000000..2994ac9b0
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/551546026dfe20045855431e4c080643ecc649b8 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/57c83eb9c9a089aa1ab86366da0811f717b038f9 b/fuzz/corpus/fuzz_ds_ptree/57c83eb9c9a089aa1ab86366da0811f717b038f9
new file mode 100644
index 000000000..652fc71d0
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/57c83eb9c9a089aa1ab86366da0811f717b038f9 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/5a034d850b354a2214b09f0617f30ddaa193d870 b/fuzz/corpus/fuzz_ds_ptree/5a034d850b354a2214b09f0617f30ddaa193d870
new file mode 100644
index 000000000..f9d80b834
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/5a034d850b354a2214b09f0617f30ddaa193d870 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/5c85ceaa041ec1771c68bdfcba6a9cd0a6344948 b/fuzz/corpus/fuzz_ds_ptree/5c85ceaa041ec1771c68bdfcba6a9cd0a6344948
new file mode 100644
index 000000000..32a2b12b1
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/5c85ceaa041ec1771c68bdfcba6a9cd0a6344948 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/62d6104e71b6395eeaa1b49c4f765b7a60bd6ff1 b/fuzz/corpus/fuzz_ds_ptree/62d6104e71b6395eeaa1b49c4f765b7a60bd6ff1
new file mode 100644
index 000000000..393df2755
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/62d6104e71b6395eeaa1b49c4f765b7a60bd6ff1 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/686671b3b022759c727efe542acdfde5fc20ae75 b/fuzz/corpus/fuzz_ds_ptree/686671b3b022759c727efe542acdfde5fc20ae75
new file mode 100644
index 000000000..ca165fdbc
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/686671b3b022759c727efe542acdfde5fc20ae75 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/690363830d846fde982978f7a272efb319aba9bc b/fuzz/corpus/fuzz_ds_ptree/690363830d846fde982978f7a272efb319aba9bc
new file mode 100644
index 000000000..65881620b
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/690363830d846fde982978f7a272efb319aba9bc differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/69a692732a936cc3828f63652848002b3fe3a435 b/fuzz/corpus/fuzz_ds_ptree/69a692732a936cc3828f63652848002b3fe3a435
new file mode 100644
index 000000000..44aa65dfa
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/69a692732a936cc3828f63652848002b3fe3a435 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/69e22aaa579ee53595e6056db92c810715ceaafd b/fuzz/corpus/fuzz_ds_ptree/69e22aaa579ee53595e6056db92c810715ceaafd
new file mode 100644
index 000000000..48e42cffd
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/69e22aaa579ee53595e6056db92c810715ceaafd differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/6a57403d937cbde464b34234a7337290f69dc06b b/fuzz/corpus/fuzz_ds_ptree/6a57403d937cbde464b34234a7337290f69dc06b
new file mode 100644
index 000000000..5ea189a7b
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/6a57403d937cbde464b34234a7337290f69dc06b differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/6ce6b8051d4a3b36ecb7def5fea922158df41b17 b/fuzz/corpus/fuzz_ds_ptree/6ce6b8051d4a3b36ecb7def5fea922158df41b17
new file mode 100644
index 000000000..e14cefa98
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/6ce6b8051d4a3b36ecb7def5fea922158df41b17 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/6e7d12ff2919fcb6e6bc8abc17704b051cd331f4 b/fuzz/corpus/fuzz_ds_ptree/6e7d12ff2919fcb6e6bc8abc17704b051cd331f4
new file mode 100644
index 000000000..e4a7f1d43
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/6e7d12ff2919fcb6e6bc8abc17704b051cd331f4 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/6fa9f5ebf1422d95d84776798d3daab6392c4373 b/fuzz/corpus/fuzz_ds_ptree/6fa9f5ebf1422d95d84776798d3daab6392c4373
new file mode 100644
index 000000000..757b56a31
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/6fa9f5ebf1422d95d84776798d3daab6392c4373 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/6fefd1d81cf134070c52ded64e18c4af5d6bbf68 b/fuzz/corpus/fuzz_ds_ptree/6fefd1d81cf134070c52ded64e18c4af5d6bbf68
new file mode 100644
index 000000000..63a8b11b3
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/6fefd1d81cf134070c52ded64e18c4af5d6bbf68 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/70ebe0d4b36bbab381551e76da348db86befb8ee b/fuzz/corpus/fuzz_ds_ptree/70ebe0d4b36bbab381551e76da348db86befb8ee
new file mode 100644
index 000000000..85624616b
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/70ebe0d4b36bbab381551e76da348db86befb8ee differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/717964c88a8f58cded91ceda5f671810d22bdaa2 b/fuzz/corpus/fuzz_ds_ptree/717964c88a8f58cded91ceda5f671810d22bdaa2
new file mode 100644
index 000000000..8fe8dc6c3
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/717964c88a8f58cded91ceda5f671810d22bdaa2 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/7609c86bdcdf1341dcb7071412941fa5c077721b b/fuzz/corpus/fuzz_ds_ptree/7609c86bdcdf1341dcb7071412941fa5c077721b
new file mode 100644
index 000000000..37986c69b
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/7609c86bdcdf1341dcb7071412941fa5c077721b differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/774167b00ab27912f8e78bfd2e3d39e0239b9873 b/fuzz/corpus/fuzz_ds_ptree/774167b00ab27912f8e78bfd2e3d39e0239b9873
new file mode 100644
index 000000000..12aa80c14
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/774167b00ab27912f8e78bfd2e3d39e0239b9873 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/7754fb0cc9a31fd3b039fa813826615451cb93ed b/fuzz/corpus/fuzz_ds_ptree/7754fb0cc9a31fd3b039fa813826615451cb93ed
new file mode 100644
index 000000000..4737db7bd
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/7754fb0cc9a31fd3b039fa813826615451cb93ed differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/7919c53b964111b4ad091f41cec0574d1cb5be68 b/fuzz/corpus/fuzz_ds_ptree/7919c53b964111b4ad091f41cec0574d1cb5be68
new file mode 100644
index 000000000..20301aaab
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/7919c53b964111b4ad091f41cec0574d1cb5be68 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/7b224f368d1f355febd30215deaf8fa9b11d48af b/fuzz/corpus/fuzz_ds_ptree/7b224f368d1f355febd30215deaf8fa9b11d48af
new file mode 100644
index 000000000..cd12cc7d6
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/7b224f368d1f355febd30215deaf8fa9b11d48af differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/7b2d2d12df2087abb44a8438f1c7ea308ffe16dc b/fuzz/corpus/fuzz_ds_ptree/7b2d2d12df2087abb44a8438f1c7ea308ffe16dc
new file mode 100644
index 000000000..723e5570e
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/7b2d2d12df2087abb44a8438f1c7ea308ffe16dc differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/7db619b14a5b41ef2ea72f6ed50bc3222c92008c b/fuzz/corpus/fuzz_ds_ptree/7db619b14a5b41ef2ea72f6ed50bc3222c92008c
new file mode 100644
index 000000000..409b297e4
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/7db619b14a5b41ef2ea72f6ed50bc3222c92008c differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/7fa5a0da8c3d5dbb7c0239d7746dfcc6fa349c44 b/fuzz/corpus/fuzz_ds_ptree/7fa5a0da8c3d5dbb7c0239d7746dfcc6fa349c44
new file mode 100644
index 000000000..0c1678c6c
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/7fa5a0da8c3d5dbb7c0239d7746dfcc6fa349c44 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/83e1ff87052fcf0a295f517908437ce3ec8c3d12 b/fuzz/corpus/fuzz_ds_ptree/83e1ff87052fcf0a295f517908437ce3ec8c3d12
new file mode 100644
index 000000000..d731add6a
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/83e1ff87052fcf0a295f517908437ce3ec8c3d12 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/8836449903a9055d2c819f1df8640599fc127141 b/fuzz/corpus/fuzz_ds_ptree/8836449903a9055d2c819f1df8640599fc127141
new file mode 100644
index 000000000..817ef6f8b
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/8836449903a9055d2c819f1df8640599fc127141 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/8d004499628b6ed79de469223ab62454203a265f b/fuzz/corpus/fuzz_ds_ptree/8d004499628b6ed79de469223ab62454203a265f
new file mode 100644
index 000000000..09ca550db
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/8d004499628b6ed79de469223ab62454203a265f differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/9023a6c7f1c63ff0b75b849e4755330e99203134 b/fuzz/corpus/fuzz_ds_ptree/9023a6c7f1c63ff0b75b849e4755330e99203134
new file mode 100644
index 000000000..b857be9a9
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/9023a6c7f1c63ff0b75b849e4755330e99203134 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/92c6d71fa16a5bdc100739558de6b93ae1d8a503 b/fuzz/corpus/fuzz_ds_ptree/92c6d71fa16a5bdc100739558de6b93ae1d8a503
new file mode 100644
index 000000000..9e831a9cc
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/92c6d71fa16a5bdc100739558de6b93ae1d8a503 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/941b82fe6daa2f4352e40fe63ec19a11476d4ab1 b/fuzz/corpus/fuzz_ds_ptree/941b82fe6daa2f4352e40fe63ec19a11476d4ab1
new file mode 100644
index 000000000..7f3deb607
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/941b82fe6daa2f4352e40fe63ec19a11476d4ab1 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/9d781a671ecba151d1e1981abba8b786228f6a10 b/fuzz/corpus/fuzz_ds_ptree/9d781a671ecba151d1e1981abba8b786228f6a10
new file mode 100644
index 000000000..387764e63
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/9d781a671ecba151d1e1981abba8b786228f6a10 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/a17bf522b252ba23f1ca4b42417aa8f124c1da88 b/fuzz/corpus/fuzz_ds_ptree/a17bf522b252ba23f1ca4b42417aa8f124c1da88
new file mode 100644
index 000000000..89e94e38b
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/a17bf522b252ba23f1ca4b42417aa8f124c1da88 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/a6af46f15f2ed5a6bd386fd3873d2721dc97bc83 b/fuzz/corpus/fuzz_ds_ptree/a6af46f15f2ed5a6bd386fd3873d2721dc97bc83
new file mode 100644
index 000000000..bcceb2ea9
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/a6af46f15f2ed5a6bd386fd3873d2721dc97bc83 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/aac35375179c3d2bb4a989199ff53e61b2932016 b/fuzz/corpus/fuzz_ds_ptree/aac35375179c3d2bb4a989199ff53e61b2932016
new file mode 100644
index 000000000..6b53d3b57
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/aac35375179c3d2bb4a989199ff53e61b2932016 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/acadd490cdf801aab3030c05259f236486e220d7 b/fuzz/corpus/fuzz_ds_ptree/acadd490cdf801aab3030c05259f236486e220d7
new file mode 100644
index 000000000..e4afe40e4
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/acadd490cdf801aab3030c05259f236486e220d7 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/acc6d2f9f7675eb304ec822db3f534c598d651c4 b/fuzz/corpus/fuzz_ds_ptree/acc6d2f9f7675eb304ec822db3f534c598d651c4
new file mode 100644
index 000000000..18882e606
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/acc6d2f9f7675eb304ec822db3f534c598d651c4 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/adb71b5cf8f2be28b6c83bf06cdb7f902484d83c b/fuzz/corpus/fuzz_ds_ptree/adb71b5cf8f2be28b6c83bf06cdb7f902484d83c
new file mode 100644
index 000000000..8f831d34e
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/adb71b5cf8f2be28b6c83bf06cdb7f902484d83c differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/af4f83441796a7ac67555445851416adc02a42d1 b/fuzz/corpus/fuzz_ds_ptree/af4f83441796a7ac67555445851416adc02a42d1
new file mode 100644
index 000000000..21e7a7488
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/af4f83441796a7ac67555445851416adc02a42d1 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/b753e14020c99abb2881c03dcd804a5dfec839ab b/fuzz/corpus/fuzz_ds_ptree/b753e14020c99abb2881c03dcd804a5dfec839ab
new file mode 100644
index 000000000..c16781321
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/b753e14020c99abb2881c03dcd804a5dfec839ab differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/bb4531b735c2020482c5129e47a5ea48ed403974 b/fuzz/corpus/fuzz_ds_ptree/bb4531b735c2020482c5129e47a5ea48ed403974
new file mode 100644
index 000000000..9431e6ce3
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/bb4531b735c2020482c5129e47a5ea48ed403974 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/c6a3e7f64c82dd3179cda6cead0e6ee9273c1c0f b/fuzz/corpus/fuzz_ds_ptree/c6a3e7f64c82dd3179cda6cead0e6ee9273c1c0f
new file mode 100644
index 000000000..1bec1d382
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/c6a3e7f64c82dd3179cda6cead0e6ee9273c1c0f differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/c74d256a196e60a949648988b9356d3a3072ee25 b/fuzz/corpus/fuzz_ds_ptree/c74d256a196e60a949648988b9356d3a3072ee25
new file mode 100644
index 000000000..07eebecc2
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/c74d256a196e60a949648988b9356d3a3072ee25 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/c8fdfe97b51c909c756b64690190dcece85be226 b/fuzz/corpus/fuzz_ds_ptree/c8fdfe97b51c909c756b64690190dcece85be226
new file mode 100644
index 000000000..5284e6581
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/c8fdfe97b51c909c756b64690190dcece85be226 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/cfd3a43762d6d2a31623c4ac47f87116230b2476 b/fuzz/corpus/fuzz_ds_ptree/cfd3a43762d6d2a31623c4ac47f87116230b2476
new file mode 100644
index 000000000..811c97cfc
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/cfd3a43762d6d2a31623c4ac47f87116230b2476 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/d3428aa728010662173909467f09ebaa06762ade b/fuzz/corpus/fuzz_ds_ptree/d3428aa728010662173909467f09ebaa06762ade
new file mode 100644
index 000000000..cdebf8fe4
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/d3428aa728010662173909467f09ebaa06762ade differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/d43e4aeb7c2b693185eb565551026fbb5cd43e1a b/fuzz/corpus/fuzz_ds_ptree/d43e4aeb7c2b693185eb565551026fbb5cd43e1a
new file mode 100644
index 000000000..469d74cac
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/d43e4aeb7c2b693185eb565551026fbb5cd43e1a differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/daf8d904c3ffb96e4a93db65231ce11c8dcbaa13 b/fuzz/corpus/fuzz_ds_ptree/daf8d904c3ffb96e4a93db65231ce11c8dcbaa13
new file mode 100644
index 000000000..14d3b23ed
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/daf8d904c3ffb96e4a93db65231ce11c8dcbaa13 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/db9c9d5c699d60365433a924be9626ae19554fac b/fuzz/corpus/fuzz_ds_ptree/db9c9d5c699d60365433a924be9626ae19554fac
new file mode 100644
index 000000000..9aab8d053
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/db9c9d5c699d60365433a924be9626ae19554fac differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/dda3319e9709921f533039b5a8cd4b80a7458bae b/fuzz/corpus/fuzz_ds_ptree/dda3319e9709921f533039b5a8cd4b80a7458bae
new file mode 100644
index 000000000..42baeb171
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/dda3319e9709921f533039b5a8cd4b80a7458bae differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/de63782e6e4c00cfca5e67994638d3af631ff36e b/fuzz/corpus/fuzz_ds_ptree/de63782e6e4c00cfca5e67994638d3af631ff36e
new file mode 100644
index 000000000..c5b61d833
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/de63782e6e4c00cfca5e67994638d3af631ff36e differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/e0154c05d36e1aa8be5a3565060c16c5e022b32b b/fuzz/corpus/fuzz_ds_ptree/e0154c05d36e1aa8be5a3565060c16c5e022b32b
new file mode 100644
index 000000000..bea90bbf5
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/e0154c05d36e1aa8be5a3565060c16c5e022b32b differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/e02f1cedfa5dcb4f3229efb3b45a77b0e237af19 b/fuzz/corpus/fuzz_ds_ptree/e02f1cedfa5dcb4f3229efb3b45a77b0e237af19
new file mode 100644
index 000000000..5500a6b7d
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/e02f1cedfa5dcb4f3229efb3b45a77b0e237af19 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/e338a95654d105d4956fcd11f1232714010e6e76 b/fuzz/corpus/fuzz_ds_ptree/e338a95654d105d4956fcd11f1232714010e6e76
new file mode 100644
index 000000000..592d1be10
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/e338a95654d105d4956fcd11f1232714010e6e76 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/e6369f11ef7abb23bbf27d3d8c536da569321ae7 b/fuzz/corpus/fuzz_ds_ptree/e6369f11ef7abb23bbf27d3d8c536da569321ae7
new file mode 100644
index 000000000..ed43954df
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/e6369f11ef7abb23bbf27d3d8c536da569321ae7 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/eb7d414eb5c3fdc62bd419b096a11731de84225f b/fuzz/corpus/fuzz_ds_ptree/eb7d414eb5c3fdc62bd419b096a11731de84225f
new file mode 100644
index 000000000..dd08ae890
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/eb7d414eb5c3fdc62bd419b096a11731de84225f differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/ed0bd0662d2819ea276b5c2d6bcf35edd70191da b/fuzz/corpus/fuzz_ds_ptree/ed0bd0662d2819ea276b5c2d6bcf35edd70191da
new file mode 100644
index 000000000..22e6c7388
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/ed0bd0662d2819ea276b5c2d6bcf35edd70191da differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/ee088a031e6943efb877e9a3b8358a7315fcc703 b/fuzz/corpus/fuzz_ds_ptree/ee088a031e6943efb877e9a3b8358a7315fcc703
new file mode 100644
index 000000000..8e35e3a7d
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/ee088a031e6943efb877e9a3b8358a7315fcc703 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/ef4de892e052ae14f2aadd35eeab00429dde5e7e b/fuzz/corpus/fuzz_ds_ptree/ef4de892e052ae14f2aadd35eeab00429dde5e7e
new file mode 100644
index 000000000..cbbf1d9a0
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/ef4de892e052ae14f2aadd35eeab00429dde5e7e differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/ef8e81dceb5aa848dd47748f5499722188dad63c b/fuzz/corpus/fuzz_ds_ptree/ef8e81dceb5aa848dd47748f5499722188dad63c
new file mode 100644
index 000000000..f1521e9e2
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/ef8e81dceb5aa848dd47748f5499722188dad63c differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/f2a5bfaea48014d5fc4c581da5ca9f8b85d210fa b/fuzz/corpus/fuzz_ds_ptree/f2a5bfaea48014d5fc4c581da5ca9f8b85d210fa
new file mode 100644
index 000000000..d385c5e05
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/f2a5bfaea48014d5fc4c581da5ca9f8b85d210fa differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/f4868f08b07effd8338f23a12186e0c39c0004fd b/fuzz/corpus/fuzz_ds_ptree/f4868f08b07effd8338f23a12186e0c39c0004fd
new file mode 100644
index 000000000..e6115d189
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/f4868f08b07effd8338f23a12186e0c39c0004fd differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/f4b0d4c72dc7c7da532f9ea84131a979a6241a55 b/fuzz/corpus/fuzz_ds_ptree/f4b0d4c72dc7c7da532f9ea84131a979a6241a55
new file mode 100644
index 000000000..ecb2b031c
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/f4b0d4c72dc7c7da532f9ea84131a979a6241a55 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/f63e15cd167a055eb187db5fa75d5c296c607fea b/fuzz/corpus/fuzz_ds_ptree/f63e15cd167a055eb187db5fa75d5c296c607fea
new file mode 100644
index 000000000..24d0b11ab
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/f63e15cd167a055eb187db5fa75d5c296c607fea differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/f8ade6c2559a0cc772f4b2913b8277458e3b8779 b/fuzz/corpus/fuzz_ds_ptree/f8ade6c2559a0cc772f4b2913b8277458e3b8779
new file mode 100644
index 000000000..7675b7f97
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/f8ade6c2559a0cc772f4b2913b8277458e3b8779 differ
diff --git a/fuzz/corpus/fuzz_ds_ptree/fc2d9c7fdcca93fe201c398e41f6b31b63365181 b/fuzz/corpus/fuzz_ds_ptree/fc2d9c7fdcca93fe201c398e41f6b31b63365181
new file mode 100644
index 000000000..ff73684e1
Binary files /dev/null and b/fuzz/corpus/fuzz_ds_ptree/fc2d9c7fdcca93fe201c398e41f6b31b63365181 differ
diff --git a/fuzz/corpus/fuzz_libinjection/0d2f951037b2a99323a6f292bed158dcb84f8525 b/fuzz/corpus/fuzz_libinjection/0d2f951037b2a99323a6f292bed158dcb84f8525
new file mode 100644
index 000000000..5e169cf56
Binary files /dev/null and b/fuzz/corpus/fuzz_libinjection/0d2f951037b2a99323a6f292bed158dcb84f8525 differ
diff --git a/fuzz/corpus/fuzz_libinjection/10 b/fuzz/corpus/fuzz_libinjection/10
new file mode 100644
index 000000000..1e1a1c38d
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/10
@@ -0,0 +1 @@
+205.174.165.68/dv/vulnerabilities/sqli/?id=1%27+and+1%3D1%23&Submit=Submit
diff --git a/fuzz/corpus/fuzz_libinjection/11 b/fuzz/corpus/fuzz_libinjection/11
new file mode 100644
index 000000000..f5eaeb572
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/11
@@ -0,0 +1 @@
+92.168.3.107/DVWA-master/vulnerabilities/sqli/?id=%3Fid%3Da%27+UNION+SELECT+%22text1%22%2C%22text2%22%3B--+-%26Submit%3DSubmit&Submit=Submit
diff --git a/fuzz/corpus/fuzz_libinjection/15b476de3caa02284e485d66b68081608ae4faf5 b/fuzz/corpus/fuzz_libinjection/15b476de3caa02284e485d66b68081608ae4faf5
new file mode 100644
index 000000000..f5319f8fb
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/15b476de3caa02284e485d66b68081608ae4faf5
@@ -0,0 +1 @@
+20���̻1%23&i
diff --git a/fuzz/corpus/fuzz_libinjection/1a38ab89c73b1bb6a4d06294c94b413f9ad0822e b/fuzz/corpus/fuzz_libinjection/1a38ab89c73b1bb6a4d06294c94b413f9ad0822e
new file mode 100644
index 000000000..be00a6b5b
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/1a38ab89c73b1bb6a4d06294c94b413f9ad0822e
@@ -0,0 +1 @@
+2--
\ No newline at end of file
diff --git a/fuzz/corpus/fuzz_libinjection/2 b/fuzz/corpus/fuzz_libinjection/2
new file mode 100644
index 000000000..789b71e86
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/2
@@ -0,0 +1 @@
+192.168.3.107/DVWA-master/vulnerabilities/xss_d/?default=English%3Cscript%3Ealert(1)%3C/script%3E
diff --git a/fuzz/corpus/fuzz_libinjection/20 b/fuzz/corpus/fuzz_libinjection/20
new file mode 100644
index 000000000..be6dbc951
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/20
@@ -0,0 +1 @@
+/dv/vulnerabilities/xss_r/?name=%3Cscript%3Econsole.log%28%27JUL2D3WXHEGWRAFJE2PI7OS71Z4Z8RFUHXGNFLUFYVP6M3OL55%27%29%3Bconsole.log%28document.cookie%29%3B%3C%2Fscript%3E
diff --git a/fuzz/corpus/fuzz_libinjection/21 b/fuzz/corpus/fuzz_libinjection/21
new file mode 100644
index 000000000..6e9bc2a7e
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/21
@@ -0,0 +1 @@
+/dv/vulnerabilities/sqli/?id=1%27+and+1%3D1+union+select+null%2C+table_name+from+information_schema.tables%23&Submit=Submit
diff --git a/fuzz/corpus/fuzz_libinjection/22 b/fuzz/corpus/fuzz_libinjection/22
new file mode 100644
index 000000000..a6769cde6
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/22
@@ -0,0 +1 @@
+/ntop/nDPI/actions/runs/4161701848/jobs/7199989034
diff --git a/fuzz/corpus/fuzz_libinjection/3 b/fuzz/corpus/fuzz_libinjection/3
new file mode 100644
index 000000000..1e1a1c38d
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/3
@@ -0,0 +1 @@
+205.174.165.68/dv/vulnerabilities/sqli/?id=1%27+and+1%3D1%23&Submit=Submit
diff --git a/fuzz/corpus/fuzz_libinjection/30 b/fuzz/corpus/fuzz_libinjection/30
new file mode 100644
index 000000000..5171b413a
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/30
@@ -0,0 +1 @@
+foo' + 1
diff --git a/fuzz/corpus/fuzz_libinjection/31 b/fuzz/corpus/fuzz_libinjection/31
new file mode 100644
index 000000000..3c2506b9f
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/31
@@ -0,0 +1 @@
+'foo' + 1
diff --git a/fuzz/corpus/fuzz_libinjection/32 b/fuzz/corpus/fuzz_libinjection/32
new file mode 100644
index 000000000..ca2009cc3
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/32
@@ -0,0 +1 @@
+1" UNION ALL SELECT * FROM FOO
diff --git a/fuzz/corpus/fuzz_libinjection/33 b/fuzz/corpus/fuzz_libinjection/33
new file mode 100644
index 000000000..41a1dcba3
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/33
@@ -0,0 +1 @@
+1" INCH
diff --git a/fuzz/corpus/fuzz_libinjection/33aa651e011ff40ba1edd9950093275800b9a40c b/fuzz/corpus/fuzz_libinjection/33aa651e011ff40ba1edd9950093275800b9a40c
new file mode 100644
index 000000000..96dccbd1c
Binary files /dev/null and b/fuzz/corpus/fuzz_libinjection/33aa651e011ff40ba1edd9950093275800b9a40c differ
diff --git a/fuzz/corpus/fuzz_libinjection/34 b/fuzz/corpus/fuzz_libinjection/34
new file mode 100644
index 000000000..50e2000db
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/34
@@ -0,0 +1 @@
+1' INCH
diff --git a/fuzz/corpus/fuzz_libinjection/3450506a01feb1c676c383da2351d81c95e361b9 b/fuzz/corpus/fuzz_libinjection/3450506a01feb1c676c383da2351d81c95e361b9
new file mode 100644
index 000000000..d883b09d0
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/3450506a01feb1c676c383da2351d81c95e361b9
@@ -0,0 +1 @@
+21%23&i;
diff --git a/fuzz/corpus/fuzz_libinjection/35 b/fuzz/corpus/fuzz_libinjection/35
new file mode 100644
index 000000000..27fcd8e55
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/35
@@ -0,0 +1 @@
+--1 UNION ALL SELECT * FROM FOO
diff --git a/fuzz/corpus/fuzz_libinjection/36 b/fuzz/corpus/fuzz_libinjection/36
new file mode 100644
index 000000000..945c98202
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/36
@@ -0,0 +1 @@
+1' == --1 OR 1
diff --git a/fuzz/corpus/fuzz_libinjection/37 b/fuzz/corpus/fuzz_libinjection/37
new file mode 100644
index 000000000..52135c1be
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/37
@@ -0,0 +1 @@
+1" UNION ALL SELECT --1 FROM FOO
diff --git a/fuzz/corpus/fuzz_libinjection/38 b/fuzz/corpus/fuzz_libinjection/38
new file mode 100644
index 000000000..54acd216f
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/38
@@ -0,0 +1 @@
+foo'--'bar'
diff --git a/fuzz/corpus/fuzz_libinjection/39 b/fuzz/corpus/fuzz_libinjection/39
new file mode 100644
index 000000000..72cd77e5e
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/39
@@ -0,0 +1 @@
+--blah
diff --git a/fuzz/corpus/fuzz_libinjection/39a9b3ad3544180f4614c356bec4305a940c27bc b/fuzz/corpus/fuzz_libinjection/39a9b3ad3544180f4614c356bec4305a940c27bc
new file mode 100644
index 000000000..13dca3c40
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/39a9b3ad3544180f4614c356bec4305a940c27bc
@@ -0,0 +1 @@
+31i22;
diff --git a/fuzz/corpus/fuzz_libinjection/4 b/fuzz/corpus/fuzz_libinjection/4
new file mode 100644
index 000000000..e2759d111
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/4
@@ -0,0 +1 @@
+205.174.165.68/dv/vulnerabilities/sqli/?id=1%27+and+1%3D1+union+select+null%2C+table_name+from+information_schema.tables%23&Submit=Submit
diff --git a/fuzz/corpus/fuzz_libinjection/40 b/fuzz/corpus/fuzz_libinjection/40
new file mode 100644
index 000000000..cda75e33c
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/40
@@ -0,0 +1 @@
+1--sp_password
diff --git a/fuzz/corpus/fuzz_libinjection/41 b/fuzz/corpus/fuzz_libinjection/41
new file mode 100644
index 000000000..4b46dc4da
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/41
@@ -0,0 +1 @@
+x'--sp_password
diff --git a/fuzz/corpus/fuzz_libinjection/42 b/fuzz/corpus/fuzz_libinjection/42
new file mode 100644
index 000000000..4f735994f
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/42
@@ -0,0 +1 @@
+1*1--
diff --git a/fuzz/corpus/fuzz_libinjection/43 b/fuzz/corpus/fuzz_libinjection/43
new file mode 100644
index 000000000..ef9bca6d1
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/43
@@ -0,0 +1 @@
+1 /*!anything*/
diff --git a/fuzz/corpus/fuzz_libinjection/44 b/fuzz/corpus/fuzz_libinjection/44
new file mode 100644
index 000000000..b5ec777dc
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/44
@@ -0,0 +1 @@
+1--0000000000111111111122222222223333333333 sp_password
diff --git a/fuzz/corpus/fuzz_libinjection/45 b/fuzz/corpus/fuzz_libinjection/45
new file mode 100644
index 000000000..c770ac69d
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/45
@@ -0,0 +1 @@
+foo" and 1=1 `
diff --git a/fuzz/corpus/fuzz_libinjection/46 b/fuzz/corpus/fuzz_libinjection/46
new file mode 100644
index 000000000..c770ac69d
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/46
@@ -0,0 +1 @@
+foo" and 1=1 `
diff --git a/fuzz/corpus/fuzz_libinjection/47 b/fuzz/corpus/fuzz_libinjection/47
new file mode 100644
index 000000000..e3a0e4200
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/47
@@ -0,0 +1 @@
+1 and @version
diff --git a/fuzz/corpus/fuzz_libinjection/48 b/fuzz/corpus/fuzz_libinjection/48
new file mode 100644
index 000000000..7c26a1067
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/48
@@ -0,0 +1 @@
+1 and @version < 1
diff --git a/fuzz/corpus/fuzz_libinjection/49 b/fuzz/corpus/fuzz_libinjection/49
new file mode 100644
index 000000000..74ce06ea0
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/49
@@ -0,0 +1 @@
+1 and "a" < "b"
diff --git a/fuzz/corpus/fuzz_libinjection/5 b/fuzz/corpus/fuzz_libinjection/5
new file mode 100644
index 000000000..e2759d111
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/5
@@ -0,0 +1 @@
+205.174.165.68/dv/vulnerabilities/sqli/?id=1%27+and+1%3D1+union+select+null%2C+table_name+from+information_schema.tables%23&Submit=Submit
diff --git a/fuzz/corpus/fuzz_libinjection/50 b/fuzz/corpus/fuzz_libinjection/50
new file mode 100644
index 000000000..445223569
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/50
@@ -0,0 +1 @@
+1 and "a"
diff --git a/fuzz/corpus/fuzz_libinjection/51 b/fuzz/corpus/fuzz_libinjection/51
new file mode 100644
index 000000000..3a4cea047
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/51
@@ -0,0 +1 @@
+1 TOP 'foo'
diff --git a/fuzz/corpus/fuzz_libinjection/52 b/fuzz/corpus/fuzz_libinjection/52
new file mode 100644
index 000000000..a4da31da8
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/52
@@ -0,0 +1 @@
+1 UNION
diff --git a/fuzz/corpus/fuzz_libinjection/5202e03fa50b3bc1b55fb03faa3c26659e6fcee8 b/fuzz/corpus/fuzz_libinjection/5202e03fa50b3bc1b55fb03faa3c26659e6fcee8
new file mode 100644
index 000000000..e55b1bd33
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/5202e03fa50b3bc1b55fb03faa3c26659e6fcee8
@@ -0,0 +1 @@
+</`
\ No newline at end of file
diff --git a/fuzz/corpus/fuzz_libinjection/53 b/fuzz/corpus/fuzz_libinjection/53
new file mode 100644
index 000000000..56b6e717b
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/53
@@ -0,0 +1 @@
+1 ANALYZE 'foo'
diff --git a/fuzz/corpus/fuzz_libinjection/54 b/fuzz/corpus/fuzz_libinjection/54
new file mode 100644
index 000000000..656b0f064
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/54
@@ -0,0 +1 @@
+1 /* junk */ UNION
diff --git a/fuzz/corpus/fuzz_libinjection/55 b/fuzz/corpus/fuzz_libinjection/55
new file mode 100644
index 000000000..96faebb20
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/55
@@ -0,0 +1 @@
+1),(1)) UNION SELECT 1;
diff --git a/fuzz/corpus/fuzz_libinjection/56 b/fuzz/corpus/fuzz_libinjection/56
new file mode 100644
index 000000000..0c6824c65
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/56
@@ -0,0 +1 @@
+foo - (bar) UNION SELECT 1
diff --git a/fuzz/corpus/fuzz_libinjection/57 b/fuzz/corpus/fuzz_libinjection/57
new file mode 100644
index 000000000..a2daf9cd2
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/57
@@ -0,0 +1 @@
+foo - (1) UNION SELECT 1
diff --git a/fuzz/corpus/fuzz_libinjection/58 b/fuzz/corpus/fuzz_libinjection/58
new file mode 100644
index 000000000..d9fd6e959
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/58
@@ -0,0 +1 @@
+1, -sin(1)) UNION SELECT 1
diff --git a/fuzz/corpus/fuzz_libinjection/59 b/fuzz/corpus/fuzz_libinjection/59
new file mode 100644
index 000000000..141455481
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/59
@@ -0,0 +1 @@
+{``.``.id} UNION SELECT table_name from information_schemas LIMIT 1
diff --git a/fuzz/corpus/fuzz_libinjection/6 b/fuzz/corpus/fuzz_libinjection/6
new file mode 100644
index 000000000..a2f0c545e
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/6
@@ -0,0 +1 @@
+205.174.165.68/dv/vulnerabilities/sqli/?id=1%27+and+1%3D1+union+select+user%2C+password+from+users%23&Submit=Submit
diff --git a/fuzz/corpus/fuzz_libinjection/7 b/fuzz/corpus/fuzz_libinjection/7
new file mode 100644
index 000000000..845a70aad
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/7
@@ -0,0 +1 @@
+205.174.165.68/dv/vulnerabilities/sqli/?id=1%27+and+1%3D1+union+select+database%28%29%2C+user%28%29%23&Submit=Submit
diff --git a/fuzz/corpus/fuzz_libinjection/8 b/fuzz/corpus/fuzz_libinjection/8
new file mode 100644
index 000000000..845a70aad
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/8
@@ -0,0 +1 @@
+205.174.165.68/dv/vulnerabilities/sqli/?id=1%27+and+1%3D1+union+select+database%28%29%2C+user%28%29%23&Submit=Submit
diff --git a/fuzz/corpus/fuzz_libinjection/85e53271e14006f0265921d02d4d736cdc580b0b b/fuzz/corpus/fuzz_libinjection/85e53271e14006f0265921d02d4d736cdc580b0b
new file mode 100644
index 000000000..ce542efaa
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/85e53271e14006f0265921d02d4d736cdc580b0b
@@ -0,0 +1 @@
+�
\ No newline at end of file
diff --git a/fuzz/corpus/fuzz_libinjection/9 b/fuzz/corpus/fuzz_libinjection/9
new file mode 100644
index 000000000..1e1a1c38d
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/9
@@ -0,0 +1 @@
+205.174.165.68/dv/vulnerabilities/sqli/?id=1%27+and+1%3D1%23&Submit=Submit
diff --git a/fuzz/corpus/fuzz_libinjection/9d1de8279add3b6d037aa2a801da30d45f91cf8d b/fuzz/corpus/fuzz_libinjection/9d1de8279add3b6d037aa2a801da30d45f91cf8d
new file mode 100644
index 000000000..43904b059
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/9d1de8279add3b6d037aa2a801da30d45f91cf8d
@@ -0,0 +1 @@
+��
\ No newline at end of file
diff --git a/fuzz/corpus/fuzz_libinjection/c487a9ed6ce4beef9e9ebfa821e7181c68476088 b/fuzz/corpus/fuzz_libinjection/c487a9ed6ce4beef9e9ebfa821e7181c68476088
new file mode 100644
index 000000000..76772ec17
Binary files /dev/null and b/fuzz/corpus/fuzz_libinjection/c487a9ed6ce4beef9e9ebfa821e7181c68476088 differ
diff --git a/fuzz/corpus/fuzz_libinjection/cc7ddbb1c7ce7d7181615313b0c6ac81575c7668 b/fuzz/corpus/fuzz_libinjection/cc7ddbb1c7ce7d7181615313b0c6ac81575c7668
new file mode 100644
index 000000000..3e74cdb4a
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/cc7ddbb1c7ce7d7181615313b0c6ac81575c7668
@@ -0,0 +1,2 @@
+
+2�
diff --git a/fuzz/corpus/fuzz_libinjection/cf98534696ff97a4f2f1f9f96fdfba41cad2057d b/fuzz/corpus/fuzz_libinjection/cf98534696ff97a4f2f1f9f96fdfba41cad2057d
new file mode 100644
index 000000000..1874e481c
--- /dev/null
+++ b/fuzz/corpus/fuzz_libinjection/cf98534696ff97a4f2f1f9f96fdfba41cad2057d
@@ -0,0 +1,2 @@
+2;
+;
diff --git a/fuzz/corpus/fuzz_serialization/08e28514b30a7df231e574d430f9207be60081a5 b/fuzz/corpus/fuzz_serialization/08e28514b30a7df231e574d430f9207be60081a5
new file mode 100644
index 000000000..1041bff31
Binary files /dev/null and b/fuzz/corpus/fuzz_serialization/08e28514b30a7df231e574d430f9207be60081a5 differ
diff --git a/fuzz/corpus/fuzz_serialization/0bd1690046cf11535e1fe7ef887bd881bc26e248 b/fuzz/corpus/fuzz_serialization/0bd1690046cf11535e1fe7ef887bd881bc26e248
deleted file mode 100644
index 53d0c4df0..000000000
Binary files a/fuzz/corpus/fuzz_serialization/0bd1690046cf11535e1fe7ef887bd881bc26e248 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_serialization/0bf770e429cba6c9fd4e3c5275572951c8bb7b0d b/fuzz/corpus/fuzz_serialization/0bf770e429cba6c9fd4e3c5275572951c8bb7b0d
deleted file mode 100644
index fe264bae8..000000000
Binary files a/fuzz/corpus/fuzz_serialization/0bf770e429cba6c9fd4e3c5275572951c8bb7b0d and /dev/null differ
diff --git a/fuzz/corpus/fuzz_serialization/10420923df54bfca05312d5fafaa4189373b4683 b/fuzz/corpus/fuzz_serialization/10420923df54bfca05312d5fafaa4189373b4683
deleted file mode 100644
index f32b2a1d3..000000000
Binary files a/fuzz/corpus/fuzz_serialization/10420923df54bfca05312d5fafaa4189373b4683 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_serialization/1aa0ba13369b1e0c11cdfb707ee96bbc0077635f b/fuzz/corpus/fuzz_serialization/1aa0ba13369b1e0c11cdfb707ee96bbc0077635f
new file mode 100644
index 000000000..3e3ea288d
Binary files /dev/null and b/fuzz/corpus/fuzz_serialization/1aa0ba13369b1e0c11cdfb707ee96bbc0077635f differ
diff --git a/fuzz/corpus/fuzz_serialization/2b88205b31bcff3b918131c9f6accbd0dd820eec b/fuzz/corpus/fuzz_serialization/2b88205b31bcff3b918131c9f6accbd0dd820eec
new file mode 100644
index 000000000..6bc2fd40d
Binary files /dev/null and b/fuzz/corpus/fuzz_serialization/2b88205b31bcff3b918131c9f6accbd0dd820eec differ
diff --git a/fuzz/corpus/fuzz_serialization/35fb4e382eea90c8483725b23c933d4cc418df47 b/fuzz/corpus/fuzz_serialization/35fb4e382eea90c8483725b23c933d4cc418df47
deleted file mode 100644
index e09ba056f..000000000
--- a/fuzz/corpus/fuzz_serialization/35fb4e382eea90c8483725b23c933d4cc418df47
+++ /dev/null
@@ -1 +0,0 @@
-}-���D��6�R�����].��z��
\ No newline at end of file
diff --git a/fuzz/corpus/fuzz_serialization/405c78f0be0c46d2888206056cbad22223a9d801 b/fuzz/corpus/fuzz_serialization/405c78f0be0c46d2888206056cbad22223a9d801
new file mode 100644
index 000000000..afa32f8a9
Binary files /dev/null and b/fuzz/corpus/fuzz_serialization/405c78f0be0c46d2888206056cbad22223a9d801 differ
diff --git a/fuzz/corpus/fuzz_serialization/4778131281f96295cef3f8c9929d3870d88ac5a8 b/fuzz/corpus/fuzz_serialization/4778131281f96295cef3f8c9929d3870d88ac5a8
new file mode 100644
index 000000000..1c11a3f8a
Binary files /dev/null and b/fuzz/corpus/fuzz_serialization/4778131281f96295cef3f8c9929d3870d88ac5a8 differ
diff --git a/fuzz/corpus/fuzz_serialization/50ccf2ef2a396f9181f5233cb5943f65308ad506 b/fuzz/corpus/fuzz_serialization/50ccf2ef2a396f9181f5233cb5943f65308ad506
deleted file mode 100644
index a025445cc..000000000
Binary files a/fuzz/corpus/fuzz_serialization/50ccf2ef2a396f9181f5233cb5943f65308ad506 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_serialization/52a719f9d01e6a1882f97bc011e52c80f807e955 b/fuzz/corpus/fuzz_serialization/52a719f9d01e6a1882f97bc011e52c80f807e955
new file mode 100644
index 000000000..df3d21358
--- /dev/null
+++ b/fuzz/corpus/fuzz_serialization/52a719f9d01e6a1882f97bc011e52c80f807e955
@@ -0,0 +1 @@
+�
\ No newline at end of file
diff --git a/fuzz/corpus/fuzz_serialization/53e7833e9616f944ea630228d8443ee2f62f647f b/fuzz/corpus/fuzz_serialization/53e7833e9616f944ea630228d8443ee2f62f647f
new file mode 100644
index 000000000..a8e81e811
Binary files /dev/null and b/fuzz/corpus/fuzz_serialization/53e7833e9616f944ea630228d8443ee2f62f647f differ
diff --git a/fuzz/corpus/fuzz_serialization/54575b941c0641906092a4d2eb88d4b571cd7244 b/fuzz/corpus/fuzz_serialization/54575b941c0641906092a4d2eb88d4b571cd7244
deleted file mode 100644
index 35d96b20b..000000000
Binary files a/fuzz/corpus/fuzz_serialization/54575b941c0641906092a4d2eb88d4b571cd7244 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_serialization/5df39e5d3b76ed758bd70bab5c02fb4b1913565c b/fuzz/corpus/fuzz_serialization/5df39e5d3b76ed758bd70bab5c02fb4b1913565c
deleted file mode 100644
index 08a3b77ca..000000000
Binary files a/fuzz/corpus/fuzz_serialization/5df39e5d3b76ed758bd70bab5c02fb4b1913565c and /dev/null differ
diff --git a/fuzz/corpus/fuzz_serialization/6046a35020d5b394b3d7458fac00f154e4eb9135 b/fuzz/corpus/fuzz_serialization/6046a35020d5b394b3d7458fac00f154e4eb9135
new file mode 100644
index 000000000..784b7793c
Binary files /dev/null and b/fuzz/corpus/fuzz_serialization/6046a35020d5b394b3d7458fac00f154e4eb9135 differ
diff --git a/fuzz/corpus/fuzz_serialization/63c9f30967ffc232fd1b52b7b3f0b9a99051e81e b/fuzz/corpus/fuzz_serialization/63c9f30967ffc232fd1b52b7b3f0b9a99051e81e
deleted file mode 100644
index dcbb8e5a3..000000000
Binary files a/fuzz/corpus/fuzz_serialization/63c9f30967ffc232fd1b52b7b3f0b9a99051e81e and /dev/null differ
diff --git a/fuzz/corpus/fuzz_serialization/77206cbd399692b257926ffad2150642cb10dfbf b/fuzz/corpus/fuzz_serialization/77206cbd399692b257926ffad2150642cb10dfbf
new file mode 100644
index 000000000..11b2badea
Binary files /dev/null and b/fuzz/corpus/fuzz_serialization/77206cbd399692b257926ffad2150642cb10dfbf differ
diff --git a/fuzz/corpus/fuzz_serialization/82bb3eab86d4063ea4a3cb97821feb07cecf7b72 b/fuzz/corpus/fuzz_serialization/82bb3eab86d4063ea4a3cb97821feb07cecf7b72
deleted file mode 100644
index 680fc5115..000000000
--- a/fuzz/corpus/fuzz_serialization/82bb3eab86d4063ea4a3cb97821feb07cecf7b72
+++ /dev/null
@@ -1 +0,0 @@
-�
\ No newline at end of file
diff --git a/fuzz/corpus/fuzz_serialization/83631c962f6eb3da79b4ac7c8c7074b8d6227679 b/fuzz/corpus/fuzz_serialization/83631c962f6eb3da79b4ac7c8c7074b8d6227679
deleted file mode 100644
index aa3a75469..000000000
--- a/fuzz/corpus/fuzz_serialization/83631c962f6eb3da79b4ac7c8c7074b8d6227679
+++ /dev/null
@@ -1 +0,0 @@
-��!9��dD�D��]�4�}�
\ No newline at end of file
diff --git a/fuzz/corpus/fuzz_serialization/85d363c3f0967b1c9d3ec9d1038fd1c153a9cb67 b/fuzz/corpus/fuzz_serialization/85d363c3f0967b1c9d3ec9d1038fd1c153a9cb67
new file mode 100644
index 000000000..7a3678cfb
Binary files /dev/null and b/fuzz/corpus/fuzz_serialization/85d363c3f0967b1c9d3ec9d1038fd1c153a9cb67 differ
diff --git a/fuzz/corpus/fuzz_serialization/8ac56fc7a60893ae2e6019bc00644af784c50067 b/fuzz/corpus/fuzz_serialization/8ac56fc7a60893ae2e6019bc00644af784c50067
new file mode 100644
index 000000000..fbbea51c3
Binary files /dev/null and b/fuzz/corpus/fuzz_serialization/8ac56fc7a60893ae2e6019bc00644af784c50067 differ
diff --git a/fuzz/corpus/fuzz_serialization/97f9c819682d7ddc67733f4ba04511c2005d2660 b/fuzz/corpus/fuzz_serialization/97f9c819682d7ddc67733f4ba04511c2005d2660
new file mode 100644
index 000000000..96580b040
Binary files /dev/null and b/fuzz/corpus/fuzz_serialization/97f9c819682d7ddc67733f4ba04511c2005d2660 differ
diff --git a/fuzz/corpus/fuzz_serialization/9dae31ee55b9d421f11caa6fd6257faf8b992675 b/fuzz/corpus/fuzz_serialization/9dae31ee55b9d421f11caa6fd6257faf8b992675
new file mode 100644
index 000000000..a7b022a65
Binary files /dev/null and b/fuzz/corpus/fuzz_serialization/9dae31ee55b9d421f11caa6fd6257faf8b992675 differ
diff --git a/fuzz/corpus/fuzz_serialization/a0de36639862a94a491974369a7c45a16ed4ff6e b/fuzz/corpus/fuzz_serialization/a0de36639862a94a491974369a7c45a16ed4ff6e
deleted file mode 100644
index f479d3c7a..000000000
Binary files a/fuzz/corpus/fuzz_serialization/a0de36639862a94a491974369a7c45a16ed4ff6e and /dev/null differ
diff --git a/fuzz/corpus/fuzz_serialization/a5dd6d24cfa78a8faba860c8806bac4ba7540eff b/fuzz/corpus/fuzz_serialization/a5dd6d24cfa78a8faba860c8806bac4ba7540eff
deleted file mode 100644
index 056d869a8..000000000
Binary files a/fuzz/corpus/fuzz_serialization/a5dd6d24cfa78a8faba860c8806bac4ba7540eff and /dev/null differ
diff --git a/fuzz/corpus/fuzz_serialization/aa564c1c9f0278ad73a1958433ef4305f9ac71fd b/fuzz/corpus/fuzz_serialization/aa564c1c9f0278ad73a1958433ef4305f9ac71fd
deleted file mode 100644
index 5ed0440d8..000000000
Binary files a/fuzz/corpus/fuzz_serialization/aa564c1c9f0278ad73a1958433ef4305f9ac71fd and /dev/null differ
diff --git a/fuzz/corpus/fuzz_serialization/b2107343881e2efae5b729ef8f64234a7d772f3d b/fuzz/corpus/fuzz_serialization/b2107343881e2efae5b729ef8f64234a7d772f3d
deleted file mode 100644
index 78e6cdd71..000000000
Binary files a/fuzz/corpus/fuzz_serialization/b2107343881e2efae5b729ef8f64234a7d772f3d and /dev/null differ
diff --git a/fuzz/corpus/fuzz_serialization/b59e95164582a933229e86ed21cbcdd70010faec b/fuzz/corpus/fuzz_serialization/b59e95164582a933229e86ed21cbcdd70010faec
deleted file mode 100644
index 025458c68..000000000
Binary files a/fuzz/corpus/fuzz_serialization/b59e95164582a933229e86ed21cbcdd70010faec and /dev/null differ
diff --git a/fuzz/corpus/fuzz_serialization/bcbec15886272236f8be41e4749d352051bd217e b/fuzz/corpus/fuzz_serialization/bcbec15886272236f8be41e4749d352051bd217e
new file mode 100644
index 000000000..e28d01f31
Binary files /dev/null and b/fuzz/corpus/fuzz_serialization/bcbec15886272236f8be41e4749d352051bd217e differ
diff --git a/fuzz/corpus/fuzz_serialization/df3387059bc65a41f137c3292737f7c2891ac2a1 b/fuzz/corpus/fuzz_serialization/df3387059bc65a41f137c3292737f7c2891ac2a1
deleted file mode 100644
index e6ea6eea4..000000000
Binary files a/fuzz/corpus/fuzz_serialization/df3387059bc65a41f137c3292737f7c2891ac2a1 and /dev/null differ
diff --git a/fuzz/corpus/fuzz_serialization/eb4911efad5e1499cdfcd23a6e9bab9902b8a05e b/fuzz/corpus/fuzz_serialization/eb4911efad5e1499cdfcd23a6e9bab9902b8a05e
deleted file mode 100644
index 00bcf3ba7..000000000
Binary files a/fuzz/corpus/fuzz_serialization/eb4911efad5e1499cdfcd23a6e9bab9902b8a05e and /dev/null differ
diff --git a/fuzz/corpus/fuzz_serialization/f0f58b2a1c62c37d7b8bc50a9db2d8d870e8b3a7 b/fuzz/corpus/fuzz_serialization/f0f58b2a1c62c37d7b8bc50a9db2d8d870e8b3a7
new file mode 100644
index 000000000..d8d4fd0ea
Binary files /dev/null and b/fuzz/corpus/fuzz_serialization/f0f58b2a1c62c37d7b8bc50a9db2d8d870e8b3a7 differ
diff --git a/fuzz/corpus/fuzz_serialization/f96555266adfc22b92ecd46749406be33e27beaa b/fuzz/corpus/fuzz_serialization/f96555266adfc22b92ecd46749406be33e27beaa
deleted file mode 100644
index a22edb026..000000000
Binary files a/fuzz/corpus/fuzz_serialization/f96555266adfc22b92ecd46749406be33e27beaa and /dev/null differ
diff --git a/fuzz/fuzz_alg_bytestream.c b/fuzz/fuzz_alg_bytestream.c
new file mode 100644
index 000000000..4096c9d9a
--- /dev/null
+++ b/fuzz/fuzz_alg_bytestream.c
@@ -0,0 +1,13 @@
+#include "ndpi_api.h"
+
+int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
+  u_int16_t bytes_read;
+
+  /* No memory allocations involved */
+
+  ndpi_bytestream_to_number64(data, size, &bytes_read);
+  ndpi_bytestream_dec_or_hex_to_number64(data, size, &bytes_read);
+  ntohs_ndpi_bytestream_to_number(data, size, &bytes_read);
+
+  return 0;
+}
diff --git a/fuzz/fuzz_config.cpp b/fuzz/fuzz_config.cpp
index 5cd94021d..de1bdd3e8 100644
--- a/fuzz/fuzz_config.cpp
+++ b/fuzz/fuzz_config.cpp
@@ -6,6 +6,7 @@
 #include <assert.h>
 #include "fuzzer/FuzzedDataProvider.h"
 
+extern "C" void ndpi_self_check_host_match(); /* Self check function */
 
 extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
   FuzzedDataProvider fuzzed_data(data, size);
@@ -24,12 +25,14 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
   char *protoname;
   char catname[] = "name";
   struct ndpi_flow_input_info input_info;
-  ndpi_proto p;
+  ndpi_proto p, p2;
+  char out[128];
 
 
   if(fuzzed_data.remaining_bytes() < 4 + /* ndpi_init_detection_module() */
 				     NDPI_MAX_SUPPORTED_PROTOCOLS + NDPI_MAX_NUM_CUSTOM_PROTOCOLS +
-				     5 + /* files */
+				     1 + /* TLS cert expire */
+				     6 + /* files */
 				     ((NDPI_LRUCACHE_MAX + 1) * 5) + /* LRU caches */
 				     2 + 1 + 5 + /* ndpi_set_detection_preferences() */
 				     7 + /* Opportunistic tls */
@@ -37,7 +40,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
 				     2 + /* Category */
 				     1 + /* Bool value */
 				     2 + /* input_info */
-				     29 /* Min real data: ip length + udp length + 1 byte */)
+				     21 /* Min real data: ip length + 1 byte of L4 header */)
     return -1;
 
   /* To allow memory allocation failures */
@@ -55,6 +58,8 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
     ndpi_info_mod = NULL;
   }
 
+  ndpi_set_tls_cert_expire_days(ndpi_info_mod, fuzzed_data.ConsumeIntegral<u_int8_t>());
+
   if(fuzzed_data.ConsumeBool())
     ndpi_load_protocols_file(ndpi_info_mod, "protos.txt");
   if(fuzzed_data.ConsumeBool())
@@ -65,6 +70,9 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
     ndpi_load_malicious_ja3_file(ndpi_info_mod, "ja3_fingerprints.csv");
   if(fuzzed_data.ConsumeBool())
     ndpi_load_malicious_sha1_file(ndpi_info_mod, "sha1_fingerprints.csv");
+  /* Note that this function is not used by ndpiReader */
+  if(fuzzed_data.ConsumeBool())
+    ndpi_load_ipv4_ptree(ndpi_info_mod, "ipv4_addresses.txt", NDPI_PROTOCOL_TLS);
 
   for(i = 0; i < NDPI_LRUCACHE_MAX + 1; i++) { /* + 1 to test invalid type */
     ndpi_set_lru_cache_size(ndpi_info_mod, static_cast<lru_cache_type>(i),
@@ -121,6 +129,9 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
   ndpi_get_category_id(ndpi_info_mod, catname);
 
   ndpi_get_num_supported_protocols(ndpi_info_mod);
+  ndpi_get_ndpi_num_custom_protocols(ndpi_info_mod);
+
+  ndpi_self_check_host_match();
 
   /* Basic code to try testing this "config" */
   bool_value = fuzzed_data.ConsumeBool();
@@ -128,7 +139,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
   input_info.seen_flow_beginning = !!fuzzed_data.ConsumeBool();
   memset(&flow, 0, sizeof(flow));
   std::vector<uint8_t>pkt = fuzzed_data.ConsumeRemainingBytes<uint8_t>();
-  assert(pkt.size() >= 29); /* To be sure check on fuzzed_data.remaining_bytes() at the beginning is right */
+  assert(pkt.size() >= 21); /* To be sure check on fuzzed_data.remaining_bytes() at the beginning is right */
   ndpi_detection_process_packet(ndpi_info_mod, &flow, pkt.data(), pkt.size(), 0, &input_info);
   p = ndpi_detection_giveup(ndpi_info_mod, &flow, 1, &protocol_was_guessed);
   assert(p.master_protocol == ndpi_get_flow_masterprotocol(ndpi_info_mod, &flow));
@@ -136,15 +147,24 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
   assert(p.category == ndpi_get_flow_category(ndpi_info_mod, &flow));
   ndpi_get_lower_proto(p);
   ndpi_get_upper_proto(p);
+  ndpi_get_flow_error_code(&flow);
+  ndpi_get_flow_risk_info(&flow, out, sizeof(out), 1);
+  ndpi_get_flow_ndpi_proto(ndpi_info_mod, &flow, &p2);
+  ndpi_is_proto(p, NDPI_PROTOCOL_TLS);
   /* ndpi_guess_undetected_protocol() is a "strange" function (since is ipv4 only)
      but it is exported by the library and it is used by ntopng. Try fuzzing it, here */
-  if(!flow.is_ipv6)
-    ndpi_guess_undetected_protocol(ndpi_info_mod, bool_value ? &flow : NULL,
-                                   flow.l4_proto,
-                                   flow.c_address.v4, flow.s_address.v4,
-                                   flow.c_port, flow.s_port);
-  /* Another "strange" function: fuzz it here, for lack of a better alternative */
-  ndpi_search_tcp_or_udp(ndpi_info_mod, &flow);
+  if(!ndpi_is_protocol_detected(ndpi_info_mod, p)) {
+    if(!flow.is_ipv6) {
+      ndpi_guess_undetected_protocol(ndpi_info_mod, bool_value ? &flow : NULL,
+                                     flow.l4_proto,
+                                     flow.c_address.v4, flow.s_address.v4,
+                                     flow.c_port, flow.s_port);
+      /* Another "strange" function (ipv4 only): fuzz it here, for lack of a better alternative */
+      ndpi_find_ipv4_category_userdata(ndpi_info_mod, flow.c_address.v4);
+    }
+    /* Another "strange" function: fuzz it here, for lack of a better alternative */
+    ndpi_search_tcp_or_udp(ndpi_info_mod, &flow);
+  }
   ndpi_free_flow_data(&flow);
 
   /* Get some final stats */
@@ -155,6 +175,11 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
   for(i = 0; i < NDPI_AUTOMA_MAX + 1; i++) /* + 1 to test invalid type */
     ndpi_get_automa_stats(ndpi_info_mod, static_cast<automa_type>(i), &automa_stats);
 
+
+  ndpi_revision();
+  ndpi_get_api_version();
+  ndpi_get_gcrypt_version();
+
   ndpi_exit_detection_module(ndpi_info_mod);
 
   return 0;
diff --git a/fuzz/fuzz_ds_ahocorasick.cpp b/fuzz/fuzz_ds_ahocorasick.cpp
index cd56058e1..5297236e3 100644
--- a/fuzz/fuzz_ds_ahocorasick.cpp
+++ b/fuzz/fuzz_ds_ahocorasick.cpp
@@ -13,6 +13,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
   FuzzedDataProvider fuzzed_data(data, size);
   u_int16_t i, num_iteration, is_added = 0;
   AC_AUTOMATA_t *a;
+  void *a2;
   MATCH_CALLBACK_f mc;
   struct ac_stats stats;
   AC_PATTERN_t ac_pattern;
@@ -20,9 +21,14 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
   AC_REP_t match;
   AC_TEXT_t ac_input_text;
   FILE *f;
+  u_int16_t protocol_id;
+  ndpi_protocol_category_t category;
+  ndpi_protocol_breed_t breed;
 
   /* TODO: real string instead of random bytes */
 
+  /* Use both APIs */
+
   /* Just to have some data */
   if (fuzzed_data.remaining_bytes() < 1024)
     return -1;
@@ -36,6 +42,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
     mc = NULL;
 
   a = ac_automata_init(mc);
+  a2 = ndpi_init_automa();
 
   if (fuzzed_data.ConsumeBool())
     ac_automata_feature(a, AC_FEATURE_DEBUG);
@@ -77,10 +84,18 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
           is_added = 1;
       }
     }
+
+    value_dup = ndpi_strdup(value.c_str());
+    if (!value_dup)
+      continue;
+    if (ndpi_add_string_to_automa(a2, value_dup) != 0)
+      ndpi_free(value_dup);
   }
 
-  if (fuzzed_data.ConsumeBool())
+  if (fuzzed_data.ConsumeBool()) {
     ac_automata_finalize(a);
+    ndpi_finalize_automa(a2);
+  }
 
   /* "Random" search */
   num_iteration = fuzzed_data.ConsumeIntegral<u_int8_t>();
@@ -96,6 +111,10 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
     ac_automata_search(a, &ac_input_text, &match);
 
     ndpi_free(value_dup);
+
+    ndpi_match_string(a2, (char *)value.c_str());
+    ndpi_match_string_protocol_id(a2, (char *)value.c_str(), strlen(value.c_str()),
+                                  &protocol_id, &category, &breed);
   }
   /* Search of an added node */
   if (is_added) {
@@ -104,6 +123,11 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
     ac_input_text.option = 0;
 
     ac_automata_search(a, &ac_input_text, &match);
+
+    ndpi_match_string(a2, value_added);
+    ndpi_match_string_protocol_id(a2, value_added, strlen(value_added),
+                                  &protocol_id, &category, &breed);
+
     ndpi_free(value_added);
   }
 
@@ -114,6 +138,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
   ac_automata_get_stats(a, &stats);
 
   ac_automata_release(a, 1);
+  ndpi_free_automa(a2);
 
   return 0;
 }
diff --git a/fuzz/fuzz_ds_ptree.cpp b/fuzz/fuzz_ds_ptree.cpp
index ae92a0257..d8a055c3b 100644
--- a/fuzz/fuzz_ds_ptree.cpp
+++ b/fuzz/fuzz_ds_ptree.cpp
@@ -11,10 +11,11 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
   FuzzedDataProvider fuzzed_data(data, size);
   u_int16_t i, num_iteration;
   ndpi_ptree_t *t;
-  ndpi_ip_addr_t addr, addr_added;
+  ndpi_ip_addr_t addr, addr2, addr_added;
   u_int8_t bits;
   int rc, is_added = 0;
   u_int64_t user_data;
+  char buf_ip[256];
 
   /* To allow memory allocation failures */
   fuzz_set_alloc_callbacks_and_seed(size);
@@ -37,6 +38,9 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
       bits = fuzzed_data.ConsumeIntegralInRange(0, 32);
     };
 
+    /* Not really ptree stuff, but this seem the right place to fuzz these `ndpi_ip_addr_t` functions */
+    ndpi_parse_ip_string(ndpi_get_ip_string(&addr, buf_ip, sizeof(buf_ip)), &addr2);
+
     rc = ndpi_ptree_insert(t, &addr, bits, 0);
     /* Keep one random node really added */
     if (rc == 0 && is_added == 0 && fuzzed_data.ConsumeBool()) {
diff --git a/fuzz/fuzz_libinjection.c b/fuzz/fuzz_libinjection.c
new file mode 100644
index 000000000..9fd60107b
--- /dev/null
+++ b/fuzz/fuzz_libinjection.c
@@ -0,0 +1,25 @@
+#include "ndpi_api.h"
+#include "../src/lib/third_party/include/libinjection.h"
+#include "../src/lib/third_party/include/libinjection_xss.h"
+#include "../src/lib/third_party/include/libinjection_sqli.h"
+
+int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
+  char *query;
+  char fingerprint[8];
+
+  /* No memory allocations involved */
+
+  /* Libinjection: it wants null-terminated string */
+
+  query = malloc(size + 1);
+  memcpy(query, data, size);
+  query[size] = '\0';
+
+  libinjection_sqli(query, strlen(query), fingerprint);
+
+  libinjection_xss(query, strlen(query));
+
+  free(query);
+
+  return 0;
+}
diff --git a/fuzz/fuzz_ndpi_reader.c b/fuzz/fuzz_ndpi_reader.c
index 3ea222eff..5f08220bc 100644
--- a/fuzz/fuzz_ndpi_reader.c
+++ b/fuzz/fuzz_ndpi_reader.c
@@ -15,7 +15,7 @@ int nDPI_LogLevel = 0;
 char *_debug_protocols = NULL;
 u_int32_t current_ndpi_memory = 0, max_ndpi_memory = 0;
 u_int8_t enable_protocol_guess = 1, enable_payload_analyzer = 0;
-u_int8_t enable_flow_stats = 0;
+u_int8_t enable_flow_stats = 1;
 u_int8_t human_readeable_string_len = 5;
 u_int8_t max_num_udp_dissected_pkts = 16 /* 8 is enough for most protocols, Signal requires more */, max_num_tcp_dissected_pkts = 80 /* due to telnet */;
 ndpi_init_prefs init_prefs = ndpi_track_flow_payload | ndpi_enable_ja3_plus;
diff --git a/fuzz/fuzz_serialization.cpp b/fuzz/fuzz_serialization.cpp
index f1e66399c..e5d02d4d7 100644
--- a/fuzz/fuzz_serialization.cpp
+++ b/fuzz/fuzz_serialization.cpp
@@ -142,6 +142,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
   if (fmt == ndpi_serialization_format_csv) {
     ndpi_serializer_get_header(&serializer, &buffer_len);
     ndpi_serializer_get_buffer(&serializer, &buffer_len);
+    ndpi_serializer_set_buffer_len(&serializer, fuzzed_data.ConsumeIntegral<u_int32_t>());
   } else if (fmt == ndpi_serialization_format_tlv) {
     /* Conversion from tlv to json */
     rc = ndpi_init_deserializer(&deserializer, &serializer);
@@ -154,6 +155,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
 	ndpi_serializer_get_buffer_len(&serializer_cloned);
 	ndpi_serializer_get_internal_buffer_size(&serializer_cloned);
 	ndpi_term_serializer(&serializer_cloned);
+	assert(ndpi_deserialize_get_format(&deserializer) == ndpi_serialization_format_tlv);
       }
     }
 
diff --git a/fuzz/ipv4_addresses.txt b/fuzz/ipv4_addresses.txt
new file mode 100644
index 000000000..209765e5a
--- /dev/null
+++ b/fuzz/ipv4_addresses.txt
@@ -0,0 +1,6 @@
+#Random list of ipv4 addresses
+
+192.168.5.5
+192.168.5.6/32
+192.168.4.0/24
+
diff --git a/src/include/ndpi_api.h b/src/include/ndpi_api.h
index a63e29c7f..dd065783d 100644
--- a/src/include/ndpi_api.h
+++ b/src/include/ndpi_api.h
@@ -896,7 +896,7 @@ extern "C" {
    * @par     The automata initialized with ndpi_init_automa();
    * @par     The (sub)string to search (malloc'ed memory)
    * @par     The number associated with this string
-   * @return  0 in case of no error, or -1 if an error occurred.
+   * @return  0 in case of no error, or -2 if the string has been already addeed, or -1 if an error occurred.
    *
    */
   int ndpi_add_string_value_to_automa(void *_automa, char *str, u_int32_t num);
diff --git a/src/include/ndpi_main.h b/src/include/ndpi_main.h
index 1337cc63f..4fd47d96c 100644
--- a/src/include/ndpi_main.h
+++ b/src/include/ndpi_main.h
@@ -95,7 +95,7 @@ extern "C" {
 					      struct ndpi_flow_struct *flow);
 
   extern u_int16_t ndpi_check_for_email_address(struct ndpi_detection_module_struct *ndpi_struct,
-						struct ndpi_flow_struct *flow, u_int16_t counter);
+						u_int16_t counter);
 
   extern void ndpi_int_change_category(struct ndpi_detection_module_struct *ndpi_struct,
 				       struct ndpi_flow_struct *flow,
@@ -104,8 +104,6 @@ extern "C" {
   extern void ndpi_set_proto_subprotocols(struct ndpi_detection_module_struct *ndpi_mod,
 				      int protoId, ...);
 
-  extern void ndpi_int_reset_protocol(struct ndpi_flow_struct *flow);
-
   extern int ndpi_packet_src_ip_eql(const struct ndpi_packet_struct *packet, const ndpi_ip_addr_t * ip);
   extern int ndpi_packet_dst_ip_eql(const struct ndpi_packet_struct *packet, const ndpi_ip_addr_t * ip);
   extern void ndpi_packet_src_ip_get(const struct ndpi_packet_struct *packet, ndpi_ip_addr_t * ip);
diff --git a/src/lib/ndpi_main.c b/src/lib/ndpi_main.c
index 2df9dd0cc..89b9a585e 100644
--- a/src/lib/ndpi_main.c
+++ b/src/lib/ndpi_main.c
@@ -185,6 +185,13 @@ static ndpi_risk_info ndpi_known_risks[] = {
   /* Leave this as last member */
   { NDPI_MAX_RISK,                              NDPI_RISK_LOW,    CLIENT_FAIR_RISK_PERCENTAGE, NDPI_NO_ACCOUNTABILITY   }
 };
+#if !defined(NDPI_CFFI_PREPROCESSING) && defined(__linux__)
+#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L
+_Static_assert(sizeof(ndpi_known_risks) / sizeof(ndpi_risk_info) == NDPI_MAX_RISK + 1,
+               "Invalid risks length. Do you need to update 'ndpi_known_risks' array?");
+#endif
+#endif
+
 
 /* ****************************************** */
 
@@ -998,7 +1005,7 @@ int ndpi_set_detection_preferences(struct ndpi_detection_module_struct *ndpi_str
 /* ******************************************************************** */
 
 static void ndpi_validate_protocol_initialization(struct ndpi_detection_module_struct *ndpi_str) {
-  u_int i, val;
+  u_int i;
 
   for(i = 0; i < ndpi_str->ndpi_num_supported_protocols; i++) {
     if(ndpi_str->proto_defaults[i].protoName == NULL) {
@@ -1013,13 +1020,6 @@ static void ndpi_validate_protocol_initialization(struct ndpi_detection_module_s
       }
     }
   }
-
-  /* Sanity check for risks initialization */
-  val = (sizeof(ndpi_known_risks) / sizeof(ndpi_risk_info)) - 1;
-  if(val != NDPI_MAX_RISK) {
-    NDPI_LOG_ERR(ndpi_str,  "[NDPI] INTERNAL ERROR Invalid ndpi_known_risks[] initialization [%u != %u]\n", val, NDPI_MAX_RISK);
-    exit(0);
-  }
 }
 
 /* ******************************************************************** */
@@ -2094,7 +2094,7 @@ int ac_domain_match_handler(AC_MATCH_t *m, AC_TEXT_t *txt, AC_REP_t *match) {
   AC_PATTERN_t *pattern = m->patterns;
   int i,start,end = m->position;
 
-  for(i=0; i < m->match_num; i++,pattern++) {
+  for(i=0; i < m->match_num && i < 32; i++,pattern++) {
     /*
      * See ac_automata_exact_match()
      * The bit is set if the pattern exactly matches AND
@@ -2385,6 +2385,9 @@ int ndpi_load_ipv4_ptree(struct ndpi_detection_module_struct *ndpi_str,
   int len;
   u_int num_loaded = 0;
 
+  if(!ndpi_str || !path || !ndpi_str->protocols_ptree)
+    return(-1);
+
   fd = fopen(path, "r");
 
   if(fd == NULL) {
@@ -3062,7 +3065,7 @@ int ndpi_add_string_value_to_automa(void *_automa, char *str, u_int32_t num) {
   ac_pattern.length     = strlen(ac_pattern.astring);
 
   rc = ac_automata_add(automa, &ac_pattern);
-  return(rc == ACERR_SUCCESS || rc == ACERR_DUPLICATE_PATTERN ? 0 : -1);
+  return(rc == ACERR_SUCCESS ? 0 : (rc == ACERR_DUPLICATE_PATTERN ? -2 : -1));
 }
 
 /* ****************************************************** */
@@ -3139,7 +3142,9 @@ static int ndpi_match_string_common(AC_AUTOMATA_t *automa, char *string_to_match
   }
 
   if(automa->automata_open) {
+#ifndef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
     printf("[%s:%d] [NDPI] Internal error: please call ndpi_finalize_initialization()\n", __FILE__, __LINE__);
+#endif
     return(-1);
   }
 
@@ -6306,13 +6311,13 @@ void* ndpi_find_ipv4_category_userdata(struct ndpi_detection_module_struct *ndpi
 				       u_int32_t saddr) {
   ndpi_patricia_node_t *node;
 
-  if(saddr == 0)
+  if(saddr == 0 || !ndpi_str || !ndpi_str->custom_categories.ipAddresses)
     node = NULL;
   else {
     ndpi_prefix_t prefix;
 
     ndpi_fill_prefix_v4(&prefix, (struct in_addr *) &saddr, 32,
-			((ndpi_patricia_tree_t *) ndpi_str->protocols_ptree)->maxbits);
+			((ndpi_patricia_tree_t *) ndpi_str->custom_categories.ipAddresses)->maxbits);
     node = ndpi_patricia_search_best(ndpi_str->custom_categories.ipAddresses, &prefix);
   }
 
@@ -6816,7 +6821,7 @@ u_int32_t ndpi_bytestream_to_number(const u_int8_t *str, u_int16_t max_chars_to_
   val = 0;
 
   // cancel if eof, ' ' or line end chars are reached
-  while(*str >= '0' && *str <= '9' && max_chars_to_read > 0) {
+  while(max_chars_to_read > 0 && *str >= '0' && *str <= '9') {
     val *= 10;
     val += *str - '0';
     str++;
@@ -7302,7 +7307,7 @@ void ndpi_parse_packet_line_info_any(struct ndpi_detection_module_struct *ndpi_s
 
 /* ********************************************************************************* */
 
-u_int16_t ndpi_check_for_email_address(struct ndpi_detection_module_struct *ndpi_str, struct ndpi_flow_struct *flow,
+u_int16_t ndpi_check_for_email_address(struct ndpi_detection_module_struct *ndpi_str,
 				       u_int16_t counter) {
   struct ndpi_packet_struct *packet = &ndpi_str->packet;
 
@@ -7499,18 +7504,6 @@ void ndpi_int_change_category(struct ndpi_detection_module_struct *ndpi_str, str
 
 /* ********************************************************************************* */
 
-void ndpi_int_reset_protocol(struct ndpi_flow_struct *flow) {
-  if(flow) {
-    int a;
-
-    for(a = 0; a < NDPI_PROTOCOL_SIZE; a++)
-      flow->detected_protocol_stack[a] = NDPI_PROTOCOL_UNKNOWN;
-    flow->confidence = NDPI_CONFIDENCE_UNKNOWN;
-  }
-}
-
-/* ********************************************************************************* */
-
 void NDPI_PROTOCOL_IP_clear(ndpi_ip_addr_t *ip) {
   memset(ip, 0, sizeof(ndpi_ip_addr_t));
 }
@@ -8331,7 +8324,7 @@ u_int16_t ndpi_match_host_subprotocol(struct ndpi_detection_module_struct *ndpi_
   }
 
   /* Add punycode check */
-  if(ndpi_strnstr(string_to_match, "xn--", string_to_match_len)) {
+  if(ndpi_check_punycode_string(string_to_match, string_to_match_len)) {
     char str[64] = { '\0' };
 
     strncpy(str, string_to_match, ndpi_min(string_to_match_len, sizeof(str)-1));
@@ -8452,15 +8445,15 @@ const char *ndpi_get_gcrypt_version(void) {
 }
 
 ndpi_proto_defaults_t *ndpi_get_proto_defaults(struct ndpi_detection_module_struct *ndpi_str) {
-  return(ndpi_str->proto_defaults);
+  return(ndpi_str ? ndpi_str->proto_defaults : NULL);
 }
 
 u_int ndpi_get_ndpi_num_supported_protocols(struct ndpi_detection_module_struct *ndpi_str) {
-  return(ndpi_str->ndpi_num_supported_protocols);
+  return(ndpi_str ? ndpi_str->ndpi_num_supported_protocols : 0);
 }
 
 u_int ndpi_get_ndpi_num_custom_protocols(struct ndpi_detection_module_struct *ndpi_str) {
-  return(ndpi_str->ndpi_num_custom_protocols);
+  return(ndpi_str ? ndpi_str->ndpi_num_custom_protocols : 0);
 }
 
 u_int ndpi_get_ndpi_detection_module_size() {
diff --git a/src/lib/ndpi_serializer.c b/src/lib/ndpi_serializer.c
index 17231a83b..efae73b05 100644
--- a/src/lib/ndpi_serializer.c
+++ b/src/lib/ndpi_serializer.c
@@ -1650,6 +1650,7 @@ int ndpi_serialize_binary_uint32(ndpi_serializer *_serializer,
     if(ndpi_serialize_json_post(_serializer) != 0)
       return(-1);
   } else if(serializer->fmt == ndpi_serialization_format_csv) {
+#ifndef OPTIMIZE_CSV_SERIALIZATION
     if (ndpi_serializer_header_string(serializer, key, klen) < 0) return(-1);
     ndpi_serialize_csv_pre(serializer);
     buff_diff = serializer->buffer.size - serializer->status.buffer.size_used;
@@ -1659,6 +1660,7 @@ int ndpi_serialize_binary_uint32(ndpi_serializer *_serializer,
     if(rc < 0 || (u_int)rc >= buff_diff)
       return(-1);
     serializer->status.buffer.size_used += rc;
+#endif
   } else {
     if(value <= 0xff) {
       serializer->buffer.data[serializer->status.buffer.size_used++] = (ndpi_serialization_string << 4) | ndpi_serialization_uint8;
diff --git a/src/lib/ndpi_utils.c b/src/lib/ndpi_utils.c
index 27a197d0f..53ed95939 100644
--- a/src/lib/ndpi_utils.c
+++ b/src/lib/ndpi_utils.c
@@ -91,7 +91,7 @@ _Static_assert(sizeof(struct ndpi_str_hash) == sizeof(struct ndpi_str_hash_priva
 int ndpi_check_punycode_string(char * buffer , int len) {
   int i = 0;
 
-  while(i++ < len) {
+  while(i++ < len - 3) {
     if((buffer[i] == 'x')
        && (buffer[i+1] == 'n')
        && (buffer[i+2] == '-')
@@ -2717,7 +2717,8 @@ u_int8_t ndpi_is_encrypted_proto(struct ndpi_detection_module_struct *ndpi_str,
 
 void ndpi_set_tls_cert_expire_days(struct ndpi_detection_module_struct *ndpi_str,
 				   u_int8_t num_days) {
-  ndpi_str->tls_certificate_expire_in_x_days = num_days;
+  if(ndpi_str)
+    ndpi_str->tls_certificate_expire_in_x_days = num_days;
 }
 
 /* ******************************************* */
-- 
cgit v1.2.3