Fix for x86_64 build fail
[platform/upstream/connectedhomeip.git] / third_party / pigweed / repo / pw_tokenizer / pw_tokenizer_private / generated_hash_test_cases.h
1 // Copyright 2020 The Pigweed Authors
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License"); you may not
4 // use this file except in compliance with the License. You may obtain a copy of
5 // the License at
6 //
7 //     https://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11 // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12 // License for the specific language governing permissions and limitations under
13 // the License.
14
15 // AUTOGENERATED - DO NOT EDIT
16 //
17 // This file was generated by generate_hash_test_data.py.
18 // To make changes, update the script and run it to generate new files.
19 #pragma once
20
21 #include <cstddef>
22 #include <cstdint>
23 #include <string_view>
24
25 #include "pw_tokenizer/internal/pw_tokenizer_65599_fixed_length_128_hash_macro.h"
26 #include "pw_tokenizer/internal/pw_tokenizer_65599_fixed_length_80_hash_macro.h"
27 #include "pw_tokenizer/internal/pw_tokenizer_65599_fixed_length_96_hash_macro.h"
28
29 namespace pw::tokenizer {
30
31 // Test a series of generated test cases.
32 inline constexpr struct {
33   std::string_view string;
34   size_t hash_length;
35   uint32_t python_calculated_hash;
36   uint32_t macro_calculated_hash;  // clang-format off
37 } kHashTests[] = {
38
39 {
40   std::string_view("", 0u),
41   80u,  // fixed hash length
42   UINT32_C(0),  // Python-calculated hash
43   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH(""),  // macro-calculated hash
44 },
45 {
46   std::string_view("", 0u),
47   96u,  // fixed hash length
48   UINT32_C(0),  // Python-calculated hash
49   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH(""),  // macro-calculated hash
50 },
51 {
52   std::string_view("", 0u),
53   128u,  // fixed hash length
54   UINT32_C(0),  // Python-calculated hash
55   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH(""),  // macro-calculated hash
56 },
57 {
58   std::string_view("\xa1", 1u),
59   80u,  // fixed hash length
60   UINT32_C(10561440),  // Python-calculated hash
61   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\xa1"),  // macro-calculated hash
62 },
63 {
64   std::string_view("\xa1", 1u),
65   96u,  // fixed hash length
66   UINT32_C(10561440),  // Python-calculated hash
67   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\xa1"),  // macro-calculated hash
68 },
69 {
70   std::string_view("\xa1", 1u),
71   128u,  // fixed hash length
72   UINT32_C(10561440),  // Python-calculated hash
73   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\xa1"),  // macro-calculated hash
74 },
75 {
76   std::string_view("\xff", 1u),
77   80u,  // fixed hash length
78   UINT32_C(16727746),  // Python-calculated hash
79   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\xff"),  // macro-calculated hash
80 },
81 {
82   std::string_view("\xff", 1u),
83   96u,  // fixed hash length
84   UINT32_C(16727746),  // Python-calculated hash
85   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\xff"),  // macro-calculated hash
86 },
87 {
88   std::string_view("\xff", 1u),
89   128u,  // fixed hash length
90   UINT32_C(16727746),  // Python-calculated hash
91   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\xff"),  // macro-calculated hash
92 },
93 {
94   std::string_view("\x00", 1u),
95   80u,  // fixed hash length
96   UINT32_C(1),  // Python-calculated hash
97   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x00"),  // macro-calculated hash
98 },
99 {
100   std::string_view("\x00", 1u),
101   96u,  // fixed hash length
102   UINT32_C(1),  // Python-calculated hash
103   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x00"),  // macro-calculated hash
104 },
105 {
106   std::string_view("\x00", 1u),
107   128u,  // fixed hash length
108   UINT32_C(1),  // Python-calculated hash
109   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x00"),  // macro-calculated hash
110 },
111 {
112   std::string_view("\x00\x00", 2u),
113   80u,  // fixed hash length
114   UINT32_C(2),  // Python-calculated hash
115   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x00\x00"),  // macro-calculated hash
116 },
117 {
118   std::string_view("\x00\x00", 2u),
119   96u,  // fixed hash length
120   UINT32_C(2),  // Python-calculated hash
121   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x00\x00"),  // macro-calculated hash
122 },
123 {
124   std::string_view("\x00\x00", 2u),
125   128u,  // fixed hash length
126   UINT32_C(2),  // Python-calculated hash
127   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x00\x00"),  // macro-calculated hash
128 },
129 {
130   std::string_view("a", 1u),
131   80u,  // fixed hash length
132   UINT32_C(6363104),  // Python-calculated hash
133   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("a"),  // macro-calculated hash
134 },
135 {
136   std::string_view("a", 1u),
137   96u,  // fixed hash length
138   UINT32_C(6363104),  // Python-calculated hash
139   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("a"),  // macro-calculated hash
140 },
141 {
142   std::string_view("a", 1u),
143   128u,  // fixed hash length
144   UINT32_C(6363104),  // Python-calculated hash
145   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("a"),  // macro-calculated hash
146 },
147 {
148   std::string_view("A", 1u),
149   80u,  // fixed hash length
150   UINT32_C(4263936),  // Python-calculated hash
151   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("A"),  // macro-calculated hash
152 },
153 {
154   std::string_view("A", 1u),
155   96u,  // fixed hash length
156   UINT32_C(4263936),  // Python-calculated hash
157   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("A"),  // macro-calculated hash
158 },
159 {
160   std::string_view("A", 1u),
161   128u,  // fixed hash length
162   UINT32_C(4263936),  // Python-calculated hash
163   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("A"),  // macro-calculated hash
164 },
165 {
166   std::string_view("hello, \"world\"", 14u),
167   80u,  // fixed hash length
168   UINT32_C(3537412730),  // Python-calculated hash
169   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("hello, \"world\""),  // macro-calculated hash
170 },
171 {
172   std::string_view("hello, \"world\"", 14u),
173   96u,  // fixed hash length
174   UINT32_C(3537412730),  // Python-calculated hash
175   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("hello, \"world\""),  // macro-calculated hash
176 },
177 {
178   std::string_view("hello, \"world\"", 14u),
179   128u,  // fixed hash length
180   UINT32_C(3537412730),  // Python-calculated hash
181   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("hello, \"world\""),  // macro-calculated hash
182 },
183 {
184   std::string_view("YOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYO", 200u),
185   80u,  // fixed hash length
186   UINT32_C(2035157304),  // Python-calculated hash
187   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("YOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYO"),  // macro-calculated hash
188 },
189 {
190   std::string_view("YOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYO", 200u),
191   96u,  // fixed hash length
192   UINT32_C(4222077672),  // Python-calculated hash
193   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("YOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYO"),  // macro-calculated hash
194 },
195 {
196   std::string_view("YOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYO", 200u),
197   128u,  // fixed hash length
198   UINT32_C(255790664),  // Python-calculated hash
199   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("YOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYO"),  // macro-calculated hash
200 },
201 {
202   std::string_view("4", 1u),
203   80u,  // fixed hash length
204   UINT32_C(3411149),  // Python-calculated hash
205   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("4"),  // macro-calculated hash
206 },
207 {
208   std::string_view("4", 1u),
209   96u,  // fixed hash length
210   UINT32_C(3411149),  // Python-calculated hash
211   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("4"),  // macro-calculated hash
212 },
213 {
214   std::string_view("4", 1u),
215   128u,  // fixed hash length
216   UINT32_C(3411149),  // Python-calculated hash
217   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("4"),  // macro-calculated hash
218 },
219 {
220   std::string_view("\xe0", 1u),
221   80u,  // fixed hash length
222   UINT32_C(14694177),  // Python-calculated hash
223   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\xe0"),  // macro-calculated hash
224 },
225 {
226   std::string_view("\xe0", 1u),
227   96u,  // fixed hash length
228   UINT32_C(14694177),  // Python-calculated hash
229   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\xe0"),  // macro-calculated hash
230 },
231 {
232   std::string_view("\xe0", 1u),
233   128u,  // fixed hash length
234   UINT32_C(14694177),  // Python-calculated hash
235   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\xe0"),  // macro-calculated hash
236 },
237 {
238   std::string_view("\x90\xb9", 2u),
239   80u,  // fixed hash length
240   UINT32_C(1537824683),  // Python-calculated hash
241   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x90\xb9"),  // macro-calculated hash
242 },
243 {
244   std::string_view("\x90\xb9", 2u),
245   96u,  // fixed hash length
246   UINT32_C(1537824683),  // Python-calculated hash
247   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x90\xb9"),  // macro-calculated hash
248 },
249 {
250   std::string_view("\x90\xb9", 2u),
251   128u,  // fixed hash length
252   UINT32_C(1537824683),  // Python-calculated hash
253   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x90\xb9"),  // macro-calculated hash
254 },
255 {
256   std::string_view("\x6a\xe7", 2u),
257   80u,  // fixed hash length
258   UINT32_C(1915361151),  // Python-calculated hash
259   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x6a\xe7"),  // macro-calculated hash
260 },
261 {
262   std::string_view("\x6a\xe7", 2u),
263   96u,  // fixed hash length
264   UINT32_C(1915361151),  // Python-calculated hash
265   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x6a\xe7"),  // macro-calculated hash
266 },
267 {
268   std::string_view("\x6a\xe7", 2u),
269   128u,  // fixed hash length
270   UINT32_C(1915361151),  // Python-calculated hash
271   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x6a\xe7"),  // macro-calculated hash
272 },
273 {
274   std::string_view("dy0", 3u),
275   80u,  // fixed hash length
276   UINT32_C(4114649192),  // Python-calculated hash
277   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("dy0"),  // macro-calculated hash
278 },
279 {
280   std::string_view("dy0", 3u),
281   96u,  // fixed hash length
282   UINT32_C(4114649192),  // Python-calculated hash
283   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("dy0"),  // macro-calculated hash
284 },
285 {
286   std::string_view("dy0", 3u),
287   128u,  // fixed hash length
288   UINT32_C(4114649192),  // Python-calculated hash
289   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("dy0"),  // macro-calculated hash
290 },
291 {
292   std::string_view("\xc4\x18\x32", 3u),
293   80u,  // fixed hash length
294   UINT32_C(585787813),  // Python-calculated hash
295   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\xc4\x18\x32"),  // macro-calculated hash
296 },
297 {
298   std::string_view("\xc4\x18\x32", 3u),
299   96u,  // fixed hash length
300   UINT32_C(585787813),  // Python-calculated hash
301   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\xc4\x18\x32"),  // macro-calculated hash
302 },
303 {
304   std::string_view("\xc4\x18\x32", 3u),
305   128u,  // fixed hash length
306   UINT32_C(585787813),  // Python-calculated hash
307   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\xc4\x18\x32"),  // macro-calculated hash
308 },
309 {
310   std::string_view("\x1c\xfc\x28\x2b", 4u),
311   80u,  // fixed hash length
312   UINT32_C(704109799),  // Python-calculated hash
313   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x1c\xfc\x28\x2b"),  // macro-calculated hash
314 },
315 {
316   std::string_view("\x1c\xfc\x28\x2b", 4u),
317   96u,  // fixed hash length
318   UINT32_C(704109799),  // Python-calculated hash
319   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x1c\xfc\x28\x2b"),  // macro-calculated hash
320 },
321 {
322   std::string_view("\x1c\xfc\x28\x2b", 4u),
323   128u,  // fixed hash length
324   UINT32_C(704109799),  // Python-calculated hash
325   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x1c\xfc\x28\x2b"),  // macro-calculated hash
326 },
327 {
328   std::string_view("\xab\x96\x56\x70", 4u),
329   80u,  // fixed hash length
330   UINT32_C(2738614345),  // Python-calculated hash
331   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\xab\x96\x56\x70"),  // macro-calculated hash
332 },
333 {
334   std::string_view("\xab\x96\x56\x70", 4u),
335   96u,  // fixed hash length
336   UINT32_C(2738614345),  // Python-calculated hash
337   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\xab\x96\x56\x70"),  // macro-calculated hash
338 },
339 {
340   std::string_view("\xab\x96\x56\x70", 4u),
341   128u,  // fixed hash length
342   UINT32_C(2738614345),  // Python-calculated hash
343   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\xab\x96\x56\x70"),  // macro-calculated hash
344 },
345 {
346   std::string_view("\x18\x1e\x6e\x6a\x73", 5u),
347   80u,  // fixed hash length
348   UINT32_C(580554452),  // Python-calculated hash
349   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x18\x1e\x6e\x6a\x73"),  // macro-calculated hash
350 },
351 {
352   std::string_view("\x18\x1e\x6e\x6a\x73", 5u),
353   96u,  // fixed hash length
354   UINT32_C(580554452),  // Python-calculated hash
355   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x18\x1e\x6e\x6a\x73"),  // macro-calculated hash
356 },
357 {
358   std::string_view("\x18\x1e\x6e\x6a\x73", 5u),
359   128u,  // fixed hash length
360   UINT32_C(580554452),  // Python-calculated hash
361   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x18\x1e\x6e\x6a\x73"),  // macro-calculated hash
362 },
363 {
364   std::string_view("\xde\xe5\xdf\x22\x00", 5u),
365   80u,  // fixed hash length
366   UINT32_C(4269181327),  // Python-calculated hash
367   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\xde\xe5\xdf\x22\x00"),  // macro-calculated hash
368 },
369 {
370   std::string_view("\xde\xe5\xdf\x22\x00", 5u),
371   96u,  // fixed hash length
372   UINT32_C(4269181327),  // Python-calculated hash
373   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\xde\xe5\xdf\x22\x00"),  // macro-calculated hash
374 },
375 {
376   std::string_view("\xde\xe5\xdf\x22\x00", 5u),
377   128u,  // fixed hash length
378   UINT32_C(4269181327),  // Python-calculated hash
379   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\xde\xe5\xdf\x22\x00"),  // macro-calculated hash
380 },
381 {
382   std::string_view("\x59\xac\x64\x3b\xc7\x36", 6u),
383   80u,  // fixed hash length
384   UINT32_C(2461849503),  // Python-calculated hash
385   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x59\xac\x64\x3b\xc7\x36"),  // macro-calculated hash
386 },
387 {
388   std::string_view("\x59\xac\x64\x3b\xc7\x36", 6u),
389   96u,  // fixed hash length
390   UINT32_C(2461849503),  // Python-calculated hash
391   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x59\xac\x64\x3b\xc7\x36"),  // macro-calculated hash
392 },
393 {
394   std::string_view("\x59\xac\x64\x3b\xc7\x36", 6u),
395   128u,  // fixed hash length
396   UINT32_C(2461849503),  // Python-calculated hash
397   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x59\xac\x64\x3b\xc7\x36"),  // macro-calculated hash
398 },
399 {
400   std::string_view("\xe1\xef\x87\x8d\xbc\xd7", 6u),
401   80u,  // fixed hash length
402   UINT32_C(2407518645),  // Python-calculated hash
403   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\xe1\xef\x87\x8d\xbc\xd7"),  // macro-calculated hash
404 },
405 {
406   std::string_view("\xe1\xef\x87\x8d\xbc\xd7", 6u),
407   96u,  // fixed hash length
408   UINT32_C(2407518645),  // Python-calculated hash
409   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\xe1\xef\x87\x8d\xbc\xd7"),  // macro-calculated hash
410 },
411 {
412   std::string_view("\xe1\xef\x87\x8d\xbc\xd7", 6u),
413   128u,  // fixed hash length
414   UINT32_C(2407518645),  // Python-calculated hash
415   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\xe1\xef\x87\x8d\xbc\xd7"),  // macro-calculated hash
416 },
417 {
418   std::string_view("\x34\xd8\x3a\xbb\xf1\x0e\x07", 7u),
419   80u,  // fixed hash length
420   UINT32_C(2657240642),  // Python-calculated hash
421   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x34\xd8\x3a\xbb\xf1\x0e\x07"),  // macro-calculated hash
422 },
423 {
424   std::string_view("\x34\xd8\x3a\xbb\xf1\x0e\x07", 7u),
425   96u,  // fixed hash length
426   UINT32_C(2657240642),  // Python-calculated hash
427   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x34\xd8\x3a\xbb\xf1\x0e\x07"),  // macro-calculated hash
428 },
429 {
430   std::string_view("\x34\xd8\x3a\xbb\xf1\x0e\x07", 7u),
431   128u,  // fixed hash length
432   UINT32_C(2657240642),  // Python-calculated hash
433   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x34\xd8\x3a\xbb\xf1\x0e\x07"),  // macro-calculated hash
434 },
435 {
436   std::string_view("\xa2\x8e\xb6\x56\x83\xd2\x89", 7u),
437   80u,  // fixed hash length
438   UINT32_C(2016713689),  // Python-calculated hash
439   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\xa2\x8e\xb6\x56\x83\xd2\x89"),  // macro-calculated hash
440 },
441 {
442   std::string_view("\xa2\x8e\xb6\x56\x83\xd2\x89", 7u),
443   96u,  // fixed hash length
444   UINT32_C(2016713689),  // Python-calculated hash
445   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\xa2\x8e\xb6\x56\x83\xd2\x89"),  // macro-calculated hash
446 },
447 {
448   std::string_view("\xa2\x8e\xb6\x56\x83\xd2\x89", 7u),
449   128u,  // fixed hash length
450   UINT32_C(2016713689),  // Python-calculated hash
451   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\xa2\x8e\xb6\x56\x83\xd2\x89"),  // macro-calculated hash
452 },
453 {
454   std::string_view("\x20\x3b\x66\x3f\x80\x8b\xd6\x9f", 8u),
455   80u,  // fixed hash length
456   UINT32_C(727179216),  // Python-calculated hash
457   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x20\x3b\x66\x3f\x80\x8b\xd6\x9f"),  // macro-calculated hash
458 },
459 {
460   std::string_view("\x20\x3b\x66\x3f\x80\x8b\xd6\x9f", 8u),
461   96u,  // fixed hash length
462   UINT32_C(727179216),  // Python-calculated hash
463   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x20\x3b\x66\x3f\x80\x8b\xd6\x9f"),  // macro-calculated hash
464 },
465 {
466   std::string_view("\x20\x3b\x66\x3f\x80\x8b\xd6\x9f", 8u),
467   128u,  // fixed hash length
468   UINT32_C(727179216),  // Python-calculated hash
469   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x20\x3b\x66\x3f\x80\x8b\xd6\x9f"),  // macro-calculated hash
470 },
471 {
472   std::string_view("\xe5\x15\xbf\x96\x52\xd8\x22\x72", 8u),
473   80u,  // fixed hash length
474   UINT32_C(110264805),  // Python-calculated hash
475   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\xe5\x15\xbf\x96\x52\xd8\x22\x72"),  // macro-calculated hash
476 },
477 {
478   std::string_view("\xe5\x15\xbf\x96\x52\xd8\x22\x72", 8u),
479   96u,  // fixed hash length
480   UINT32_C(110264805),  // Python-calculated hash
481   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\xe5\x15\xbf\x96\x52\xd8\x22\x72"),  // macro-calculated hash
482 },
483 {
484   std::string_view("\xe5\x15\xbf\x96\x52\xd8\x22\x72", 8u),
485   128u,  // fixed hash length
486   UINT32_C(110264805),  // Python-calculated hash
487   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\xe5\x15\xbf\x96\x52\xd8\x22\x72"),  // macro-calculated hash
488 },
489 {
490   std::string_view("\x21\x5a\x75\x73\xf1\x70\xc1\x0e\x82", 9u),
491   80u,  // fixed hash length
492   UINT32_C(261914122),  // Python-calculated hash
493   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x21\x5a\x75\x73\xf1\x70\xc1\x0e\x82"),  // macro-calculated hash
494 },
495 {
496   std::string_view("\x21\x5a\x75\x73\xf1\x70\xc1\x0e\x82", 9u),
497   96u,  // fixed hash length
498   UINT32_C(261914122),  // Python-calculated hash
499   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x21\x5a\x75\x73\xf1\x70\xc1\x0e\x82"),  // macro-calculated hash
500 },
501 {
502   std::string_view("\x21\x5a\x75\x73\xf1\x70\xc1\x0e\x82", 9u),
503   128u,  // fixed hash length
504   UINT32_C(261914122),  // Python-calculated hash
505   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x21\x5a\x75\x73\xf1\x70\xc1\x0e\x82"),  // macro-calculated hash
506 },
507 {
508   std::string_view("\x37\x1b\xf3\x87\x5c\xd9\x94\xc6\x40", 9u),
509   80u,  // fixed hash length
510   UINT32_C(1833718768),  // Python-calculated hash
511   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x37\x1b\xf3\x87\x5c\xd9\x94\xc6\x40"),  // macro-calculated hash
512 },
513 {
514   std::string_view("\x37\x1b\xf3\x87\x5c\xd9\x94\xc6\x40", 9u),
515   96u,  // fixed hash length
516   UINT32_C(1833718768),  // Python-calculated hash
517   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x37\x1b\xf3\x87\x5c\xd9\x94\xc6\x40"),  // macro-calculated hash
518 },
519 {
520   std::string_view("\x37\x1b\xf3\x87\x5c\xd9\x94\xc6\x40", 9u),
521   128u,  // fixed hash length
522   UINT32_C(1833718768),  // Python-calculated hash
523   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x37\x1b\xf3\x87\x5c\xd9\x94\xc6\x40"),  // macro-calculated hash
524 },
525 {
526   std::string_view("\x71\x48\x39\xc6\x53\x98\xfa\xc6\x54\x3d", 10u),
527   80u,  // fixed hash length
528   UINT32_C(2326646568),  // Python-calculated hash
529   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x71\x48\x39\xc6\x53\x98\xfa\xc6\x54\x3d"),  // macro-calculated hash
530 },
531 {
532   std::string_view("\x71\x48\x39\xc6\x53\x98\xfa\xc6\x54\x3d", 10u),
533   96u,  // fixed hash length
534   UINT32_C(2326646568),  // Python-calculated hash
535   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x71\x48\x39\xc6\x53\x98\xfa\xc6\x54\x3d"),  // macro-calculated hash
536 },
537 {
538   std::string_view("\x71\x48\x39\xc6\x53\x98\xfa\xc6\x54\x3d", 10u),
539   128u,  // fixed hash length
540   UINT32_C(2326646568),  // Python-calculated hash
541   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x71\x48\x39\xc6\x53\x98\xfa\xc6\x54\x3d"),  // macro-calculated hash
542 },
543 {
544   std::string_view("\x82\x26\x3a\x43\x83\xcf\x86\x3d\x3b\xf5", 10u),
545   80u,  // fixed hash length
546   UINT32_C(2712532084),  // Python-calculated hash
547   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x82\x26\x3a\x43\x83\xcf\x86\x3d\x3b\xf5"),  // macro-calculated hash
548 },
549 {
550   std::string_view("\x82\x26\x3a\x43\x83\xcf\x86\x3d\x3b\xf5", 10u),
551   96u,  // fixed hash length
552   UINT32_C(2712532084),  // Python-calculated hash
553   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x82\x26\x3a\x43\x83\xcf\x86\x3d\x3b\xf5"),  // macro-calculated hash
554 },
555 {
556   std::string_view("\x82\x26\x3a\x43\x83\xcf\x86\x3d\x3b\xf5", 10u),
557   128u,  // fixed hash length
558   UINT32_C(2712532084),  // Python-calculated hash
559   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x82\x26\x3a\x43\x83\xcf\x86\x3d\x3b\xf5"),  // macro-calculated hash
560 },
561 {
562   std::string_view("\xde\x35\x78\x6e\x3f\x98\x61\x43\x53\x28\x24", 11u),
563   80u,  // fixed hash length
564   UINT32_C(544632964),  // Python-calculated hash
565   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\xde\x35\x78\x6e\x3f\x98\x61\x43\x53\x28\x24"),  // macro-calculated hash
566 },
567 {
568   std::string_view("\xde\x35\x78\x6e\x3f\x98\x61\x43\x53\x28\x24", 11u),
569   96u,  // fixed hash length
570   UINT32_C(544632964),  // Python-calculated hash
571   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\xde\x35\x78\x6e\x3f\x98\x61\x43\x53\x28\x24"),  // macro-calculated hash
572 },
573 {
574   std::string_view("\xde\x35\x78\x6e\x3f\x98\x61\x43\x53\x28\x24", 11u),
575   128u,  // fixed hash length
576   UINT32_C(544632964),  // Python-calculated hash
577   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\xde\x35\x78\x6e\x3f\x98\x61\x43\x53\x28\x24"),  // macro-calculated hash
578 },
579 {
580   std::string_view("\x28\x5a\xef\x49\x5c\xfb\x43\x91\xdd\x27\x00", 11u),
581   80u,  // fixed hash length
582   UINT32_C(3878380686),  // Python-calculated hash
583   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x28\x5a\xef\x49\x5c\xfb\x43\x91\xdd\x27\x00"),  // macro-calculated hash
584 },
585 {
586   std::string_view("\x28\x5a\xef\x49\x5c\xfb\x43\x91\xdd\x27\x00", 11u),
587   96u,  // fixed hash length
588   UINT32_C(3878380686),  // Python-calculated hash
589   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x28\x5a\xef\x49\x5c\xfb\x43\x91\xdd\x27\x00"),  // macro-calculated hash
590 },
591 {
592   std::string_view("\x28\x5a\xef\x49\x5c\xfb\x43\x91\xdd\x27\x00", 11u),
593   128u,  // fixed hash length
594   UINT32_C(3878380686),  // Python-calculated hash
595   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x28\x5a\xef\x49\x5c\xfb\x43\x91\xdd\x27\x00"),  // macro-calculated hash
596 },
597 {
598   std::string_view("\xca\x45\x01\x88\x5d\xf2\x24\xa9\x78\xbf\x91\x97", 12u),
599   80u,  // fixed hash length
600   UINT32_C(4053891765),  // Python-calculated hash
601   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\xca\x45\x01\x88\x5d\xf2\x24\xa9\x78\xbf\x91\x97"),  // macro-calculated hash
602 },
603 {
604   std::string_view("\xca\x45\x01\x88\x5d\xf2\x24\xa9\x78\xbf\x91\x97", 12u),
605   96u,  // fixed hash length
606   UINT32_C(4053891765),  // Python-calculated hash
607   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\xca\x45\x01\x88\x5d\xf2\x24\xa9\x78\xbf\x91\x97"),  // macro-calculated hash
608 },
609 {
610   std::string_view("\xca\x45\x01\x88\x5d\xf2\x24\xa9\x78\xbf\x91\x97", 12u),
611   128u,  // fixed hash length
612   UINT32_C(4053891765),  // Python-calculated hash
613   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\xca\x45\x01\x88\x5d\xf2\x24\xa9\x78\xbf\x91\x97"),  // macro-calculated hash
614 },
615 {
616   std::string_view("\x43\xa1\xfb\x5c\x60\x89\xaf\x2b\xdb\xa9\xe5\x59", 12u),
617   80u,  // fixed hash length
618   UINT32_C(2009683698),  // Python-calculated hash
619   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x43\xa1\xfb\x5c\x60\x89\xaf\x2b\xdb\xa9\xe5\x59"),  // macro-calculated hash
620 },
621 {
622   std::string_view("\x43\xa1\xfb\x5c\x60\x89\xaf\x2b\xdb\xa9\xe5\x59", 12u),
623   96u,  // fixed hash length
624   UINT32_C(2009683698),  // Python-calculated hash
625   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x43\xa1\xfb\x5c\x60\x89\xaf\x2b\xdb\xa9\xe5\x59"),  // macro-calculated hash
626 },
627 {
628   std::string_view("\x43\xa1\xfb\x5c\x60\x89\xaf\x2b\xdb\xa9\xe5\x59", 12u),
629   128u,  // fixed hash length
630   UINT32_C(2009683698),  // Python-calculated hash
631   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x43\xa1\xfb\x5c\x60\x89\xaf\x2b\xdb\xa9\xe5\x59"),  // macro-calculated hash
632 },
633 {
634   std::string_view("\xde\x1a\x80\x72\x19\x63\x71\x85\x6c\x53\x51\x7a\x26", 13u),
635   80u,  // fixed hash length
636   UINT32_C(3862326851),  // Python-calculated hash
637   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\xde\x1a\x80\x72\x19\x63\x71\x85\x6c\x53\x51\x7a\x26"),  // macro-calculated hash
638 },
639 {
640   std::string_view("\xde\x1a\x80\x72\x19\x63\x71\x85\x6c\x53\x51\x7a\x26", 13u),
641   96u,  // fixed hash length
642   UINT32_C(3862326851),  // Python-calculated hash
643   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\xde\x1a\x80\x72\x19\x63\x71\x85\x6c\x53\x51\x7a\x26"),  // macro-calculated hash
644 },
645 {
646   std::string_view("\xde\x1a\x80\x72\x19\x63\x71\x85\x6c\x53\x51\x7a\x26", 13u),
647   128u,  // fixed hash length
648   UINT32_C(3862326851),  // Python-calculated hash
649   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\xde\x1a\x80\x72\x19\x63\x71\x85\x6c\x53\x51\x7a\x26"),  // macro-calculated hash
650 },
651 {
652   std::string_view("\x59\x74\xd1\xa5\x70\x0b\xef\x7d\x45\xa9\xcc\xef\x1e", 13u),
653   80u,  // fixed hash length
654   UINT32_C(2358079886),  // Python-calculated hash
655   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x59\x74\xd1\xa5\x70\x0b\xef\x7d\x45\xa9\xcc\xef\x1e"),  // macro-calculated hash
656 },
657 {
658   std::string_view("\x59\x74\xd1\xa5\x70\x0b\xef\x7d\x45\xa9\xcc\xef\x1e", 13u),
659   96u,  // fixed hash length
660   UINT32_C(2358079886),  // Python-calculated hash
661   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x59\x74\xd1\xa5\x70\x0b\xef\x7d\x45\xa9\xcc\xef\x1e"),  // macro-calculated hash
662 },
663 {
664   std::string_view("\x59\x74\xd1\xa5\x70\x0b\xef\x7d\x45\xa9\xcc\xef\x1e", 13u),
665   128u,  // fixed hash length
666   UINT32_C(2358079886),  // Python-calculated hash
667   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x59\x74\xd1\xa5\x70\x0b\xef\x7d\x45\xa9\xcc\xef\x1e"),  // macro-calculated hash
668 },
669 {
670   std::string_view("\xed\xf2\x0a\x96\x1e\xec\x9e\xda\x71\xba\x60\x4d\x49\x8a", 14u),
671   80u,  // fixed hash length
672   UINT32_C(4215296608),  // Python-calculated hash
673   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\xed\xf2\x0a\x96\x1e\xec\x9e\xda\x71\xba\x60\x4d\x49\x8a"),  // macro-calculated hash
674 },
675 {
676   std::string_view("\xed\xf2\x0a\x96\x1e\xec\x9e\xda\x71\xba\x60\x4d\x49\x8a", 14u),
677   96u,  // fixed hash length
678   UINT32_C(4215296608),  // Python-calculated hash
679   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\xed\xf2\x0a\x96\x1e\xec\x9e\xda\x71\xba\x60\x4d\x49\x8a"),  // macro-calculated hash
680 },
681 {
682   std::string_view("\xed\xf2\x0a\x96\x1e\xec\x9e\xda\x71\xba\x60\x4d\x49\x8a", 14u),
683   128u,  // fixed hash length
684   UINT32_C(4215296608),  // Python-calculated hash
685   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\xed\xf2\x0a\x96\x1e\xec\x9e\xda\x71\xba\x60\x4d\x49\x8a"),  // macro-calculated hash
686 },
687 {
688   std::string_view("\x89\x5f\xe4\x0a\xfb\x75\xff\x6a\x24\x1c\x06\xec\xad\xc8", 14u),
689   80u,  // fixed hash length
690   UINT32_C(1051337960),  // Python-calculated hash
691   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x89\x5f\xe4\x0a\xfb\x75\xff\x6a\x24\x1c\x06\xec\xad\xc8"),  // macro-calculated hash
692 },
693 {
694   std::string_view("\x89\x5f\xe4\x0a\xfb\x75\xff\x6a\x24\x1c\x06\xec\xad\xc8", 14u),
695   96u,  // fixed hash length
696   UINT32_C(1051337960),  // Python-calculated hash
697   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x89\x5f\xe4\x0a\xfb\x75\xff\x6a\x24\x1c\x06\xec\xad\xc8"),  // macro-calculated hash
698 },
699 {
700   std::string_view("\x89\x5f\xe4\x0a\xfb\x75\xff\x6a\x24\x1c\x06\xec\xad\xc8", 14u),
701   128u,  // fixed hash length
702   UINT32_C(1051337960),  // Python-calculated hash
703   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x89\x5f\xe4\x0a\xfb\x75\xff\x6a\x24\x1c\x06\xec\xad\xc8"),  // macro-calculated hash
704 },
705 {
706   std::string_view("\x63\xe4\xd0\xdd\xf5\x83\xdb\xa4\x6b\x25\xc2\x2f\x8e\xfe\x1a", 15u),
707   80u,  // fixed hash length
708   UINT32_C(3916582129),  // Python-calculated hash
709   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x63\xe4\xd0\xdd\xf5\x83\xdb\xa4\x6b\x25\xc2\x2f\x8e\xfe\x1a"),  // macro-calculated hash
710 },
711 {
712   std::string_view("\x63\xe4\xd0\xdd\xf5\x83\xdb\xa4\x6b\x25\xc2\x2f\x8e\xfe\x1a", 15u),
713   96u,  // fixed hash length
714   UINT32_C(3916582129),  // Python-calculated hash
715   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x63\xe4\xd0\xdd\xf5\x83\xdb\xa4\x6b\x25\xc2\x2f\x8e\xfe\x1a"),  // macro-calculated hash
716 },
717 {
718   std::string_view("\x63\xe4\xd0\xdd\xf5\x83\xdb\xa4\x6b\x25\xc2\x2f\x8e\xfe\x1a", 15u),
719   128u,  // fixed hash length
720   UINT32_C(3916582129),  // Python-calculated hash
721   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x63\xe4\xd0\xdd\xf5\x83\xdb\xa4\x6b\x25\xc2\x2f\x8e\xfe\x1a"),  // macro-calculated hash
722 },
723 {
724   std::string_view("\x12\xbf\x0e\x44\x14\x1d\x31\x3c\x77\x5e\xf9\xa4\x98\x42\x76", 15u),
725   80u,  // fixed hash length
726   UINT32_C(2665036172),  // Python-calculated hash
727   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x12\xbf\x0e\x44\x14\x1d\x31\x3c\x77\x5e\xf9\xa4\x98\x42\x76"),  // macro-calculated hash
728 },
729 {
730   std::string_view("\x12\xbf\x0e\x44\x14\x1d\x31\x3c\x77\x5e\xf9\xa4\x98\x42\x76", 15u),
731   96u,  // fixed hash length
732   UINT32_C(2665036172),  // Python-calculated hash
733   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x12\xbf\x0e\x44\x14\x1d\x31\x3c\x77\x5e\xf9\xa4\x98\x42\x76"),  // macro-calculated hash
734 },
735 {
736   std::string_view("\x12\xbf\x0e\x44\x14\x1d\x31\x3c\x77\x5e\xf9\xa4\x98\x42\x76", 15u),
737   128u,  // fixed hash length
738   UINT32_C(2665036172),  // Python-calculated hash
739   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x12\xbf\x0e\x44\x14\x1d\x31\x3c\x77\x5e\xf9\xa4\x98\x42\x76"),  // macro-calculated hash
740 },
741 {
742   std::string_view("\x97\xec\x22\xd5\x2d\xdb\xd7\x6a\xd7\x80\xae\xd1\x68\x3a\xca\xbe\x6b\x3c\xbb\x1b\x68\xca\xb4\xde\xa0\xb3\x7f\x80\x44\xd2\xa3\xe9\x80\x56\x06\xb9\xe4\xeb\xde\xe2\x9f\xc5\xcd\xc0\x21\x19\x21\x77\xdc\x38\xf9\x6c\xdb\x00\x64\x46\x40\xfa\x29\xd4\x9c\x87\x3e\x80\xd6\xbe\x4e\xed\x12\x54\xa9\x38\xe3\xff\x6f\x79\x30\xd7\xeb", 79u),
743   80u,  // fixed hash length
744   UINT32_C(2352453932),  // Python-calculated hash
745   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x97\xec\x22\xd5\x2d\xdb\xd7\x6a\xd7\x80\xae\xd1\x68\x3a\xca\xbe\x6b\x3c\xbb\x1b\x68\xca\xb4\xde\xa0\xb3\x7f\x80\x44\xd2\xa3\xe9\x80\x56\x06\xb9\xe4\xeb\xde\xe2\x9f\xc5\xcd\xc0\x21\x19\x21\x77\xdc\x38\xf9\x6c\xdb\x00\x64\x46\x40\xfa\x29\xd4\x9c\x87\x3e\x80\xd6\xbe\x4e\xed\x12\x54\xa9\x38\xe3\xff\x6f\x79\x30\xd7\xeb"),  // macro-calculated hash
746 },
747 {
748   std::string_view("\x97\xec\x22\xd5\x2d\xdb\xd7\x6a\xd7\x80\xae\xd1\x68\x3a\xca\xbe\x6b\x3c\xbb\x1b\x68\xca\xb4\xde\xa0\xb3\x7f\x80\x44\xd2\xa3\xe9\x80\x56\x06\xb9\xe4\xeb\xde\xe2\x9f\xc5\xcd\xc0\x21\x19\x21\x77\xdc\x38\xf9\x6c\xdb\x00\x64\x46\x40\xfa\x29\xd4\x9c\x87\x3e\x80\xd6\xbe\x4e\xed\x12\x54\xa9\x38\xe3\xff\x6f\x79\x30\xd7\xeb", 79u),
749   96u,  // fixed hash length
750   UINT32_C(2352453932),  // Python-calculated hash
751   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x97\xec\x22\xd5\x2d\xdb\xd7\x6a\xd7\x80\xae\xd1\x68\x3a\xca\xbe\x6b\x3c\xbb\x1b\x68\xca\xb4\xde\xa0\xb3\x7f\x80\x44\xd2\xa3\xe9\x80\x56\x06\xb9\xe4\xeb\xde\xe2\x9f\xc5\xcd\xc0\x21\x19\x21\x77\xdc\x38\xf9\x6c\xdb\x00\x64\x46\x40\xfa\x29\xd4\x9c\x87\x3e\x80\xd6\xbe\x4e\xed\x12\x54\xa9\x38\xe3\xff\x6f\x79\x30\xd7\xeb"),  // macro-calculated hash
752 },
753 {
754   std::string_view("\x97\xec\x22\xd5\x2d\xdb\xd7\x6a\xd7\x80\xae\xd1\x68\x3a\xca\xbe\x6b\x3c\xbb\x1b\x68\xca\xb4\xde\xa0\xb3\x7f\x80\x44\xd2\xa3\xe9\x80\x56\x06\xb9\xe4\xeb\xde\xe2\x9f\xc5\xcd\xc0\x21\x19\x21\x77\xdc\x38\xf9\x6c\xdb\x00\x64\x46\x40\xfa\x29\xd4\x9c\x87\x3e\x80\xd6\xbe\x4e\xed\x12\x54\xa9\x38\xe3\xff\x6f\x79\x30\xd7\xeb", 79u),
755   128u,  // fixed hash length
756   UINT32_C(2352453932),  // Python-calculated hash
757   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x97\xec\x22\xd5\x2d\xdb\xd7\x6a\xd7\x80\xae\xd1\x68\x3a\xca\xbe\x6b\x3c\xbb\x1b\x68\xca\xb4\xde\xa0\xb3\x7f\x80\x44\xd2\xa3\xe9\x80\x56\x06\xb9\xe4\xeb\xde\xe2\x9f\xc5\xcd\xc0\x21\x19\x21\x77\xdc\x38\xf9\x6c\xdb\x00\x64\x46\x40\xfa\x29\xd4\x9c\x87\x3e\x80\xd6\xbe\x4e\xed\x12\x54\xa9\x38\xe3\xff\x6f\x79\x30\xd7\xeb"),  // macro-calculated hash
758 },
759 {
760   std::string_view("\x4a\x94\x21\xd0\xe7\xa0\xd4\x23\x23\x38\xc1\x04\xce\xbb\xc9\xe6\xcc\x08\x90\x33\x7b\x0a\x28\x31\xf9\xe3\xe6\xc9\x78\x47\x10\x2c\xda\xb3\xf8\xcd\x7a\x20\xb7\xd1\xd6\x4c\xba\x18\x31\x44\x57\x08\x97\x89\xfd\x43\xce\xf2\x06\x67\xa1\x6d\x15\x47\xa1\xe1\x52\xf6\x4a\x9e\x79\x31\xae\x12\xae\xdd\x4b\x3c\x20\xba\xce\x50\x1e\x13", 80u),
761   80u,  // fixed hash length
762   UINT32_C(4169625832),  // Python-calculated hash
763   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x4a\x94\x21\xd0\xe7\xa0\xd4\x23\x23\x38\xc1\x04\xce\xbb\xc9\xe6\xcc\x08\x90\x33\x7b\x0a\x28\x31\xf9\xe3\xe6\xc9\x78\x47\x10\x2c\xda\xb3\xf8\xcd\x7a\x20\xb7\xd1\xd6\x4c\xba\x18\x31\x44\x57\x08\x97\x89\xfd\x43\xce\xf2\x06\x67\xa1\x6d\x15\x47\xa1\xe1\x52\xf6\x4a\x9e\x79\x31\xae\x12\xae\xdd\x4b\x3c\x20\xba\xce\x50\x1e\x13"),  // macro-calculated hash
764 },
765 {
766   std::string_view("\x4a\x94\x21\xd0\xe7\xa0\xd4\x23\x23\x38\xc1\x04\xce\xbb\xc9\xe6\xcc\x08\x90\x33\x7b\x0a\x28\x31\xf9\xe3\xe6\xc9\x78\x47\x10\x2c\xda\xb3\xf8\xcd\x7a\x20\xb7\xd1\xd6\x4c\xba\x18\x31\x44\x57\x08\x97\x89\xfd\x43\xce\xf2\x06\x67\xa1\x6d\x15\x47\xa1\xe1\x52\xf6\x4a\x9e\x79\x31\xae\x12\xae\xdd\x4b\x3c\x20\xba\xce\x50\x1e\x13", 80u),
767   96u,  // fixed hash length
768   UINT32_C(4169625832),  // Python-calculated hash
769   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x4a\x94\x21\xd0\xe7\xa0\xd4\x23\x23\x38\xc1\x04\xce\xbb\xc9\xe6\xcc\x08\x90\x33\x7b\x0a\x28\x31\xf9\xe3\xe6\xc9\x78\x47\x10\x2c\xda\xb3\xf8\xcd\x7a\x20\xb7\xd1\xd6\x4c\xba\x18\x31\x44\x57\x08\x97\x89\xfd\x43\xce\xf2\x06\x67\xa1\x6d\x15\x47\xa1\xe1\x52\xf6\x4a\x9e\x79\x31\xae\x12\xae\xdd\x4b\x3c\x20\xba\xce\x50\x1e\x13"),  // macro-calculated hash
770 },
771 {
772   std::string_view("\x4a\x94\x21\xd0\xe7\xa0\xd4\x23\x23\x38\xc1\x04\xce\xbb\xc9\xe6\xcc\x08\x90\x33\x7b\x0a\x28\x31\xf9\xe3\xe6\xc9\x78\x47\x10\x2c\xda\xb3\xf8\xcd\x7a\x20\xb7\xd1\xd6\x4c\xba\x18\x31\x44\x57\x08\x97\x89\xfd\x43\xce\xf2\x06\x67\xa1\x6d\x15\x47\xa1\xe1\x52\xf6\x4a\x9e\x79\x31\xae\x12\xae\xdd\x4b\x3c\x20\xba\xce\x50\x1e\x13", 80u),
773   128u,  // fixed hash length
774   UINT32_C(4169625832),  // Python-calculated hash
775   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x4a\x94\x21\xd0\xe7\xa0\xd4\x23\x23\x38\xc1\x04\xce\xbb\xc9\xe6\xcc\x08\x90\x33\x7b\x0a\x28\x31\xf9\xe3\xe6\xc9\x78\x47\x10\x2c\xda\xb3\xf8\xcd\x7a\x20\xb7\xd1\xd6\x4c\xba\x18\x31\x44\x57\x08\x97\x89\xfd\x43\xce\xf2\x06\x67\xa1\x6d\x15\x47\xa1\xe1\x52\xf6\x4a\x9e\x79\x31\xae\x12\xae\xdd\x4b\x3c\x20\xba\xce\x50\x1e\x13"),  // macro-calculated hash
776 },
777 {
778   std::string_view("\x79\x1d\xba\x71\x02\x36\xfd\xaf\xbe\x49\x5e\x0b\x77\x7b\x57\xf7\x8b\xad\x6a\xe3\xc5\x57\x5a\x34\xa6\x12\xb2\xb2\x8a\x4e\x11\x13\xa5\x97\x2f\xf6\xbc\x62\xdb\x63\x0b\xa4\xc3\x3d\x66\x92\x3e\x8b\x53\x47\x12\x3a\x36\x9a\xe2\x31\xf9\x0d\x62\x71\x79\x3f\xa7\x04\x09\x8c\x40\xa7\x8a\x17\x3a\xb3\x6a\xea\x51\xdf\x91\x5a\x1d\x42\x4e", 81u),
779   80u,  // fixed hash length
780   UINT32_C(2417296923),  // Python-calculated hash
781   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x79\x1d\xba\x71\x02\x36\xfd\xaf\xbe\x49\x5e\x0b\x77\x7b\x57\xf7\x8b\xad\x6a\xe3\xc5\x57\x5a\x34\xa6\x12\xb2\xb2\x8a\x4e\x11\x13\xa5\x97\x2f\xf6\xbc\x62\xdb\x63\x0b\xa4\xc3\x3d\x66\x92\x3e\x8b\x53\x47\x12\x3a\x36\x9a\xe2\x31\xf9\x0d\x62\x71\x79\x3f\xa7\x04\x09\x8c\x40\xa7\x8a\x17\x3a\xb3\x6a\xea\x51\xdf\x91\x5a\x1d\x42\x4e"),  // macro-calculated hash
782 },
783 {
784   std::string_view("\x79\x1d\xba\x71\x02\x36\xfd\xaf\xbe\x49\x5e\x0b\x77\x7b\x57\xf7\x8b\xad\x6a\xe3\xc5\x57\x5a\x34\xa6\x12\xb2\xb2\x8a\x4e\x11\x13\xa5\x97\x2f\xf6\xbc\x62\xdb\x63\x0b\xa4\xc3\x3d\x66\x92\x3e\x8b\x53\x47\x12\x3a\x36\x9a\xe2\x31\xf9\x0d\x62\x71\x79\x3f\xa7\x04\x09\x8c\x40\xa7\x8a\x17\x3a\xb3\x6a\xea\x51\xdf\x91\x5a\x1d\x42\x4e", 81u),
785   96u,  // fixed hash length
786   UINT32_C(987115853),  // Python-calculated hash
787   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x79\x1d\xba\x71\x02\x36\xfd\xaf\xbe\x49\x5e\x0b\x77\x7b\x57\xf7\x8b\xad\x6a\xe3\xc5\x57\x5a\x34\xa6\x12\xb2\xb2\x8a\x4e\x11\x13\xa5\x97\x2f\xf6\xbc\x62\xdb\x63\x0b\xa4\xc3\x3d\x66\x92\x3e\x8b\x53\x47\x12\x3a\x36\x9a\xe2\x31\xf9\x0d\x62\x71\x79\x3f\xa7\x04\x09\x8c\x40\xa7\x8a\x17\x3a\xb3\x6a\xea\x51\xdf\x91\x5a\x1d\x42\x4e"),  // macro-calculated hash
788 },
789 {
790   std::string_view("\x79\x1d\xba\x71\x02\x36\xfd\xaf\xbe\x49\x5e\x0b\x77\x7b\x57\xf7\x8b\xad\x6a\xe3\xc5\x57\x5a\x34\xa6\x12\xb2\xb2\x8a\x4e\x11\x13\xa5\x97\x2f\xf6\xbc\x62\xdb\x63\x0b\xa4\xc3\x3d\x66\x92\x3e\x8b\x53\x47\x12\x3a\x36\x9a\xe2\x31\xf9\x0d\x62\x71\x79\x3f\xa7\x04\x09\x8c\x40\xa7\x8a\x17\x3a\xb3\x6a\xea\x51\xdf\x91\x5a\x1d\x42\x4e", 81u),
791   128u,  // fixed hash length
792   UINT32_C(987115853),  // Python-calculated hash
793   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x79\x1d\xba\x71\x02\x36\xfd\xaf\xbe\x49\x5e\x0b\x77\x7b\x57\xf7\x8b\xad\x6a\xe3\xc5\x57\x5a\x34\xa6\x12\xb2\xb2\x8a\x4e\x11\x13\xa5\x97\x2f\xf6\xbc\x62\xdb\x63\x0b\xa4\xc3\x3d\x66\x92\x3e\x8b\x53\x47\x12\x3a\x36\x9a\xe2\x31\xf9\x0d\x62\x71\x79\x3f\xa7\x04\x09\x8c\x40\xa7\x8a\x17\x3a\xb3\x6a\xea\x51\xdf\x91\x5a\x1d\x42\x4e"),  // macro-calculated hash
794 },
795 {
796   std::string_view("\x08\xd5\x5f\x9b\x1a\xd5\x15\x4b\x80\x3f\x01\x35\x6f\xda\xf3\x9a\x2d\x8d\xb6\xb2\x36\x8b\xc4\x69\x46\xfe\xe1\x3f\x83\xbc\x45\xc8\x53\x75\xf5\x89\x22\x8b\x14\xfa\xd0\xce\xc9\x85\xe8\x98\x6b\x47\xc4\xa5\xf9\x06\x4c\x39\xdc\x8c\xe2\xf1\xa4\x59\x1c\xc1\xd4\x16\xb1\xb4\x2a\x61\x2c\x48\x2c\x7f\xd2\x1f\x77\xd2\x92\xf9\xfa\x84\x8c\x74\xc7\xa1\x3d\x72\x46\x97\x63\xc1\x97\x9a\x4b\xb2\x17", 95u),
797   80u,  // fixed hash length
798   UINT32_C(1750895817),  // Python-calculated hash
799   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x08\xd5\x5f\x9b\x1a\xd5\x15\x4b\x80\x3f\x01\x35\x6f\xda\xf3\x9a\x2d\x8d\xb6\xb2\x36\x8b\xc4\x69\x46\xfe\xe1\x3f\x83\xbc\x45\xc8\x53\x75\xf5\x89\x22\x8b\x14\xfa\xd0\xce\xc9\x85\xe8\x98\x6b\x47\xc4\xa5\xf9\x06\x4c\x39\xdc\x8c\xe2\xf1\xa4\x59\x1c\xc1\xd4\x16\xb1\xb4\x2a\x61\x2c\x48\x2c\x7f\xd2\x1f\x77\xd2\x92\xf9\xfa\x84\x8c\x74\xc7\xa1\x3d\x72\x46\x97\x63\xc1\x97\x9a\x4b\xb2\x17"),  // macro-calculated hash
800 },
801 {
802   std::string_view("\x08\xd5\x5f\x9b\x1a\xd5\x15\x4b\x80\x3f\x01\x35\x6f\xda\xf3\x9a\x2d\x8d\xb6\xb2\x36\x8b\xc4\x69\x46\xfe\xe1\x3f\x83\xbc\x45\xc8\x53\x75\xf5\x89\x22\x8b\x14\xfa\xd0\xce\xc9\x85\xe8\x98\x6b\x47\xc4\xa5\xf9\x06\x4c\x39\xdc\x8c\xe2\xf1\xa4\x59\x1c\xc1\xd4\x16\xb1\xb4\x2a\x61\x2c\x48\x2c\x7f\xd2\x1f\x77\xd2\x92\xf9\xfa\x84\x8c\x74\xc7\xa1\x3d\x72\x46\x97\x63\xc1\x97\x9a\x4b\xb2\x17", 95u),
803   96u,  // fixed hash length
804   UINT32_C(720276802),  // Python-calculated hash
805   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x08\xd5\x5f\x9b\x1a\xd5\x15\x4b\x80\x3f\x01\x35\x6f\xda\xf3\x9a\x2d\x8d\xb6\xb2\x36\x8b\xc4\x69\x46\xfe\xe1\x3f\x83\xbc\x45\xc8\x53\x75\xf5\x89\x22\x8b\x14\xfa\xd0\xce\xc9\x85\xe8\x98\x6b\x47\xc4\xa5\xf9\x06\x4c\x39\xdc\x8c\xe2\xf1\xa4\x59\x1c\xc1\xd4\x16\xb1\xb4\x2a\x61\x2c\x48\x2c\x7f\xd2\x1f\x77\xd2\x92\xf9\xfa\x84\x8c\x74\xc7\xa1\x3d\x72\x46\x97\x63\xc1\x97\x9a\x4b\xb2\x17"),  // macro-calculated hash
806 },
807 {
808   std::string_view("\x08\xd5\x5f\x9b\x1a\xd5\x15\x4b\x80\x3f\x01\x35\x6f\xda\xf3\x9a\x2d\x8d\xb6\xb2\x36\x8b\xc4\x69\x46\xfe\xe1\x3f\x83\xbc\x45\xc8\x53\x75\xf5\x89\x22\x8b\x14\xfa\xd0\xce\xc9\x85\xe8\x98\x6b\x47\xc4\xa5\xf9\x06\x4c\x39\xdc\x8c\xe2\xf1\xa4\x59\x1c\xc1\xd4\x16\xb1\xb4\x2a\x61\x2c\x48\x2c\x7f\xd2\x1f\x77\xd2\x92\xf9\xfa\x84\x8c\x74\xc7\xa1\x3d\x72\x46\x97\x63\xc1\x97\x9a\x4b\xb2\x17", 95u),
809   128u,  // fixed hash length
810   UINT32_C(720276802),  // Python-calculated hash
811   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x08\xd5\x5f\x9b\x1a\xd5\x15\x4b\x80\x3f\x01\x35\x6f\xda\xf3\x9a\x2d\x8d\xb6\xb2\x36\x8b\xc4\x69\x46\xfe\xe1\x3f\x83\xbc\x45\xc8\x53\x75\xf5\x89\x22\x8b\x14\xfa\xd0\xce\xc9\x85\xe8\x98\x6b\x47\xc4\xa5\xf9\x06\x4c\x39\xdc\x8c\xe2\xf1\xa4\x59\x1c\xc1\xd4\x16\xb1\xb4\x2a\x61\x2c\x48\x2c\x7f\xd2\x1f\x77\xd2\x92\xf9\xfa\x84\x8c\x74\xc7\xa1\x3d\x72\x46\x97\x63\xc1\x97\x9a\x4b\xb2\x17"),  // macro-calculated hash
812 },
813 {
814   std::string_view("\x9b\xf2\x2d\xc5\x5f\xe7\xa6\xf3\xf6\xd8\x2c\x7f\x89\x72\x1d\xba\x88\x1a\x84\xb1\x7b\xad\x24\x96\x31\x80\x10\x2b\x1f\x32\x06\xc8\xef\x00\x5a\xe2\x9c\xfc\x3a\x6f\x5d\x70\xc0\x06\xe0\x8b\xcd\xd5\xec\xf4\x25\x91\xd9\xe4\x86\x4f\x3a\xdb\x36\x42\xde\x57\x8d\x5b\xeb\xd3\x67\x47\x99\x0b\x1b\x26\xd1\x06\x93\x5e\xa2\xf9\xc3\x28\x2e\x51\xed\x99\x12\x84\xd8\x79\x85\x12\x16\xde\x1d\xdc\x47\x4b", 96u),
815   80u,  // fixed hash length
816   UINT32_C(760136888),  // Python-calculated hash
817   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x9b\xf2\x2d\xc5\x5f\xe7\xa6\xf3\xf6\xd8\x2c\x7f\x89\x72\x1d\xba\x88\x1a\x84\xb1\x7b\xad\x24\x96\x31\x80\x10\x2b\x1f\x32\x06\xc8\xef\x00\x5a\xe2\x9c\xfc\x3a\x6f\x5d\x70\xc0\x06\xe0\x8b\xcd\xd5\xec\xf4\x25\x91\xd9\xe4\x86\x4f\x3a\xdb\x36\x42\xde\x57\x8d\x5b\xeb\xd3\x67\x47\x99\x0b\x1b\x26\xd1\x06\x93\x5e\xa2\xf9\xc3\x28\x2e\x51\xed\x99\x12\x84\xd8\x79\x85\x12\x16\xde\x1d\xdc\x47\x4b"),  // macro-calculated hash
818 },
819 {
820   std::string_view("\x9b\xf2\x2d\xc5\x5f\xe7\xa6\xf3\xf6\xd8\x2c\x7f\x89\x72\x1d\xba\x88\x1a\x84\xb1\x7b\xad\x24\x96\x31\x80\x10\x2b\x1f\x32\x06\xc8\xef\x00\x5a\xe2\x9c\xfc\x3a\x6f\x5d\x70\xc0\x06\xe0\x8b\xcd\xd5\xec\xf4\x25\x91\xd9\xe4\x86\x4f\x3a\xdb\x36\x42\xde\x57\x8d\x5b\xeb\xd3\x67\x47\x99\x0b\x1b\x26\xd1\x06\x93\x5e\xa2\xf9\xc3\x28\x2e\x51\xed\x99\x12\x84\xd8\x79\x85\x12\x16\xde\x1d\xdc\x47\x4b", 96u),
821   96u,  // fixed hash length
822   UINT32_C(1408671026),  // Python-calculated hash
823   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x9b\xf2\x2d\xc5\x5f\xe7\xa6\xf3\xf6\xd8\x2c\x7f\x89\x72\x1d\xba\x88\x1a\x84\xb1\x7b\xad\x24\x96\x31\x80\x10\x2b\x1f\x32\x06\xc8\xef\x00\x5a\xe2\x9c\xfc\x3a\x6f\x5d\x70\xc0\x06\xe0\x8b\xcd\xd5\xec\xf4\x25\x91\xd9\xe4\x86\x4f\x3a\xdb\x36\x42\xde\x57\x8d\x5b\xeb\xd3\x67\x47\x99\x0b\x1b\x26\xd1\x06\x93\x5e\xa2\xf9\xc3\x28\x2e\x51\xed\x99\x12\x84\xd8\x79\x85\x12\x16\xde\x1d\xdc\x47\x4b"),  // macro-calculated hash
824 },
825 {
826   std::string_view("\x9b\xf2\x2d\xc5\x5f\xe7\xa6\xf3\xf6\xd8\x2c\x7f\x89\x72\x1d\xba\x88\x1a\x84\xb1\x7b\xad\x24\x96\x31\x80\x10\x2b\x1f\x32\x06\xc8\xef\x00\x5a\xe2\x9c\xfc\x3a\x6f\x5d\x70\xc0\x06\xe0\x8b\xcd\xd5\xec\xf4\x25\x91\xd9\xe4\x86\x4f\x3a\xdb\x36\x42\xde\x57\x8d\x5b\xeb\xd3\x67\x47\x99\x0b\x1b\x26\xd1\x06\x93\x5e\xa2\xf9\xc3\x28\x2e\x51\xed\x99\x12\x84\xd8\x79\x85\x12\x16\xde\x1d\xdc\x47\x4b", 96u),
827   128u,  // fixed hash length
828   UINT32_C(1408671026),  // Python-calculated hash
829   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x9b\xf2\x2d\xc5\x5f\xe7\xa6\xf3\xf6\xd8\x2c\x7f\x89\x72\x1d\xba\x88\x1a\x84\xb1\x7b\xad\x24\x96\x31\x80\x10\x2b\x1f\x32\x06\xc8\xef\x00\x5a\xe2\x9c\xfc\x3a\x6f\x5d\x70\xc0\x06\xe0\x8b\xcd\xd5\xec\xf4\x25\x91\xd9\xe4\x86\x4f\x3a\xdb\x36\x42\xde\x57\x8d\x5b\xeb\xd3\x67\x47\x99\x0b\x1b\x26\xd1\x06\x93\x5e\xa2\xf9\xc3\x28\x2e\x51\xed\x99\x12\x84\xd8\x79\x85\x12\x16\xde\x1d\xdc\x47\x4b"),  // macro-calculated hash
830 },
831 {
832   std::string_view("\xa7\x97\xb4\x6c\x4b\x3e\xa9\x40\x2d\x1c\x46\xd6\x42\xf7\xee\xd3\xc4\xa7\xa8\xbd\xd3\xe0\x1a\x56\x31\x4e\x9b\xbd\x28\x16\x56\x1f\x38\x57\x56\x8b\x7d\xa4\xc9\xe4\xb2\xce\x3c\xf8\x0f\x13\x83\x35\x66\x86\xdf\x33\xfa\x6e\x09\xf7\x3c\x05\xd9\x05\xb3\xb6\x62\xc2\xd9\x75\x00\x7f\x00\xd9\x2c\x67\x78\x8c\x4c\x45\x3b\x9b\xc7\xaf\x6e\xdf\x23\x79\x09\xa4\xbb\x29\x29\x64\xd4\xc7\x2c\x50\x83\x24\xc7", 97u),
833   80u,  // fixed hash length
834   UINT32_C(4113347769),  // Python-calculated hash
835   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\xa7\x97\xb4\x6c\x4b\x3e\xa9\x40\x2d\x1c\x46\xd6\x42\xf7\xee\xd3\xc4\xa7\xa8\xbd\xd3\xe0\x1a\x56\x31\x4e\x9b\xbd\x28\x16\x56\x1f\x38\x57\x56\x8b\x7d\xa4\xc9\xe4\xb2\xce\x3c\xf8\x0f\x13\x83\x35\x66\x86\xdf\x33\xfa\x6e\x09\xf7\x3c\x05\xd9\x05\xb3\xb6\x62\xc2\xd9\x75\x00\x7f\x00\xd9\x2c\x67\x78\x8c\x4c\x45\x3b\x9b\xc7\xaf\x6e\xdf\x23\x79\x09\xa4\xbb\x29\x29\x64\xd4\xc7\x2c\x50\x83\x24\xc7"),  // macro-calculated hash
836 },
837 {
838   std::string_view("\xa7\x97\xb4\x6c\x4b\x3e\xa9\x40\x2d\x1c\x46\xd6\x42\xf7\xee\xd3\xc4\xa7\xa8\xbd\xd3\xe0\x1a\x56\x31\x4e\x9b\xbd\x28\x16\x56\x1f\x38\x57\x56\x8b\x7d\xa4\xc9\xe4\xb2\xce\x3c\xf8\x0f\x13\x83\x35\x66\x86\xdf\x33\xfa\x6e\x09\xf7\x3c\x05\xd9\x05\xb3\xb6\x62\xc2\xd9\x75\x00\x7f\x00\xd9\x2c\x67\x78\x8c\x4c\x45\x3b\x9b\xc7\xaf\x6e\xdf\x23\x79\x09\xa4\xbb\x29\x29\x64\xd4\xc7\x2c\x50\x83\x24\xc7", 97u),
839   96u,  // fixed hash length
840   UINT32_C(1367119804),  // Python-calculated hash
841   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\xa7\x97\xb4\x6c\x4b\x3e\xa9\x40\x2d\x1c\x46\xd6\x42\xf7\xee\xd3\xc4\xa7\xa8\xbd\xd3\xe0\x1a\x56\x31\x4e\x9b\xbd\x28\x16\x56\x1f\x38\x57\x56\x8b\x7d\xa4\xc9\xe4\xb2\xce\x3c\xf8\x0f\x13\x83\x35\x66\x86\xdf\x33\xfa\x6e\x09\xf7\x3c\x05\xd9\x05\xb3\xb6\x62\xc2\xd9\x75\x00\x7f\x00\xd9\x2c\x67\x78\x8c\x4c\x45\x3b\x9b\xc7\xaf\x6e\xdf\x23\x79\x09\xa4\xbb\x29\x29\x64\xd4\xc7\x2c\x50\x83\x24\xc7"),  // macro-calculated hash
842 },
843 {
844   std::string_view("\xa7\x97\xb4\x6c\x4b\x3e\xa9\x40\x2d\x1c\x46\xd6\x42\xf7\xee\xd3\xc4\xa7\xa8\xbd\xd3\xe0\x1a\x56\x31\x4e\x9b\xbd\x28\x16\x56\x1f\x38\x57\x56\x8b\x7d\xa4\xc9\xe4\xb2\xce\x3c\xf8\x0f\x13\x83\x35\x66\x86\xdf\x33\xfa\x6e\x09\xf7\x3c\x05\xd9\x05\xb3\xb6\x62\xc2\xd9\x75\x00\x7f\x00\xd9\x2c\x67\x78\x8c\x4c\x45\x3b\x9b\xc7\xaf\x6e\xdf\x23\x79\x09\xa4\xbb\x29\x29\x64\xd4\xc7\x2c\x50\x83\x24\xc7", 97u),
845   128u,  // fixed hash length
846   UINT32_C(687960245),  // Python-calculated hash
847   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\xa7\x97\xb4\x6c\x4b\x3e\xa9\x40\x2d\x1c\x46\xd6\x42\xf7\xee\xd3\xc4\xa7\xa8\xbd\xd3\xe0\x1a\x56\x31\x4e\x9b\xbd\x28\x16\x56\x1f\x38\x57\x56\x8b\x7d\xa4\xc9\xe4\xb2\xce\x3c\xf8\x0f\x13\x83\x35\x66\x86\xdf\x33\xfa\x6e\x09\xf7\x3c\x05\xd9\x05\xb3\xb6\x62\xc2\xd9\x75\x00\x7f\x00\xd9\x2c\x67\x78\x8c\x4c\x45\x3b\x9b\xc7\xaf\x6e\xdf\x23\x79\x09\xa4\xbb\x29\x29\x64\xd4\xc7\x2c\x50\x83\x24\xc7"),  // macro-calculated hash
848 },
849 {
850   std::string_view("\xf1\xdf\xb7\x7c\xcb\xf7\xc8\xe8\x94\xd3\x04\x33\x3e\x1a\x9c\x7d\x4a\xa4\xc3\xaf\x87\x97\xdb\xcc\xd6\x23\xe5\x0d\xf2\xa9\x9e\x63\xf6\xc4\xa8\x4d\x56\x86\x2b\x9c\x5f\xca\x4c\x17\x88\xa4\x5c\x73\x80\x6b\x2c\x03\x0e\xcd\x9f\xb8\x99\x44\x40\x2a\x33\x73\x94\xd1\x3f\x64\x56\x76\xf1\x9f\xfc\xb4\x1b\x1c\xa7\xc8\x28\x90\x03\x21\xe1\xcf\xb4\x57\x14\x2b\x5f\xbb\x84\x99\x4f\x16\xd4\x25\xe4\x54\x6f\xcd\x2c\x0f\x70\x98\xdb\xf3\xb0\xfe\xe0\x1a\x2e\x3d\x8b\x26\xdf\x28\x41\x16\x21\xc4\x86\x43\x9a\x29\x2b\xa3\x18\x74\x98", 127u),
851   80u,  // fixed hash length
852   UINT32_C(1288060573),  // Python-calculated hash
853   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\xf1\xdf\xb7\x7c\xcb\xf7\xc8\xe8\x94\xd3\x04\x33\x3e\x1a\x9c\x7d\x4a\xa4\xc3\xaf\x87\x97\xdb\xcc\xd6\x23\xe5\x0d\xf2\xa9\x9e\x63\xf6\xc4\xa8\x4d\x56\x86\x2b\x9c\x5f\xca\x4c\x17\x88\xa4\x5c\x73\x80\x6b\x2c\x03\x0e\xcd\x9f\xb8\x99\x44\x40\x2a\x33\x73\x94\xd1\x3f\x64\x56\x76\xf1\x9f\xfc\xb4\x1b\x1c\xa7\xc8\x28\x90\x03\x21\xe1\xcf\xb4\x57\x14\x2b\x5f\xbb\x84\x99\x4f\x16\xd4\x25\xe4\x54\x6f\xcd\x2c\x0f\x70\x98\xdb\xf3\xb0\xfe\xe0\x1a\x2e\x3d\x8b\x26\xdf\x28\x41\x16\x21\xc4\x86\x43\x9a\x29\x2b\xa3\x18\x74\x98"),  // macro-calculated hash
854 },
855 {
856   std::string_view("\xf1\xdf\xb7\x7c\xcb\xf7\xc8\xe8\x94\xd3\x04\x33\x3e\x1a\x9c\x7d\x4a\xa4\xc3\xaf\x87\x97\xdb\xcc\xd6\x23\xe5\x0d\xf2\xa9\x9e\x63\xf6\xc4\xa8\x4d\x56\x86\x2b\x9c\x5f\xca\x4c\x17\x88\xa4\x5c\x73\x80\x6b\x2c\x03\x0e\xcd\x9f\xb8\x99\x44\x40\x2a\x33\x73\x94\xd1\x3f\x64\x56\x76\xf1\x9f\xfc\xb4\x1b\x1c\xa7\xc8\x28\x90\x03\x21\xe1\xcf\xb4\x57\x14\x2b\x5f\xbb\x84\x99\x4f\x16\xd4\x25\xe4\x54\x6f\xcd\x2c\x0f\x70\x98\xdb\xf3\xb0\xfe\xe0\x1a\x2e\x3d\x8b\x26\xdf\x28\x41\x16\x21\xc4\x86\x43\x9a\x29\x2b\xa3\x18\x74\x98", 127u),
857   96u,  // fixed hash length
858   UINT32_C(1810369278),  // Python-calculated hash
859   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\xf1\xdf\xb7\x7c\xcb\xf7\xc8\xe8\x94\xd3\x04\x33\x3e\x1a\x9c\x7d\x4a\xa4\xc3\xaf\x87\x97\xdb\xcc\xd6\x23\xe5\x0d\xf2\xa9\x9e\x63\xf6\xc4\xa8\x4d\x56\x86\x2b\x9c\x5f\xca\x4c\x17\x88\xa4\x5c\x73\x80\x6b\x2c\x03\x0e\xcd\x9f\xb8\x99\x44\x40\x2a\x33\x73\x94\xd1\x3f\x64\x56\x76\xf1\x9f\xfc\xb4\x1b\x1c\xa7\xc8\x28\x90\x03\x21\xe1\xcf\xb4\x57\x14\x2b\x5f\xbb\x84\x99\x4f\x16\xd4\x25\xe4\x54\x6f\xcd\x2c\x0f\x70\x98\xdb\xf3\xb0\xfe\xe0\x1a\x2e\x3d\x8b\x26\xdf\x28\x41\x16\x21\xc4\x86\x43\x9a\x29\x2b\xa3\x18\x74\x98"),  // macro-calculated hash
860 },
861 {
862   std::string_view("\xf1\xdf\xb7\x7c\xcb\xf7\xc8\xe8\x94\xd3\x04\x33\x3e\x1a\x9c\x7d\x4a\xa4\xc3\xaf\x87\x97\xdb\xcc\xd6\x23\xe5\x0d\xf2\xa9\x9e\x63\xf6\xc4\xa8\x4d\x56\x86\x2b\x9c\x5f\xca\x4c\x17\x88\xa4\x5c\x73\x80\x6b\x2c\x03\x0e\xcd\x9f\xb8\x99\x44\x40\x2a\x33\x73\x94\xd1\x3f\x64\x56\x76\xf1\x9f\xfc\xb4\x1b\x1c\xa7\xc8\x28\x90\x03\x21\xe1\xcf\xb4\x57\x14\x2b\x5f\xbb\x84\x99\x4f\x16\xd4\x25\xe4\x54\x6f\xcd\x2c\x0f\x70\x98\xdb\xf3\xb0\xfe\xe0\x1a\x2e\x3d\x8b\x26\xdf\x28\x41\x16\x21\xc4\x86\x43\x9a\x29\x2b\xa3\x18\x74\x98", 127u),
863   128u,  // fixed hash length
864   UINT32_C(2429195322),  // Python-calculated hash
865   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\xf1\xdf\xb7\x7c\xcb\xf7\xc8\xe8\x94\xd3\x04\x33\x3e\x1a\x9c\x7d\x4a\xa4\xc3\xaf\x87\x97\xdb\xcc\xd6\x23\xe5\x0d\xf2\xa9\x9e\x63\xf6\xc4\xa8\x4d\x56\x86\x2b\x9c\x5f\xca\x4c\x17\x88\xa4\x5c\x73\x80\x6b\x2c\x03\x0e\xcd\x9f\xb8\x99\x44\x40\x2a\x33\x73\x94\xd1\x3f\x64\x56\x76\xf1\x9f\xfc\xb4\x1b\x1c\xa7\xc8\x28\x90\x03\x21\xe1\xcf\xb4\x57\x14\x2b\x5f\xbb\x84\x99\x4f\x16\xd4\x25\xe4\x54\x6f\xcd\x2c\x0f\x70\x98\xdb\xf3\xb0\xfe\xe0\x1a\x2e\x3d\x8b\x26\xdf\x28\x41\x16\x21\xc4\x86\x43\x9a\x29\x2b\xa3\x18\x74\x98"),  // macro-calculated hash
866 },
867 {
868   std::string_view("\x43\xd7\x5e\xff\x9b\x29\x34\x97\x50\x92\xb3\xcd\x38\xee\x3c\xdf\xc7\x7a\x76\x4e\x72\xaf\xb2\xdd\x37\x1c\x8e\x1c\xec\x08\x15\x72\x4f\xac\x2d\x67\x19\xc1\xc5\x6f\x52\x7d\x79\xe9\xa8\x3d\xcb\x3b\xdb\x4d\x29\x81\x89\xa8\x1f\xcb\xbf\xc6\x2f\x5a\xab\x9e\x05\xc6\xec\x42\x24\xf0\x9e\x2c\xb4\x7e\xc1\x85\x10\x3c\xc0\xd5\x99\x9a\x62\x52\x04\xde\xe1\xd1\x44\x5e\x4b\x4b\xc1\x10\xf1\xbe\x06\xc8\xf7\x07\xd2\x92\xc8\x92\xb3\xb6\xa5\x79\x6e\x93\x6d\xfa\xd1\x68\x6e\xec\x25\x10\xcf\x4f\x8e\xd4\xfb\x3c\x56\x04\xbc\x6f\xbc\x65", 128u),
869   80u,  // fixed hash length
870   UINT32_C(1125261758),  // Python-calculated hash
871   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x43\xd7\x5e\xff\x9b\x29\x34\x97\x50\x92\xb3\xcd\x38\xee\x3c\xdf\xc7\x7a\x76\x4e\x72\xaf\xb2\xdd\x37\x1c\x8e\x1c\xec\x08\x15\x72\x4f\xac\x2d\x67\x19\xc1\xc5\x6f\x52\x7d\x79\xe9\xa8\x3d\xcb\x3b\xdb\x4d\x29\x81\x89\xa8\x1f\xcb\xbf\xc6\x2f\x5a\xab\x9e\x05\xc6\xec\x42\x24\xf0\x9e\x2c\xb4\x7e\xc1\x85\x10\x3c\xc0\xd5\x99\x9a\x62\x52\x04\xde\xe1\xd1\x44\x5e\x4b\x4b\xc1\x10\xf1\xbe\x06\xc8\xf7\x07\xd2\x92\xc8\x92\xb3\xb6\xa5\x79\x6e\x93\x6d\xfa\xd1\x68\x6e\xec\x25\x10\xcf\x4f\x8e\xd4\xfb\x3c\x56\x04\xbc\x6f\xbc\x65"),  // macro-calculated hash
872 },
873 {
874   std::string_view("\x43\xd7\x5e\xff\x9b\x29\x34\x97\x50\x92\xb3\xcd\x38\xee\x3c\xdf\xc7\x7a\x76\x4e\x72\xaf\xb2\xdd\x37\x1c\x8e\x1c\xec\x08\x15\x72\x4f\xac\x2d\x67\x19\xc1\xc5\x6f\x52\x7d\x79\xe9\xa8\x3d\xcb\x3b\xdb\x4d\x29\x81\x89\xa8\x1f\xcb\xbf\xc6\x2f\x5a\xab\x9e\x05\xc6\xec\x42\x24\xf0\x9e\x2c\xb4\x7e\xc1\x85\x10\x3c\xc0\xd5\x99\x9a\x62\x52\x04\xde\xe1\xd1\x44\x5e\x4b\x4b\xc1\x10\xf1\xbe\x06\xc8\xf7\x07\xd2\x92\xc8\x92\xb3\xb6\xa5\x79\x6e\x93\x6d\xfa\xd1\x68\x6e\xec\x25\x10\xcf\x4f\x8e\xd4\xfb\x3c\x56\x04\xbc\x6f\xbc\x65", 128u),
875   96u,  // fixed hash length
876   UINT32_C(1477867120),  // Python-calculated hash
877   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x43\xd7\x5e\xff\x9b\x29\x34\x97\x50\x92\xb3\xcd\x38\xee\x3c\xdf\xc7\x7a\x76\x4e\x72\xaf\xb2\xdd\x37\x1c\x8e\x1c\xec\x08\x15\x72\x4f\xac\x2d\x67\x19\xc1\xc5\x6f\x52\x7d\x79\xe9\xa8\x3d\xcb\x3b\xdb\x4d\x29\x81\x89\xa8\x1f\xcb\xbf\xc6\x2f\x5a\xab\x9e\x05\xc6\xec\x42\x24\xf0\x9e\x2c\xb4\x7e\xc1\x85\x10\x3c\xc0\xd5\x99\x9a\x62\x52\x04\xde\xe1\xd1\x44\x5e\x4b\x4b\xc1\x10\xf1\xbe\x06\xc8\xf7\x07\xd2\x92\xc8\x92\xb3\xb6\xa5\x79\x6e\x93\x6d\xfa\xd1\x68\x6e\xec\x25\x10\xcf\x4f\x8e\xd4\xfb\x3c\x56\x04\xbc\x6f\xbc\x65"),  // macro-calculated hash
878 },
879 {
880   std::string_view("\x43\xd7\x5e\xff\x9b\x29\x34\x97\x50\x92\xb3\xcd\x38\xee\x3c\xdf\xc7\x7a\x76\x4e\x72\xaf\xb2\xdd\x37\x1c\x8e\x1c\xec\x08\x15\x72\x4f\xac\x2d\x67\x19\xc1\xc5\x6f\x52\x7d\x79\xe9\xa8\x3d\xcb\x3b\xdb\x4d\x29\x81\x89\xa8\x1f\xcb\xbf\xc6\x2f\x5a\xab\x9e\x05\xc6\xec\x42\x24\xf0\x9e\x2c\xb4\x7e\xc1\x85\x10\x3c\xc0\xd5\x99\x9a\x62\x52\x04\xde\xe1\xd1\x44\x5e\x4b\x4b\xc1\x10\xf1\xbe\x06\xc8\xf7\x07\xd2\x92\xc8\x92\xb3\xb6\xa5\x79\x6e\x93\x6d\xfa\xd1\x68\x6e\xec\x25\x10\xcf\x4f\x8e\xd4\xfb\x3c\x56\x04\xbc\x6f\xbc\x65", 128u),
881   128u,  // fixed hash length
882   UINT32_C(3694995364),  // Python-calculated hash
883   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x43\xd7\x5e\xff\x9b\x29\x34\x97\x50\x92\xb3\xcd\x38\xee\x3c\xdf\xc7\x7a\x76\x4e\x72\xaf\xb2\xdd\x37\x1c\x8e\x1c\xec\x08\x15\x72\x4f\xac\x2d\x67\x19\xc1\xc5\x6f\x52\x7d\x79\xe9\xa8\x3d\xcb\x3b\xdb\x4d\x29\x81\x89\xa8\x1f\xcb\xbf\xc6\x2f\x5a\xab\x9e\x05\xc6\xec\x42\x24\xf0\x9e\x2c\xb4\x7e\xc1\x85\x10\x3c\xc0\xd5\x99\x9a\x62\x52\x04\xde\xe1\xd1\x44\x5e\x4b\x4b\xc1\x10\xf1\xbe\x06\xc8\xf7\x07\xd2\x92\xc8\x92\xb3\xb6\xa5\x79\x6e\x93\x6d\xfa\xd1\x68\x6e\xec\x25\x10\xcf\x4f\x8e\xd4\xfb\x3c\x56\x04\xbc\x6f\xbc\x65"),  // macro-calculated hash
884 },
885 {
886   std::string_view("\x23\x66\x8c\x45\x63\x79\xfb\x31\x74\x7c\xa5\xcc\x58\x09\xc6\x46\x13\x9e\xf1\x96\x66\xb5\x03\x3a\xaa\x03\x78\x6e\x93\xdb\x9e\x70\x74\x05\xaa\x30\xca\x00\xf3\xc3\xef\xd0\x2e\xb5\xc3\x6c\xbd\x7f\xbc\x41\xd2\x1a\x83\xec\x72\xb0\x8c\x35\x9e\xcf\x6f\x16\x90\x6b\xdb\xa5\x88\xc6\xdc\x05\x8c\xdf\x51\x99\xa7\xca\xa9\xe3\x59\x68\x20\xb2\xdd\x63\xab\xd9\x27\xec\xcb\x1a\x2c\xac\xed\x5d\x8c\x97\x04\xbe\x22\x76\xbb\x14\x3b\x5f\xff\xc3\x78\xe2\xed\x79\xea\xdf\xc4\x5a\x28\xf2\x7a\xcb\x20\x68\x7b\xdc\xbf\xf2\x77\x61\x56\x5a\xe1", 129u),
887   80u,  // fixed hash length
888   UINT32_C(6281856),  // Python-calculated hash
889   PW_TOKENIZER_65599_FIXED_LENGTH_80_HASH("\x23\x66\x8c\x45\x63\x79\xfb\x31\x74\x7c\xa5\xcc\x58\x09\xc6\x46\x13\x9e\xf1\x96\x66\xb5\x03\x3a\xaa\x03\x78\x6e\x93\xdb\x9e\x70\x74\x05\xaa\x30\xca\x00\xf3\xc3\xef\xd0\x2e\xb5\xc3\x6c\xbd\x7f\xbc\x41\xd2\x1a\x83\xec\x72\xb0\x8c\x35\x9e\xcf\x6f\x16\x90\x6b\xdb\xa5\x88\xc6\xdc\x05\x8c\xdf\x51\x99\xa7\xca\xa9\xe3\x59\x68\x20\xb2\xdd\x63\xab\xd9\x27\xec\xcb\x1a\x2c\xac\xed\x5d\x8c\x97\x04\xbe\x22\x76\xbb\x14\x3b\x5f\xff\xc3\x78\xe2\xed\x79\xea\xdf\xc4\x5a\x28\xf2\x7a\xcb\x20\x68\x7b\xdc\xbf\xf2\x77\x61\x56\x5a\xe1"),  // macro-calculated hash
890 },
891 {
892   std::string_view("\x23\x66\x8c\x45\x63\x79\xfb\x31\x74\x7c\xa5\xcc\x58\x09\xc6\x46\x13\x9e\xf1\x96\x66\xb5\x03\x3a\xaa\x03\x78\x6e\x93\xdb\x9e\x70\x74\x05\xaa\x30\xca\x00\xf3\xc3\xef\xd0\x2e\xb5\xc3\x6c\xbd\x7f\xbc\x41\xd2\x1a\x83\xec\x72\xb0\x8c\x35\x9e\xcf\x6f\x16\x90\x6b\xdb\xa5\x88\xc6\xdc\x05\x8c\xdf\x51\x99\xa7\xca\xa9\xe3\x59\x68\x20\xb2\xdd\x63\xab\xd9\x27\xec\xcb\x1a\x2c\xac\xed\x5d\x8c\x97\x04\xbe\x22\x76\xbb\x14\x3b\x5f\xff\xc3\x78\xe2\xed\x79\xea\xdf\xc4\x5a\x28\xf2\x7a\xcb\x20\x68\x7b\xdc\xbf\xf2\x77\x61\x56\x5a\xe1", 129u),
893   96u,  // fixed hash length
894   UINT32_C(598421397),  // Python-calculated hash
895   PW_TOKENIZER_65599_FIXED_LENGTH_96_HASH("\x23\x66\x8c\x45\x63\x79\xfb\x31\x74\x7c\xa5\xcc\x58\x09\xc6\x46\x13\x9e\xf1\x96\x66\xb5\x03\x3a\xaa\x03\x78\x6e\x93\xdb\x9e\x70\x74\x05\xaa\x30\xca\x00\xf3\xc3\xef\xd0\x2e\xb5\xc3\x6c\xbd\x7f\xbc\x41\xd2\x1a\x83\xec\x72\xb0\x8c\x35\x9e\xcf\x6f\x16\x90\x6b\xdb\xa5\x88\xc6\xdc\x05\x8c\xdf\x51\x99\xa7\xca\xa9\xe3\x59\x68\x20\xb2\xdd\x63\xab\xd9\x27\xec\xcb\x1a\x2c\xac\xed\x5d\x8c\x97\x04\xbe\x22\x76\xbb\x14\x3b\x5f\xff\xc3\x78\xe2\xed\x79\xea\xdf\xc4\x5a\x28\xf2\x7a\xcb\x20\x68\x7b\xdc\xbf\xf2\x77\x61\x56\x5a\xe1"),  // macro-calculated hash
896 },
897 {
898   std::string_view("\x23\x66\x8c\x45\x63\x79\xfb\x31\x74\x7c\xa5\xcc\x58\x09\xc6\x46\x13\x9e\xf1\x96\x66\xb5\x03\x3a\xaa\x03\x78\x6e\x93\xdb\x9e\x70\x74\x05\xaa\x30\xca\x00\xf3\xc3\xef\xd0\x2e\xb5\xc3\x6c\xbd\x7f\xbc\x41\xd2\x1a\x83\xec\x72\xb0\x8c\x35\x9e\xcf\x6f\x16\x90\x6b\xdb\xa5\x88\xc6\xdc\x05\x8c\xdf\x51\x99\xa7\xca\xa9\xe3\x59\x68\x20\xb2\xdd\x63\xab\xd9\x27\xec\xcb\x1a\x2c\xac\xed\x5d\x8c\x97\x04\xbe\x22\x76\xbb\x14\x3b\x5f\xff\xc3\x78\xe2\xed\x79\xea\xdf\xc4\x5a\x28\xf2\x7a\xcb\x20\x68\x7b\xdc\xbf\xf2\x77\x61\x56\x5a\xe1", 129u),
899   128u,  // fixed hash length
900   UINT32_C(1313299978),  // Python-calculated hash
901   PW_TOKENIZER_65599_FIXED_LENGTH_128_HASH("\x23\x66\x8c\x45\x63\x79\xfb\x31\x74\x7c\xa5\xcc\x58\x09\xc6\x46\x13\x9e\xf1\x96\x66\xb5\x03\x3a\xaa\x03\x78\x6e\x93\xdb\x9e\x70\x74\x05\xaa\x30\xca\x00\xf3\xc3\xef\xd0\x2e\xb5\xc3\x6c\xbd\x7f\xbc\x41\xd2\x1a\x83\xec\x72\xb0\x8c\x35\x9e\xcf\x6f\x16\x90\x6b\xdb\xa5\x88\xc6\xdc\x05\x8c\xdf\x51\x99\xa7\xca\xa9\xe3\x59\x68\x20\xb2\xdd\x63\xab\xd9\x27\xec\xcb\x1a\x2c\xac\xed\x5d\x8c\x97\x04\xbe\x22\x76\xbb\x14\x3b\x5f\xff\xc3\x78\xe2\xed\x79\xea\xdf\xc4\x5a\x28\xf2\x7a\xcb\x20\x68\x7b\xdc\xbf\xf2\x77\x61\x56\x5a\xe1"),  // macro-calculated hash
902 },
903
904 };  // kHashTests
905
906 // clang-format on
907
908 }  // namespace pw::tokenizer