Batch #16039 by eAthena: 0 byte-identical, 3 confirmed by peer review.
- fn_00129 MD5::HashBuffer: logic confirmed by peer review
- fn_00130 MD5::HashString: logic confirmed by peer review
- fn_00132 MD5::HashFile: logic confirmed by peer review
Peer-reviewed-by: Yommy, alisonrag, Toshiro
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
Batch #14291 by Yommy: 0 byte-identical, 1 confirmed by peer review.
- fn_00126 MD5::Update: logic confirmed by peer review (already on main)
Peer-reviewed-by: KWDev, SapitoSucio, Toshiro
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
Batch #13860 by eAthena: 0 byte-identical, 1 confirmed by peer review.
- fn_00134 MD5::HashStringLower: logic confirmed by peer review (already on main)
Peer-reviewed-by: KWDev, SapitoSucio, Toshiro
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
Move Lexicon*, Text (TextTokens, TextEscapes, Base64), Math/RadialGrid, Hash (MD5, XxHash32) and Cipher (Rijndael, XorBytes) into Source/Utility subfolders; update includes, guards, compile.json and CMakeLists.txt. Backfill // OFFSET: above every standalone // FUNCTION: block (89 IDs, addresses from the symbol database) and make it mandatory in CODING_RULES.md and AGENTS.md. Remove the MatchLexicon cast chain.