1/* C++ code produced by gperf version 3.1 */
2/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L C++ --output-file cfns.h cfns.gperf  */
3
4#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
5      && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
6      && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
7      && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
8      && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
9      && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
10      && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
11      && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
12      && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
13      && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
14      && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
15      && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
16      && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
17      && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
18      && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
19      && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
20      && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
21      && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
22      && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
23      && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
24      && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
25      && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
26      && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
27/* The character set is not based on ISO-646.  */
28#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gperf@gnu.org>."
29#endif
30
31#line 4 "cfns.gperf"
32
33/* Copyright (C) 2000-2022 Free Software Foundation, Inc.
34
35This file is part of GCC.
36
37GCC is free software; you can redistribute it and/or modify it under
38the terms of the GNU General Public License as published by the Free
39Software Foundation; either version 3, or (at your option) any later
40version.
41
42GCC is distributed in the hope that it will be useful, but WITHOUT ANY
43WARRANTY; without even the implied warranty of MERCHANTABILITY or
44FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
45for more details.
46
47You should have received a copy of the GNU General Public License
48along with GCC; see the file COPYING3.  If not see
49<http://www.gnu.org/licenses/>.  */
50#line 23 "cfns.gperf"
51struct libc_name_struct { const char *name; int c_ver; };
52/* maximum key range = 1478, duplicates = 0 */
53
54class libc_name
55{
56private:
57  static inline unsigned int hash (const char *str, size_t len);
58public:
59  static const struct libc_name_struct *libc_name_p (const char *str, size_t len);
60};
61
62inline unsigned int
63libc_name::hash (const char *str, size_t len)
64{
65  static const unsigned short asso_values[] =
66    {
67      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
68      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
69      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
70      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
71      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,    0,    1,
72        82, 1488,    4, 1488,    1, 1488, 1488, 1488, 1488, 1488,
73      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
74         0, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
75      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
76      1488, 1488, 1488, 1488, 1488,    0,    0,   29,    7,    6,
77       228,  136,    0,  284,  232,   17,  447,   31,    2,   51,
78         0,   78,  358,  433,   31,    0,   17,   52,  356,  230,
79       377,    5,   89, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
80      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
81      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
82      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
83      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
84      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
85      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
86      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
87      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
88      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
89      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
90      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
91      1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
92      1488, 1488, 1488, 1488, 1488, 1488, 1488
93    };
94  unsigned int hval = len;
95
96  switch (hval)
97    {
98      default:
99        hval += asso_values[static_cast<unsigned char>(str[5]+1)];
100      /*FALLTHROUGH*/
101      case 5:
102        hval += asso_values[static_cast<unsigned char>(str[4])];
103      /*FALLTHROUGH*/
104      case 4:
105        hval += asso_values[static_cast<unsigned char>(str[3])];
106      /*FALLTHROUGH*/
107      case 3:
108        hval += asso_values[static_cast<unsigned char>(str[2])];
109      /*FALLTHROUGH*/
110      case 2:
111        hval += asso_values[static_cast<unsigned char>(str[1]+1)];
112      /*FALLTHROUGH*/
113      case 1:
114        hval += asso_values[static_cast<unsigned char>(str[0])];
115        break;
116    }
117  return hval + asso_values[static_cast<unsigned char>(str[len - 1])];
118}
119
120const struct libc_name_struct *
121libc_name::libc_name_p (const char *str, size_t len)
122{
123  enum
124    {
125      TOTAL_KEYWORDS = 414,
126      MIN_WORD_LENGTH = 3,
127      MAX_WORD_LENGTH = 15,
128      MIN_HASH_VALUE = 10,
129      MAX_HASH_VALUE = 1487
130    };
131
132  static const struct libc_name_struct wordlist[] =
133    {
134#line 456 "cfns.gperf"
135      {"nan", 99},
136#line 457 "cfns.gperf"
137      {"nanf", 99},
138#line 458 "cfns.gperf"
139      {"nanl", 99},
140#line 59 "cfns.gperf"
141      {"fabs", 89},
142#line 396 "cfns.gperf"
143      {"fabsf", 99},
144#line 119 "cfns.gperf"
145      {"labs", 89},
146#line 471 "cfns.gperf"
147      {"fmin", 99},
148#line 472 "cfns.gperf"
149      {"fminf", 99},
150#line 397 "cfns.gperf"
151      {"fabsl", 99},
152#line 286 "cfns.gperf"
153      {"cabs", 99},
154#line 287 "cfns.gperf"
155      {"cabsf", 99},
156#line 473 "cfns.gperf"
157      {"fminl", 99},
158#line 192 "cfns.gperf"
159      {"tan", 89},
160#line 340 "cfns.gperf"
161      {"tanf", 99},
162#line 288 "cfns.gperf"
163      {"cabsl", 99},
164#line 417 "cfns.gperf"
165      {"ceilf", 99},
166#line 49 "cfns.gperf"
167      {"ceil", 89},
168#line 341 "cfns.gperf"
169      {"tanl", 99},
170#line 475 "cfns.gperf"
171      {"fmaf", 99},
172#line 418 "cfns.gperf"
173      {"ceill", 99},
174#line 247 "cfns.gperf"
175      {"casin", 99},
176#line 476 "cfns.gperf"
177      {"fmal", 99},
178#line 36 "cfns.gperf"
179      {"abs", 89},
180#line 256 "cfns.gperf"
181      {"csin", 99},
182#line 257 "cfns.gperf"
183      {"csinf", 99},
184#line 258 "cfns.gperf"
185      {"csinl", 99},
186#line 266 "cfns.gperf"
187      {"casinhf", 99},
188#line 267 "cfns.gperf"
189      {"casinhl", 99},
190#line 427 "cfns.gperf"
191      {"lrint", 99},
192#line 474 "cfns.gperf"
193      {"fma", 99},
194#line 250 "cfns.gperf"
195      {"catan", 99},
196#line 394 "cfns.gperf"
197      {"cbrtf", 99},
198#line 98 "cfns.gperf"
199      {"iscntrl", 89},
200#line 39 "cfns.gperf"
201      {"asin", 89},
202#line 330 "cfns.gperf"
203      {"asinf", 99},
204#line 395 "cfns.gperf"
205      {"cbrtl", 99},
206#line 331 "cfns.gperf"
207      {"asinl", 99},
208#line 393 "cfns.gperf"
209      {"cbrt", 99},
210#line 61 "cfns.gperf"
211      {"feof", 89},
212#line 269 "cfns.gperf"
213      {"catanhf", 99},
214#line 403 "cfns.gperf"
215      {"sqrtf", 99},
216#line 270 "cfns.gperf"
217      {"catanhl", 99},
218#line 442 "cfns.gperf"
219      {"trunc", 99},
220#line 404 "cfns.gperf"
221      {"sqrtl", 99},
222#line 249 "cfns.gperf"
223      {"casinl", 99},
224#line 259 "cfns.gperf"
225      {"ctan", 99},
226#line 260 "cfns.gperf"
227      {"ctanf", 99},
228#line 488 "cfns.gperf"
229      {"llabs", 99},
230#line 429 "cfns.gperf"
231      {"lrintl", 99},
232#line 261 "cfns.gperf"
233      {"ctanl", 99},
234#line 165 "cfns.gperf"
235      {"sqrt", 89},
236#line 244 "cfns.gperf"
237      {"cacos", 99},
238#line 40 "cfns.gperf"
239      {"atan", 89},
240#line 332 "cfns.gperf"
241      {"atanf", 99},
242#line 252 "cfns.gperf"
243      {"catanl", 99},
244#line 333 "cfns.gperf"
245      {"atanl", 99},
246#line 177 "cfns.gperf"
247      {"strncat", 89},
248#line 263 "cfns.gperf"
249      {"cacoshf", 99},
250#line 264 "cfns.gperf"
251      {"cacoshl", 99},
252#line 313 "cfns.gperf"
253      {"feraiseexcept", 99},
254#line 444 "cfns.gperf"
255      {"truncl", 99},
256#line 183 "cfns.gperf"
257      {"strstr", 89},
258#line 405 "cfns.gperf"
259      {"erf", 99},
260#line 406 "cfns.gperf"
261      {"erff", 99},
262#line 407 "cfns.gperf"
263      {"erfl", 99},
264#line 409 "cfns.gperf"
265      {"erfcf", 99},
266#line 410 "cfns.gperf"
267      {"erfcl", 99},
268#line 408 "cfns.gperf"
269      {"erfc", 99},
270#line 246 "cfns.gperf"
271      {"cacosl", 99},
272#line 431 "cfns.gperf"
273      {"llrintf", 99},
274#line 432 "cfns.gperf"
275      {"llrintl", 99},
276#line 43 "cfns.gperf"
277      {"atof", 89},
278#line 422 "cfns.gperf"
279      {"nearbyintf", 99},
280#line 45 "cfns.gperf"
281      {"atol", 89},
282#line 423 "cfns.gperf"
283      {"nearbyintl", 99},
284#line 482 "cfns.gperf"
285      {"atoll", 99},
286#line 181 "cfns.gperf"
287      {"strrchr", 89},
288#line 430 "cfns.gperf"
289      {"llrint", 99},
290#line 62 "cfns.gperf"
291      {"ferror", 89},
292#line 307 "cfns.gperf"
293      {"creal", 99},
294#line 311 "cfns.gperf"
295      {"feclearexcept", 99},
296#line 421 "cfns.gperf"
297      {"nearbyint", 99},
298#line 310 "cfns.gperf"
299      {"isblank", 99},
300#line 168 "cfns.gperf"
301      {"strcat", 89},
302#line 57 "cfns.gperf"
303      {"exit", 89},
304#line 44 "cfns.gperf"
305      {"atoi", 89},
306#line 128 "cfns.gperf"
307      {"mblen", 89},
308#line 51 "cfns.gperf"
309      {"clock", 89},
310#line 466 "cfns.gperf"
311      {"fdimf", 99},
312#line 467 "cfns.gperf"
313      {"fdiml", 99},
314#line 448 "cfns.gperf"
315      {"remainderf", 99},
316#line 185 "cfns.gperf"
317      {"strtok", 89},
318#line 449 "cfns.gperf"
319      {"remainderl", 99},
320#line 171 "cfns.gperf"
321      {"strcoll", 89},
322#line 38 "cfns.gperf"
323      {"asctime", 89},
324#line 309 "cfns.gperf"
325      {"creall", 99},
326#line 315 "cfns.gperf"
327      {"fetestexcept", 99},
328#line 186 "cfns.gperf"
329      {"strtol", 89},
330#line 485 "cfns.gperf"
331      {"strtoll", 99},
332#line 447 "cfns.gperf"
333      {"remainder", 99},
334#line 335 "cfns.gperf"
335      {"atan2l", 99},
336#line 465 "cfns.gperf"
337      {"fdim", 99},
338#line 355 "cfns.gperf"
339      {"tanhf", 99},
340#line 356 "cfns.gperf"
341      {"tanhl", 99},
342#line 69 "cfns.gperf"
343      {"floor", 89},
344#line 437 "cfns.gperf"
345      {"lroundf", 99},
346#line 438 "cfns.gperf"
347      {"lroundl", 99},
348#line 41 "cfns.gperf"
349      {"atan2", 89},
350#line 140 "cfns.gperf"
351      {"mktime", 89},
352#line 265 "cfns.gperf"
353      {"casinh", 99},
354#line 50 "cfns.gperf"
355      {"clearerr", 89},
356#line 420 "cfns.gperf"
357      {"floorl", 99},
358#line 440 "cfns.gperf"
359      {"llroundf", 99},
360#line 441 "cfns.gperf"
361      {"llroundl", 99},
362#line 176 "cfns.gperf"
363      {"strlen", 89},
364#line 129 "cfns.gperf"
365      {"mbrlen", 89},
366#line 445 "cfns.gperf"
367      {"fmodf", 99},
368#line 139 "cfns.gperf"
369      {"memset", 89},
370#line 268 "cfns.gperf"
371      {"catanh", 99},
372#line 446 "cfns.gperf"
373      {"fmodl", 99},
374#line 253 "cfns.gperf"
375      {"ccos", 99},
376#line 254 "cfns.gperf"
377      {"ccosf", 99},
378#line 497 "cfns.gperf"
379      {"iswblank", 99},
380#line 248 "cfns.gperf"
381      {"casinf", 99},
382#line 255 "cfns.gperf"
383      {"ccosl", 99},
384#line 390 "cfns.gperf"
385      {"scalbln", 99},
386#line 391 "cfns.gperf"
387      {"scalblnf", 99},
388#line 428 "cfns.gperf"
389      {"lrintf", 99},
390#line 392 "cfns.gperf"
391      {"scalblnl", 99},
392#line 276 "cfns.gperf"
393      {"csinhl", 99},
394#line 108 "cfns.gperf"
395      {"iswcntrl", 89},
396#line 296 "cfns.gperf"
397      {"cargf", 99},
398#line 48 "cfns.gperf"
399      {"calloc", 89},
400#line 297 "cfns.gperf"
401      {"cargl", 99},
402#line 37 "cfns.gperf"
403      {"acos", 89},
404#line 328 "cfns.gperf"
405      {"acosf", 99},
406#line 167 "cfns.gperf"
407      {"sscanf", 89},
408#line 329 "cfns.gperf"
409      {"acosl", 99},
410#line 251 "cfns.gperf"
411      {"catanf", 99},
412#line 387 "cfns.gperf"
413      {"scalbn", 99},
414#line 388 "cfns.gperf"
415      {"scalbnf", 99},
416#line 262 "cfns.gperf"
417      {"cacosh", 99},
418#line 389 "cfns.gperf"
419      {"scalbnl", 99},
420#line 347 "cfns.gperf"
421      {"asinhl", 99},
422#line 82 "cfns.gperf"
423      {"fseek", 89},
424#line 169 "cfns.gperf"
425      {"strchr", 89},
426#line 443 "cfns.gperf"
427      {"truncf", 99},
428#line 158 "cfns.gperf"
429      {"setbuf", 89},
430#line 52 "cfns.gperf"
431      {"cos", 89},
432#line 336 "cfns.gperf"
433      {"cosf", 99},
434#line 337 "cfns.gperf"
435      {"cosl", 99},
436#line 135 "cfns.gperf"
437      {"memchr", 89},
438#line 279 "cfns.gperf"
439      {"ctanhl", 99},
440#line 412 "cfns.gperf"
441      {"lgammaf", 99},
442#line 127 "cfns.gperf"
443      {"malloc", 89},
444#line 413 "cfns.gperf"
445      {"lgammal", 99},
446#line 101 "cfns.gperf"
447      {"islower", 89},
448#line 47 "cfns.gperf"
449      {"btowc", 89},
450#line 245 "cfns.gperf"
451      {"cacosf", 99},
452#line 317 "cfns.gperf"
453      {"fesetround", 99},
454#line 415 "cfns.gperf"
455      {"tgammaf", 99},
456#line 416 "cfns.gperf"
457      {"tgammal", 99},
458#line 504 "cfns.gperf"
459      {"aligned_alloc", 11},
460#line 350 "cfns.gperf"
461      {"atanhl", 99},
462#line 54 "cfns.gperf"
463      {"ctime", 89},
464#line 411 "cfns.gperf"
465      {"lgamma", 99},
466#line 469 "cfns.gperf"
467      {"fmaxf", 99},
468#line 78 "cfns.gperf"
469      {"free", 89},
470#line 470 "cfns.gperf"
471      {"fmaxl", 99},
472#line 533 "cfns.gperf"
473      {"mbrtoc16", 11},
474#line 414 "cfns.gperf"
475      {"tgamma", 99},
476#line 284 "cfns.gperf"
477      {"clogf", 99},
478#line 285 "cfns.gperf"
479      {"clogl", 99},
480#line 106 "cfns.gperf"
481      {"iswalnum", 89},
482#line 487 "cfns.gperf"
483      {"_Exit", 99},
484#line 153 "cfns.gperf"
485      {"realloc", 89},
486#line 241 "cfns.gperf"
487      {"wmemset", 89},
488#line 367 "cfns.gperf"
489      {"ilogb", 99},
490#line 162 "cfns.gperf"
491      {"sin", 89},
492#line 338 "cfns.gperf"
493      {"sinf", 99},
494#line 314 "cfns.gperf"
495      {"fesetexceptflag", 99},
496#line 178 "cfns.gperf"
497      {"strncmp", 89},
498#line 339 "cfns.gperf"
499      {"sinl", 99},
500#line 308 "cfns.gperf"
501      {"crealf", 99},
502#line 484 "cfns.gperf"
503      {"strtold", 99},
504#line 322 "cfns.gperf"
505      {"imaxabs", 99},
506#line 483 "cfns.gperf"
507      {"strtof", 99},
508#line 159 "cfns.gperf"
509      {"setlocale", 89},
510#line 132 "cfns.gperf"
511      {"mbsrtowcs", 89},
512#line 97 "cfns.gperf"
513      {"isalpha", 89},
514#line 319 "cfns.gperf"
515      {"feholdexcept", 99},
516#line 237 "cfns.gperf"
517      {"wmemchr", 89},
518#line 96 "cfns.gperf"
519      {"isalnum", 89},
520#line 334 "cfns.gperf"
521      {"atan2f", 99},
522#line 180 "cfns.gperf"
523      {"strpbrk", 89},
524#line 166 "cfns.gperf"
525      {"srand", 89},
526#line 193 "cfns.gperf"
527      {"tanh", 89},
528#line 481 "cfns.gperf"
529      {"vsscanf", 99},
530#line 219 "cfns.gperf"
531      {"wcsncat", 89},
532#line 369 "cfns.gperf"
533      {"ilogbl", 99},
534#line 190 "cfns.gperf"
535      {"swscanf", 89},
536#line 152 "cfns.gperf"
537      {"rand", 89},
538#line 425 "cfns.gperf"
539      {"rintf", 99},
540#line 535 "cfns.gperf"
541      {"mbrtoc32", 11},
542#line 436 "cfns.gperf"
543      {"lround", 99},
544#line 357 "cfns.gperf"
545      {"expf", 99},
546#line 426 "cfns.gperf"
547      {"rintl", 99},
548#line 358 "cfns.gperf"
549      {"expl", 99},
550#line 274 "cfns.gperf"
551      {"csinh", 99},
552#line 534 "cfns.gperf"
553      {"c16rtomb", 11},
554#line 95 "cfns.gperf"
555      {"gmtime", 89},
556#line 226 "cfns.gperf"
557      {"wcsstr", 89},
558#line 536 "cfns.gperf"
559      {"c32rtomb", 11},
560#line 424 "cfns.gperf"
561      {"rint", 99},
562#line 320 "cfns.gperf"
563      {"fesetenv", 99},
564#line 188 "cfns.gperf"
565      {"strxfrm", 89},
566#line 109 "cfns.gperf"
567      {"iswctype", 89},
568#line 182 "cfns.gperf"
569      {"strspn", 89},
570#line 292 "cfns.gperf"
571      {"csqrt", 99},
572#line 439 "cfns.gperf"
573      {"llround", 99},
574#line 419 "cfns.gperf"
575      {"floorf", 99},
576#line 173 "cfns.gperf"
577      {"strcspn", 89},
578#line 345 "cfns.gperf"
579      {"asinh", 99},
580#line 179 "cfns.gperf"
581      {"strncpy", 89},
582#line 133 "cfns.gperf"
583      {"mbstowcs", 89},
584#line 70 "cfns.gperf"
585      {"fmod", 89},
586#line 164 "cfns.gperf"
587      {"sprintf", 89},
588#line 102 "cfns.gperf"
589      {"isprint", 89},
590#line 187 "cfns.gperf"
591      {"strtoul", 89},
592#line 486 "cfns.gperf"
593      {"strtoull", 99},
594#line 131 "cfns.gperf"
595      {"mbsinit", 89},
596#line 172 "cfns.gperf"
597      {"strcpy", 89},
598#line 184 "cfns.gperf"
599      {"strtod", 89},
600#line 223 "cfns.gperf"
601      {"wcsrchr", 89},
602#line 277 "cfns.gperf"
603      {"ctanh", 99},
604#line 362 "cfns.gperf"
605      {"expm1", 99},
606#line 230 "cfns.gperf"
607      {"wcstombs", 89},
608#line 275 "cfns.gperf"
609      {"csinhf", 99},
610#line 294 "cfns.gperf"
611      {"csqrtl", 99},
612#line 137 "cfns.gperf"
613      {"memcpy", 89},
614#line 211 "cfns.gperf"
615      {"wcscat", 89},
616#line 477 "cfns.gperf"
617      {"snprintf", 99},
618#line 233 "cfns.gperf"
619      {"wctob", 89},
620#line 130 "cfns.gperf"
621      {"mbrtowc", 89},
622#line 348 "cfns.gperf"
623      {"atanh", 99},
624#line 346 "cfns.gperf"
625      {"asinhf", 99},
626#line 360 "cfns.gperf"
627      {"exp2f", 99},
628#line 361 "cfns.gperf"
629      {"exp2l", 99},
630#line 228 "cfns.gperf"
631      {"wcstok", 89},
632#line 123 "cfns.gperf"
633      {"localtime", 89},
634#line 210 "cfns.gperf"
635      {"wcrtomb", 89},
636#line 351 "cfns.gperf"
637      {"coshf", 99},
638#line 214 "cfns.gperf"
639      {"wcscoll", 89},
640#line 273 "cfns.gperf"
641      {"ccoshl", 99},
642#line 138 "cfns.gperf"
643      {"memmove", 89},
644#line 352 "cfns.gperf"
645      {"coshl", 99},
646#line 278 "cfns.gperf"
647      {"ctanhf", 99},
648#line 364 "cfns.gperf"
649      {"expm1l", 99},
650#line 229 "cfns.gperf"
651      {"wcstol", 89},
652#line 495 "cfns.gperf"
653      {"wcstoll", 99},
654#line 295 "cfns.gperf"
655      {"carg", 99},
656#line 235 "cfns.gperf"
657      {"wctrans", 89},
658#line 134 "cfns.gperf"
659      {"mbtowc", 89},
660#line 234 "cfns.gperf"
661      {"wctomb", 89},
662#line 491 "cfns.gperf"
663      {"vswscanf", 99},
664#line 344 "cfns.gperf"
665      {"acoshl", 99},
666#line 349 "cfns.gperf"
667      {"atanhf", 99},
668#line 199 "cfns.gperf"
669      {"towctrans", 89},
670#line 141 "cfns.gperf"
671      {"modf", 89},
672#line 385 "cfns.gperf"
673      {"modff", 99},
674#line 386 "cfns.gperf"
675      {"modfl", 99},
676#line 372 "cfns.gperf"
677      {"logf", 99},
678#line 125 "cfns.gperf"
679      {"log10", 89},
680#line 373 "cfns.gperf"
681      {"logl", 99},
682#line 383 "cfns.gperf"
683      {"logbf", 99},
684#line 384 "cfns.gperf"
685      {"logbl", 99},
686#line 382 "cfns.gperf"
687      {"logb", 99},
688#line 359 "cfns.gperf"
689      {"exp2", 99},
690#line 316 "cfns.gperf"
691      {"fegetround", 99},
692#line 218 "cfns.gperf"
693      {"wcslen", 89},
694#line 353 "cfns.gperf"
695      {"sinhf", 99},
696#line 42 "cfns.gperf"
697      {"atexit", 89},
698#line 354 "cfns.gperf"
699      {"sinhl", 99},
700#line 175 "cfns.gperf"
701      {"strftime", 89},
702#line 103 "cfns.gperf"
703      {"ispunct", 89},
704#line 375 "cfns.gperf"
705      {"log10l", 99},
706#line 283 "cfns.gperf"
707      {"clog", 99},
708#line 460 "cfns.gperf"
709      {"nextafterf", 99},
710#line 461 "cfns.gperf"
711      {"nextafterl", 99},
712#line 197 "cfns.gperf"
713      {"tolower", 89},
714#line 368 "cfns.gperf"
715      {"ilogbf", 99},
716#line 435 "cfns.gperf"
717      {"roundl", 99},
718#line 380 "cfns.gperf"
719      {"log2f", 99},
720#line 212 "cfns.gperf"
721      {"wcschr", 89},
722#line 381 "cfns.gperf"
723      {"log2l", 99},
724#line 312 "cfns.gperf"
725      {"fegetexceptflag", 99},
726#line 160 "cfns.gperf"
727      {"setvbuf", 89},
728#line 281 "cfns.gperf"
729      {"cexpf", 99},
730#line 459 "cfns.gperf"
731      {"nextafter", 99},
732#line 282 "cfns.gperf"
733      {"cexpl", 99},
734#line 290 "cfns.gperf"
735      {"cpowf", 99},
736#line 291 "cfns.gperf"
737      {"cpowl", 99},
738#line 112 "cfns.gperf"
739      {"iswlower", 89},
740#line 122 "cfns.gperf"
741      {"localeconv", 89},
742#line 107 "cfns.gperf"
743      {"iswalpha", 89},
744#line 110 "cfns.gperf"
745      {"iswdigit", 89},
746#line 115 "cfns.gperf"
747      {"iswspace", 89},
748#line 114 "cfns.gperf"
749      {"iswpunct", 89},
750#line 463 "cfns.gperf"
751      {"nexttowardf", 99},
752#line 271 "cfns.gperf"
753      {"ccosh", 99},
754#line 464 "cfns.gperf"
755      {"nexttowardl", 99},
756#line 468 "cfns.gperf"
757      {"fmax", 99},
758#line 238 "cfns.gperf"
759      {"wmemcmp", 89},
760#line 194 "cfns.gperf"
761      {"time", 89},
762#line 104 "cfns.gperf"
763      {"isspace", 89},
764#line 293 "cfns.gperf"
765      {"csqrtf", 99},
766#line 398 "cfns.gperf"
767      {"hypot", 99},
768#line 318 "cfns.gperf"
769      {"fegetenv", 99},
770#line 342 "cfns.gperf"
771      {"acosh", 99},
772#line 379 "cfns.gperf"
773      {"log2", 99},
774#line 302 "cfns.gperf"
775      {"conjf", 99},
776#line 161 "cfns.gperf"
777      {"signal", 89},
778#line 303 "cfns.gperf"
779      {"conjl", 99},
780#line 111 "cfns.gperf"
781      {"iswgraph", 89},
782#line 220 "cfns.gperf"
783      {"wcsncmp", 89},
784#line 53 "cfns.gperf"
785      {"cosh", 89},
786#line 400 "cfns.gperf"
787      {"hypotl", 99},
788#line 272 "cfns.gperf"
789      {"ccoshf", 99},
790#line 494 "cfns.gperf"
791      {"wcstold", 99},
792#line 105 "cfns.gperf"
793      {"isupper", 89},
794#line 363 "cfns.gperf"
795      {"expm1f", 99},
796#line 493 "cfns.gperf"
797      {"wcstof", 99},
798#line 343 "cfns.gperf"
799      {"acoshf", 99},
800#line 58 "cfns.gperf"
801      {"exp", 89},
802#line 222 "cfns.gperf"
803      {"wcspbrk", 89},
804#line 207 "cfns.gperf"
805      {"vsprintf", 89},
806#line 239 "cfns.gperf"
807      {"wmemcpy", 89},
808#line 189 "cfns.gperf"
809      {"swprintf", 89},
810#line 506 "cfns.gperf"
811      {"quick_exit", 11},
812#line 121 "cfns.gperf"
813      {"ldiv", 89},
814#line 224 "cfns.gperf"
815      {"wcsrtombs", 89},
816#line 300 "cfns.gperf"
817      {"cimagl", 99},
818#line 232 "cfns.gperf"
819      {"wcsxfrm", 89},
820#line 85 "cfns.gperf"
821      {"fwide", 89},
822#line 225 "cfns.gperf"
823      {"wcsspn", 89},
824#line 433 "cfns.gperf"
825      {"round", 99},
826#line 216 "cfns.gperf"
827      {"wcscspn", 89},
828#line 221 "cfns.gperf"
829      {"wcsncpy", 89},
830#line 118 "cfns.gperf"
831      {"isxdigit", 89},
832#line 163 "cfns.gperf"
833      {"sinh", 89},
834#line 231 "cfns.gperf"
835      {"wcstoul", 89},
836#line 496 "cfns.gperf"
837      {"wcstoull", 99},
838#line 325 "cfns.gperf"
839      {"strtoumax", 99},
840#line 215 "cfns.gperf"
841      {"wcscpy", 89},
842#line 227 "cfns.gperf"
843      {"wcstod", 89},
844#line 366 "cfns.gperf"
845      {"frexpl", 99},
846#line 124 "cfns.gperf"
847      {"log", 89},
848#line 451 "cfns.gperf"
849      {"remquof", 99},
850#line 452 "cfns.gperf"
851      {"remquol", 99},
852#line 374 "cfns.gperf"
853      {"log10f", 99},
854#line 170 "cfns.gperf"
855      {"strcmp", 89},
856#line 401 "cfns.gperf"
857      {"powf", 99},
858#line 402 "cfns.gperf"
859      {"powl", 99},
860#line 136 "cfns.gperf"
861      {"memcmp", 89},
862#line 434 "cfns.gperf"
863      {"roundf", 99},
864#line 240 "cfns.gperf"
865      {"wmemmove", 89},
866#line 236 "cfns.gperf"
867      {"wctype", 89},
868#line 289 "cfns.gperf"
869      {"cpow", 99},
870#line 462 "cfns.gperf"
871      {"nexttoward", 99},
872#line 450 "cfns.gperf"
873      {"remquo", 99},
874#line 324 "cfns.gperf"
875      {"strtoimax", 99},
876#line 321 "cfns.gperf"
877      {"feupdateenv", 99},
878#line 489 "cfns.gperf"
879      {"lldiv", 99},
880#line 91 "cfns.gperf"
881      {"getenv", 89},
882#line 99 "cfns.gperf"
883      {"isdigit", 89},
884#line 505 "cfns.gperf"
885      {"at_quick_exit", 11},
886#line 100 "cfns.gperf"
887      {"isgraph", 89},
888#line 306 "cfns.gperf"
889      {"cprojl", 99},
890#line 378 "cfns.gperf"
891      {"log1pl", 99},
892#line 399 "cfns.gperf"
893      {"hypotf", 99},
894#line 217 "cfns.gperf"
895      {"wcsftime", 89},
896#line 371 "cfns.gperf"
897      {"ldexpl", 99},
898#line 200 "cfns.gperf"
899      {"towlower", 89},
900#line 280 "cfns.gperf"
901      {"cexp", 99},
902#line 298 "cfns.gperf"
903      {"cimag", 99},
904#line 299 "cfns.gperf"
905      {"cimagf", 99},
906#line 532 "cfns.gperf"
907      {"timespec_get", 11},
908#line 113 "cfns.gperf"
909      {"iswprint", 89},
910#line 116 "cfns.gperf"
911      {"iswupper", 89},
912#line 365 "cfns.gperf"
913      {"frexpf", 99},
914#line 143 "cfns.gperf"
915      {"pow", 89},
916#line 198 "cfns.gperf"
917      {"toupper", 89},
918#line 453 "cfns.gperf"
919      {"copysign", 99},
920#line 454 "cfns.gperf"
921      {"copysignf", 99},
922#line 455 "cfns.gperf"
923      {"copysignl", 99},
924#line 480 "cfns.gperf"
925      {"vsnprintf", 99},
926#line 80 "cfns.gperf"
927      {"frexp", 89},
928#line 301 "cfns.gperf"
929      {"conj", 99},
930#line 55 "cfns.gperf"
931      {"difftime", 89},
932#line 305 "cfns.gperf"
933      {"cprojf", 99},
934#line 377 "cfns.gperf"
935      {"log1pf", 99},
936#line 327 "cfns.gperf"
937      {"wcstoumax", 99},
938#line 370 "cfns.gperf"
939      {"ldexpf", 99},
940#line 213 "cfns.gperf"
941      {"wcscmp", 89},
942#line 117 "cfns.gperf"
943      {"iswxdigit", 89},
944#line 376 "cfns.gperf"
945      {"log1p", 99},
946#line 120 "cfns.gperf"
947      {"ldexp", 89},
948#line 326 "cfns.gperf"
949      {"wcstoimax", 99},
950#line 56 "cfns.gperf"
951      {"div", 89},
952#line 304 "cfns.gperf"
953      {"cproj", 99},
954#line 208 "cfns.gperf"
955      {"vswprintf", 89},
956#line 126 "cfns.gperf"
957      {"longjmp", 89},
958#line 323 "cfns.gperf"
959      {"imaxdiv", 99},
960#line 201 "cfns.gperf"
961      {"towupper", 89}
962    };
963
964  static const short lookup[] =
965    {
966       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
967        0,   1,  -1,  -1,  -1,   2,  -1,  -1,   3,   4,
968        5,   6,   7,   8,   9,  10,  11,  12,  13,  14,
969       15,  16,  17,  18,  19,  20,  -1,  21,  22,  -1,
970       -1,  -1,  -1,  -1,  23,  24,  -1,  -1,  -1,  25,
971       -1,  -1,  -1,  -1,  26,  -1,  27,  -1,  28,  -1,
972       -1,  29,  -1,  -1,  30,  31,  32,  33,  34,  35,
973       -1,  -1,  36,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
974       -1,  37,  38,  39,  40,  41,  42,  -1,  43,  44,
975       -1,  45,  46,  -1,  47,  48,  49,  -1,  -1,  -1,
976       50,  -1,  51,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
977       -1,  -1,  -1,  -1,  52,  53,  -1,  -1,  54,  55,
978       56,  57,  -1,  58,  59,  -1,  -1,  -1,  -1,  -1,
979       -1,  -1,  -1,  -1,  60,  -1,  -1,  61,  -1,  62,
980       63,  -1,  -1,  -1,  64,  -1,  -1,  65,  -1,  -1,
981       -1,  66,  67,  -1,  -1,  -1,  68,  -1,  -1,  -1,
982       69,  -1,  70,  71,  -1,  -1,  72,  73,  74,  -1,
983       75,  -1,  -1,  -1,  -1,  76,  77,  78,  -1,  -1,
984       79,  80,  81,  -1,  -1,  -1,  -1,  -1,  82,  -1,
985       -1,  -1,  -1,  83,  -1,  -1,  84,  85,  -1,  -1,
986       86,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  87,  88,
987       -1,  -1,  -1,  89,  -1,  -1,  90,  91,  92,  -1,
988       -1,  -1,  -1,  -1,  -1,  -1,  -1,  93,  -1,  94,
989       -1,  -1,  95,  -1,  96,  -1,  -1,  97,  98,  -1,
990       -1,  -1,  -1,  -1,  -1,  -1,  99,  -1,  -1,  -1,
991       -1, 100,  -1,  -1,  -1,  -1,  -1,  -1,  -1, 101,
992       -1, 102,  -1,  -1,  -1, 103,  -1,  -1,  -1,  -1,
993       -1,  -1,  -1,  -1, 104, 105,  -1, 106,  -1, 107,
994      108,  -1,  -1,  -1,  -1, 109,  -1,  -1,  -1,  -1,
995       -1,  -1, 110,  -1,  -1,  -1,  -1, 111,  -1,  -1,
996      112,  -1, 113,  -1,  -1, 114,  -1,  -1,  -1,  -1,
997      115, 116,  -1, 117, 118, 119, 120, 121,  -1, 122,
998      123, 124,  -1,  -1, 125, 126, 127, 128,  -1,  -1,
999       -1, 129, 130, 131,  -1, 132,  -1, 133,  -1, 134,
1000      135,  -1, 136,  -1, 137,  -1,  -1,  -1,  -1, 138,
1001      139, 140, 141, 142, 143,  -1, 144,  -1, 145,  -1,
1002       -1,  -1,  -1,  -1,  -1, 146, 147, 148, 149,  -1,
1003       -1,  -1, 150,  -1,  -1,  -1,  -1, 151, 152, 153,
1004      154, 155, 156,  -1, 157,  -1,  -1, 158,  -1,  -1,
1005       -1, 159,  -1,  -1, 160,  -1, 161,  -1,  -1,  -1,
1006      162, 163,  -1, 164,  -1,  -1,  -1, 165,  -1,  -1,
1007       -1, 166, 167,  -1,  -1, 168,  -1,  -1,  -1,  -1,
1008      169,  -1, 170,  -1, 171,  -1,  -1,  -1, 172,  -1,
1009       -1,  -1, 173, 174,  -1, 175,  -1,  -1,  -1,  -1,
1010       -1, 176,  -1,  -1,  -1,  -1,  -1,  -1,  -1, 177,
1011      178, 179, 180,  -1, 181, 182,  -1,  -1,  -1,  -1,
1012       -1,  -1,  -1, 183, 184, 185,  -1,  -1, 186,  -1,
1013      187,  -1, 188,  -1,  -1,  -1, 189, 190, 191, 192,
1014       -1,  -1, 193,  -1,  -1,  -1, 194,  -1,  -1,  -1,
1015      195,  -1, 196, 197,  -1, 198, 199, 200, 201,  -1,
1016      202, 203, 204, 205, 206,  -1,  -1, 207,  -1, 208,
1017      209, 210, 211, 212,  -1,  -1, 213, 214, 215,  -1,
1018      216,  -1,  -1,  -1,  -1, 217, 218, 219, 220, 221,
1019       -1,  -1, 222,  -1, 223,  -1,  -1, 224, 225,  -1,
1020      226,  -1, 227, 228, 229, 230,  -1, 231, 232,  -1,
1021      233,  -1,  -1,  -1,  -1,  -1, 234, 235,  -1,  -1,
1022       -1, 236, 237, 238,  -1,  -1, 239,  -1, 240,  -1,
1023      241,  -1, 242, 243,  -1,  -1,  -1,  -1,  -1, 244,
1024       -1,  -1,  -1,  -1,  -1, 245, 246,  -1,  -1,  -1,
1025      247,  -1, 248,  -1, 249,  -1,  -1,  -1, 250,  -1,
1026       -1, 251, 252, 253, 254, 255,  -1,  -1,  -1, 256,
1027      257,  -1, 258, 259,  -1,  -1, 260,  -1,  -1,  -1,
1028      261,  -1, 262, 263, 264,  -1, 265,  -1,  -1,  -1,
1029       -1,  -1, 266,  -1,  -1,  -1,  -1, 267,  -1,  -1,
1030       -1, 268, 269,  -1,  -1,  -1, 270,  -1, 271,  -1,
1031      272,  -1, 273,  -1,  -1,  -1, 274,  -1,  -1,  -1,
1032      275,  -1, 276,  -1,  -1,  -1,  -1, 277,  -1,  -1,
1033       -1,  -1,  -1,  -1,  -1, 278,  -1,  -1,  -1,  -1,
1034      279,  -1,  -1,  -1, 280,  -1, 281,  -1, 282,  -1,
1035       -1, 283,  -1,  -1,  -1,  -1, 284,  -1,  -1,  -1,
1036       -1,  -1,  -1,  -1, 285,  -1,  -1, 286,  -1,  -1,
1037       -1,  -1,  -1,  -1,  -1,  -1,  -1, 287,  -1, 288,
1038       -1,  -1,  -1, 289,  -1,  -1,  -1, 290, 291,  -1,
1039       -1, 292,  -1, 293,  -1, 294, 295,  -1,  -1,  -1,
1040       -1,  -1,  -1, 296,  -1,  -1, 297, 298,  -1,  -1,
1041      299,  -1, 300,  -1,  -1,  -1, 301,  -1,  -1,  -1,
1042      302,  -1,  -1, 303,  -1, 304, 305,  -1,  -1,  -1,
1043       -1,  -1,  -1, 306,  -1,  -1,  -1, 307,  -1,  -1,
1044      308, 309, 310,  -1,  -1,  -1,  -1, 311, 312,  -1,
1045       -1, 313, 314,  -1, 315,  -1, 316,  -1,  -1,  -1,
1046       -1, 317,  -1,  -1, 318,  -1,  -1,  -1,  -1,  -1,
1047       -1,  -1, 319,  -1,  -1,  -1, 320,  -1,  -1, 321,
1048      322,  -1,  -1,  -1,  -1,  -1, 323,  -1,  -1, 324,
1049       -1,  -1, 325, 326, 327,  -1,  -1,  -1,  -1, 328,
1050      329, 330,  -1, 331,  -1,  -1,  -1,  -1,  -1,  -1,
1051       -1,  -1,  -1,  -1,  -1,  -1,  -1, 332,  -1,  -1,
1052      333, 334,  -1,  -1,  -1, 335,  -1,  -1, 336, 337,
1053      338, 339,  -1, 340,  -1,  -1, 341,  -1,  -1,  -1,
1054       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1055       -1,  -1,  -1, 342,  -1,  -1,  -1,  -1,  -1, 343,
1056      344,  -1, 345,  -1, 346,  -1,  -1,  -1,  -1, 347,
1057       -1,  -1,  -1, 348,  -1, 349,  -1,  -1, 350, 351,
1058      352,  -1, 353, 354,  -1,  -1,  -1,  -1,  -1,  -1,
1059      355, 356, 357,  -1, 358, 359,  -1, 360,  -1,  -1,
1060       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1061      361,  -1,  -1,  -1, 362,  -1, 363,  -1,  -1, 364,
1062       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1063      365,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1064      366, 367,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1065       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1066       -1,  -1,  -1,  -1,  -1,  -1,  -1, 368,  -1, 369,
1067       -1, 370, 371,  -1,  -1, 372,  -1,  -1,  -1,  -1,
1068       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1, 373,
1069       -1,  -1,  -1,  -1, 374,  -1,  -1,  -1,  -1,  -1,
1070       -1,  -1,  -1, 375,  -1,  -1,  -1,  -1,  -1,  -1,
1071      376,  -1,  -1,  -1, 377,  -1,  -1,  -1,  -1,  -1,
1072       -1,  -1, 378,  -1, 379,  -1, 380,  -1, 381,  -1,
1073       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1074       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1075       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1076       -1, 382,  -1, 383,  -1,  -1, 384, 385,  -1,  -1,
1077       -1,  -1,  -1, 386,  -1,  -1,  -1,  -1,  -1,  -1,
1078       -1,  -1,  -1,  -1,  -1, 387,  -1,  -1,  -1,  -1,
1079       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1080       -1,  -1,  -1,  -1,  -1,  -1, 388,  -1,  -1,  -1,
1081       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1082       -1, 389,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1083       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1, 390,
1084       -1, 391, 392, 393,  -1, 394,  -1,  -1,  -1,  -1,
1085       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1086       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1087       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1, 395,  -1,
1088       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1089       -1,  -1,  -1,  -1, 396,  -1,  -1,  -1,  -1,  -1,
1090       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1091       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1092       -1,  -1, 397,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1093       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1094       -1,  -1,  -1, 398,  -1, 399,  -1,  -1,  -1,  -1,
1095       -1,  -1,  -1, 400,  -1, 401,  -1,  -1,  -1, 402,
1096       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1097       -1,  -1, 403,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1098       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1099       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1100       -1,  -1, 404,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1101       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1102       -1,  -1,  -1,  -1,  -1,  -1, 405,  -1,  -1,  -1,
1103       -1,  -1, 406,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1104       -1,  -1,  -1,  -1,  -1,  -1, 407,  -1,  -1,  -1,
1105      408,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1106       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1107       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1108       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1109       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1110       -1,  -1,  -1,  -1,  -1,  -1,  -1, 409, 410,  -1,
1111       -1,  -1,  -1,  -1,  -1,  -1, 411,  -1,  -1,  -1,
1112       -1, 412,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1113       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
1114       -1,  -1,  -1,  -1,  -1,  -1,  -1, 413
1115    };
1116
1117  if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
1118    {
1119      unsigned int key = hash (str, len);
1120
1121      if (key <= MAX_HASH_VALUE)
1122        {
1123          int index = lookup[key];
1124
1125          if (index >= 0)
1126            {
1127              const char *s = wordlist[index].name;
1128
1129              if (*str == *s && !strcmp (str + 1, s + 1))
1130                return &wordlist[index];
1131            }
1132        }
1133    }
1134  return 0;
1135}
1136