webengine/osswebengine/DerivedSources/WebCore/HTMLEntityNames.c
changeset 0 dd21522fd290
equal deleted inserted replaced
-1:000000000000 0:dd21522fd290
       
     1 /* ANSI-C code produced by gperf version 2.7.2 */
       
     2 /* Command-line: gperf -a -L ANSI-C -C -G -c -o -t -k '*' -N findEntity -D -s 2 /cygdrive/x/tot/WebCore/html/HTMLEntityNames.gperf  */
       
     3 /*   This file is part of the KDE libraries
       
     4   
       
     5      Copyright (C) 1999 Lars Knoll (knoll@mpi-hd.mpg.de)
       
     6   
       
     7      This library is free software; you can redistribute it and/or
       
     8      modify it under the terms of the GNU Library General Public
       
     9      License as published by the Free Software Foundation; either
       
    10      version 2 of the License, or (at your option) any later version.
       
    11   
       
    12      This library is distributed in the hope that it will be useful,
       
    13      but WITHOUT ANY WARRANTY; without even the implied warranty of
       
    14      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
       
    15      Library General Public License for more details.
       
    16   
       
    17      You should have received a copy of the GNU Library General Public License
       
    18      along with this library; see the file COPYING.LIB.  If not, write to
       
    19      the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
       
    20      Boston, MA 02110-1301, USA.
       
    21   
       
    22   ----------------------------------------------------------------------------
       
    23   
       
    24     HTMLEntityNames.gperf: input file to generate a hash table for entities
       
    25     HTMLEntityNames.c: DO NOT EDIT! generated by the command
       
    26     "gperf -a -L "ANSI-C" -C -G -c -o -t -k '*' -NfindEntity -D -s 2 HTMLEntityNames.gperf > entities.c"   
       
    27     from HTMLEntityNames.gperf 
       
    28 
       
    29 */
       
    30 struct Entity {
       
    31     const char *name;
       
    32     int code;
       
    33 };
       
    34 
       
    35 #define TOTAL_KEYWORDS 262
       
    36 #define MIN_WORD_LENGTH 2
       
    37 #define MAX_WORD_LENGTH 8
       
    38 #define MIN_HASH_VALUE 4
       
    39 #define MAX_HASH_VALUE 1556
       
    40 /* maximum key range = 1553, duplicates = 1 */
       
    41 
       
    42 #ifdef __GNUC__
       
    43 __inline
       
    44 #else
       
    45 #ifdef __cplusplus
       
    46 inline
       
    47 #endif
       
    48 #endif
       
    49 static unsigned int
       
    50 hash (register const char *str, register unsigned int len)
       
    51 {
       
    52   static const unsigned short asso_values[] =
       
    53     {
       
    54       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    55       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    56       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    57       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    58       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,   15,
       
    59         25,   20,   10, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    60       1557, 1557, 1557, 1557, 1557,   70,   10,    0,    0,  130,
       
    61       1557,   10,    0,  140, 1557,   10,    5,    0,    5,   75,
       
    62         15,    0,    5,   10,    0,  100, 1557, 1557,    5,   35,
       
    63          0, 1557, 1557, 1557, 1557, 1557, 1557,    0,   30,   95,
       
    64         30,    5,   95,  100,  305,   15,    0,    0,   10,  350,
       
    65        400,  170,  290,  145,    0,  390,   30,  110,   90,    5,
       
    66         20,  105,    5, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    67       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    68       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    69       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    70       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    71       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    72       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    73       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    74       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    75       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    76       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    77       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    78       1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557,
       
    79       1557, 1557, 1557, 1557, 1557, 1557
       
    80     };
       
    81   register int hval = len;
       
    82 
       
    83   switch (hval)
       
    84     {
       
    85       default:
       
    86       case 8:
       
    87         hval += asso_values[(unsigned char)str[7]];
       
    88       case 7:
       
    89         hval += asso_values[(unsigned char)str[6]];
       
    90       case 6:
       
    91         hval += asso_values[(unsigned char)str[5]];
       
    92       case 5:
       
    93         hval += asso_values[(unsigned char)str[4]];
       
    94       case 4:
       
    95         hval += asso_values[(unsigned char)str[3]];
       
    96       case 3:
       
    97         hval += asso_values[(unsigned char)str[2]];
       
    98       case 2:
       
    99         hval += asso_values[(unsigned char)str[1]];
       
   100       case 1:
       
   101         hval += asso_values[(unsigned char)str[0]];
       
   102         break;
       
   103     }
       
   104   return hval;
       
   105 }
       
   106 
       
   107 static const struct Entity wordlist[] =
       
   108   {
       
   109     {"rarr", 0x2192},
       
   110     {"LT", 60},
       
   111     {"GT", 62},
       
   112     {"zwj", 0x200d},
       
   113     {"larr", 0x2190},
       
   114     {"le", 0x2264},
       
   115     {"real", 0x211c},
       
   116     {"Xi", 0x039e},
       
   117     {"Pi", 0x03a0},
       
   118     {"darr", 0x2193},
       
   119     {"xi", 0x03be},
       
   120     {"eta", 0x03b7},
       
   121     {"Zeta", 0x0396},
       
   122     {"lt", 60},
       
   123     {"zeta", 0x03b6},
       
   124     {"Beta", 0x0392},
       
   125     {"Delta", 0x0394},
       
   126     {"beta", 0x03b2},
       
   127     {"trade", 0x2122},
       
   128     {"rArr", 0x21d2},
       
   129     {"delta", 0x03b4},
       
   130     {"lArr", 0x21d0},
       
   131     {"AMP", 38},
       
   132     {"THORN", 0x00de},
       
   133     {"tilde", 0x02dc},
       
   134     {"atilde", 0x00e3},
       
   135     {"crarr", 0x21b5},
       
   136     {"Ntilde", 0x00d1},
       
   137     {"dArr", 0x21d3},
       
   138     {"ge", 0x2265},
       
   139     {"reg", 0x00ae},
       
   140     {"Mu", 0x039c},
       
   141     {"Tau", 0x03a4},
       
   142     {"uarr", 0x2191},
       
   143     {"Nu", 0x039d},
       
   144     {"COPY", 0x00a9},
       
   145     {"rceil", 0x2309},
       
   146     {"gt", 62},
       
   147     {"ETH", 0x00d0},
       
   148     {"aelig", 0x00e6},
       
   149     {"deg", 0x00b0},
       
   150     {"lceil", 0x2308},
       
   151     {"tau", 0x03c4},
       
   152     {"radic", 0x221a},
       
   153     {"REG", 0x00ae},
       
   154     {"iexcl", 0x00a1},
       
   155     {"brvbar", 0x00a6},
       
   156     {"cedil", 0x00b8},
       
   157     {"Ccedil", 0x00c7},
       
   158     {"Eta", 0x0397},
       
   159     {"bull", 0x2022},
       
   160     {"Atilde", 0x00c3},
       
   161     {"Otilde", 0x00d5},
       
   162     {"or", 0x2228},
       
   163     {"QUOT", 34},
       
   164     {"uArr", 0x21d1},
       
   165     {"loz", 0x25ca},
       
   166     {"divide", 0x00f7},
       
   167     {"agrave", 0x00e0},
       
   168     {"egrave", 0x00e8},
       
   169     {"circ", 0x02c6},
       
   170     {"acirc", 0x00e2},
       
   171     {"Dagger", 0x2021},
       
   172     {"ecirc", 0x00ea},
       
   173     {"igrave", 0x00ec},
       
   174     {"iota", 0x03b9},
       
   175     {"frac14", 0x00bc},
       
   176     {"icirc", 0x00ee},
       
   177     {"frac34", 0x00be},
       
   178     {"frac12", 0x00bd},
       
   179     {"dagger", 0x2020},
       
   180     {"acute", 0x00b4},
       
   181     {"aacute", 0x00e1},
       
   182     {"eacute", 0x00e9},
       
   183     {"ccedil", 0x00e7},
       
   184     {"iacute", 0x00ed},
       
   185     {"otilde", 0x00f5},
       
   186     {"Agrave", 0x00c0},
       
   187     {"Ograve", 0x00d2},
       
   188     {"Acirc", 0x00c2},
       
   189     {"Yacute", 0x00dd},
       
   190     {"Ocirc", 0x00d4},
       
   191     {"euro", 0x20ac},
       
   192     {"forall", 0x2200},
       
   193     {"para", 0x00b6},
       
   194     {"ordf", 0x00aa},
       
   195     {"Ugrave", 0x00d9},
       
   196     {"oelig", 0x0153},
       
   197     {"pi", 0x03c0},
       
   198     {"harr", 0x2194},
       
   199     {"Ucirc", 0x00db},
       
   200     {"ugrave", 0x00f9},
       
   201     {"Aacute", 0x00c1},
       
   202     {"ucirc", 0x00fb},
       
   203     {"Oacute", 0x00d3},
       
   204     {"Chi", 0x03a7},
       
   205     {"part", 0x2202},
       
   206     {"weierp", 0x2118},
       
   207     {"AElig", 0x00c6},
       
   208     {"Egrave", 0x00c8},
       
   209     {"OElig", 0x0152},
       
   210     {"Phi", 0x03a6},
       
   211     {"Ecirc", 0x00ca},
       
   212     {"Igrave", 0x00cc},
       
   213     {"eth", 0x00f0},
       
   214     {"Iota", 0x0399},
       
   215     {"Theta", 0x0398},
       
   216     {"Uacute", 0x00da},
       
   217     {"Icirc", 0x00ce},
       
   218     {"yacute", 0x00fd},
       
   219     {"uacute", 0x00fa},
       
   220     {"there4", 0x2234},
       
   221     {"lrm", 0x200e},
       
   222     {"rlm", 0x200f},
       
   223     {"equiv", 0x2261},
       
   224     {"ograve", 0x00f2},
       
   225     {"theta", 0x03b8},
       
   226     {"Eacute", 0x00c9},
       
   227     {"hArr", 0x21d4},
       
   228     {"ocirc", 0x00f4},
       
   229     {"Iacute", 0x00cd},
       
   230     {"cap", 0x2229},
       
   231     {"Prime", 0x2033},
       
   232     {"piv", 0x03d6},
       
   233     {"ne", 0x2260},
       
   234     {"zwnj", 0x200c},
       
   235     {"oacute", 0x00f3},
       
   236     {"ni", 0x220b},
       
   237     {"chi", 0x03c7},
       
   238     {"Lambda", 0x039b},
       
   239     {"Psi", 0x03a8},
       
   240     {"lambda", 0x03bb},
       
   241     {"raquo", 0x00bb},
       
   242     {"and", 0x2227},
       
   243     {"laquo", 0x00ab},
       
   244     {"nabla", 0x2207},
       
   245     {"int", 0x222b},
       
   246     {"macr", 0x00af},
       
   247     {"rfloor", 0x230b},
       
   248     {"quot", 34},
       
   249     {"rdquo", 0x201d},
       
   250     {"lfloor", 0x230a},
       
   251     {"mu", 0x03bc},
       
   252     {"exist", 0x2203},
       
   253     {"ldquo", 0x201c},
       
   254     {"uml", 0x00a8},
       
   255     {"auml", 0x00e4},
       
   256     {"image", 0x2111},
       
   257     {"rho", 0x03c1},
       
   258     {"euml", 0x00eb},
       
   259     {"Sigma", 0x03a3},
       
   260     {"Rho", 0x03a1},
       
   261     {"iuml", 0x00ef},
       
   262     {"bdquo", 0x201e},
       
   263     {"prod", 0x220f},
       
   264     {"ntilde", 0x00f1},
       
   265     {"cup", 0x222a},
       
   266     {"frasl", 0x2044},
       
   267     {"ang", 0x2220},
       
   268     {"rang", 0x3009},
       
   269     {"Yuml", 0x0178},
       
   270     {"nu", 0x03bd},
       
   271     {"yen", 0x00a5},
       
   272     {"lang", 0x3008},
       
   273     {"aring", 0x00e5},
       
   274     {"sect", 0x00a7},
       
   275     {"szlig", 0x00df},
       
   276     {"sub", 0x2282},
       
   277     {"cent", 0x00a2},
       
   278     {"Omega", 0x03a9},
       
   279     {"sube", 0x2286},
       
   280     {"Auml", 0x00c4},
       
   281     {"Ouml", 0x00d6},
       
   282     {"ordm", 0x00ba},
       
   283     {"Uuml", 0x00dc},
       
   284     {"yuml", 0x00ff},
       
   285     {"uuml", 0x00fc},
       
   286     {"kappa", 0x03ba},
       
   287     {"perp", 0x22a5},
       
   288     {"Aring", 0x00c5},
       
   289     {"Kappa", 0x039a},
       
   290     {"not", 0x00ac},
       
   291     {"Euml", 0x00cb},
       
   292     {"oline", 0x203e},
       
   293     {"alpha", 0x03b1},
       
   294     {"lowast", 0x2217},
       
   295     {"phi", 0x03c6},
       
   296     {"Iuml", 0x00cf},
       
   297     {"curren", 0x00a4},
       
   298     {"sdot", 0x22c5},
       
   299     {"omega", 0x03c9},
       
   300     {"middot", 0x00b7},
       
   301     {"micro", 0x00b5},
       
   302     {"clubs", 0x2663},
       
   303     {"hellip", 0x2026},
       
   304     {"amp", 38},
       
   305     {"ouml", 0x00f6},
       
   306     {"copy", 0x00a9},
       
   307     {"prime", 0x2032},
       
   308     {"permil", 0x2030},
       
   309     {"Alpha", 0x0391},
       
   310     {"Scaron", 0x0160},
       
   311     {"psi", 0x03c8},
       
   312     {"iquest", 0x00bf},
       
   313     {"Gamma", 0x0393},
       
   314     {"hearts", 0x2665},
       
   315     {"prop", 0x221d},
       
   316     {"sim", 0x223c},
       
   317     {"fnof", 0x0192},
       
   318     {"cong", 0x2245},
       
   319     {"empty", 0x2205},
       
   320     {"diams", 0x2666},
       
   321     {"sup", 0x2283},
       
   322     {"times", 0x00d7},
       
   323     {"supe", 0x2287},
       
   324     {"shy", 0x00ad},
       
   325     {"supl", 0x00b9},
       
   326     {"gamma", 0x03b3},
       
   327     {"sup1", 0x00b9},
       
   328     {"sup3", 0x00b3},
       
   329     {"sup2", 0x00b2},
       
   330     {"rsquo", 0x2019},
       
   331     {"rsaquo", 0x203a},
       
   332     {"isin", 0x2208},
       
   333     {"percnt", 0x0025},
       
   334     {"lsquo", 0x2018},
       
   335     {"lsaquo", 0x2039},
       
   336     {"sbquo", 0x201a},
       
   337     {"sum", 0x2211},
       
   338     {"apos", 0x0027},
       
   339     {"sigma", 0x03c3},
       
   340     {"thorn", 0x00fe},
       
   341     {"infin", 0x221e},
       
   342     {"nsub", 0x2284},
       
   343     {"sigmaf", 0x03c2},
       
   344     {"alefsym", 0x2135},
       
   345     {"otimes", 0x2297},
       
   346     {"oplus", 0x2295},
       
   347     {"pound", 0x00a3},
       
   348     {"notin", 0x2209},
       
   349     {"emsp", 0x2003},
       
   350     {"scaron", 0x0161},
       
   351     {"mdash", 0x2014},
       
   352     {"ensp", 0x2002},
       
   353     {"spades", 0x2660},
       
   354     {"Omicron", 0x039f},
       
   355     {"nbsp", 0x00a0},
       
   356     {"upsih", 0x03d2},
       
   357     {"ndash", 0x2013},
       
   358     {"asymp", 0x2248},
       
   359     {"Oslash", 0x00d8},
       
   360     {"nsup", 0x2285},
       
   361     {"omicron", 0x03bf},
       
   362     {"thetasym", 0x03d1},
       
   363     {"minus", 0x2212},
       
   364     {"oslash", 0x00f8},
       
   365     {"epsilon", 0x03b5},
       
   366     {"Upsilon", 0x03a5},
       
   367     {"upsilon", 0x03c5},
       
   368     {"Epsilon", 0x0395},
       
   369     {"thinsp", 0x2009},
       
   370     {"plusmn", 0x00b1}
       
   371   };
       
   372 
       
   373 static const short lookup[] =
       
   374   {
       
   375       -1,   -1,   -1,   -1,    0,   -1,   -1,    1,
       
   376       -1,   -1,   -1,   -1,    2,    3,    4,   -1,
       
   377       -1,    5,   -1,    6,   -1,   -1,    7,   -1,
       
   378       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   379        8,   -1,    9,   -1,   -1,   10,   11,   12,
       
   380       -1,   -1,   13,   -1,   14,   -1,   -1,   -1,
       
   381       -1,   15,   16,   -1,   -1,   -1,   -1,   -1,
       
   382       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   383       -1,   -1,   -1,   -1,   -1,   17,   18,   -1,
       
   384       -1,   -1,   19,   -1,   -1,   -1,   -1,   -1,
       
   385       20,   -1,   -1,   -1,   21,   -1,   -1,   -1,
       
   386       22,   -1,   23,   -1,   -1,   -1,   -1,   24,
       
   387       25,   -1,   -1,   -1,   26,   27,   -1,   -1,
       
   388       28,   -1,   -1,   29,   30,   -1,   -1,   -1,
       
   389       31,   32,   33,   -1,   -1,   34,   -1,   -1,
       
   390       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   391       -1,   35,   36,   -1,   37,   38,   -1,   39,
       
   392       -1,   -1,   40,   -1,   41,   -1,   -1,   42,
       
   393       -1,   43,   -1,   -1,   44,   -1,   45,   -1,
       
   394       -1,   -1,   -1,   -1,   46,   -1,   -1,   -1,
       
   395       47,   48,   -1,   49,   50,   -1,   51,   -1,
       
   396       -1,   -1,   -1,   52,   53,   -1,   -1,   -1,
       
   397       -1,   -1,   -1,   54,   -1,   -1,   -1,   -1,
       
   398       55,   -1,   -1,   -1,   56,   -1,   -1,   57,
       
   399       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   400       -1,   58,   -1,   -1,   -1,   -1,   59,   -1,
       
   401       -1,   60,   61,   62,   -1,   -1,   -1,   63,
       
   402       64,   -1,   -1,   65,   -1,   66,   -1,   -1,
       
   403       -1,   67,   68,   -1,   -1,   -1,   -1,   -1,
       
   404       -1,   -1,   -1,   -1,   69,   -1,   -1,   -1,
       
   405       -1,   70,   -1,   -1,   -1,   71,   72,   -1,
       
   406       -1,   -1,   -1,   73,   -1,   -1,   -1,   -1,
       
   407       74,   -1,   -1,   -1,   -1,   75,   -1,   -1,
       
   408       -1,   -1,   76,   -1,   -1,   -1,   -1,   77,
       
   409       -1,   -1,   -1,   -1,   78,   -1,   -1,   -1,
       
   410       79,   80,   -1,   -1,   -1,   81,   -1,   -1,
       
   411       -1,   82,   -1,   83,   -1,   -1,   84,   -1,
       
   412       -1,   -1,   -1,   85,   -1,   86,   -1,   -1,
       
   413       -1,   87,   -1,   88,   -1,   89,   90,   91,
       
   414       -1,   -1,   -1,   -1,   92,   -1,   -1,   -1,
       
   415       93,   94,   -1,   95,   96,   -1,   97,   -1,
       
   416       -1,   -1,   98,   99,   -1,   -1,   -1,  100,
       
   417       -1,   -1,  101,   -1,  102,  103,   -1,  104,
       
   418      105,  106,  107,   -1,   -1,   -1,  108,  109,
       
   419       -1,   -1,   -1,   -1,  110,   -1,   -1,   -1,
       
   420       -1,  111,   -1, -627, -150,   -2,   -1,   -1,
       
   421       -1,   -1,  114,  115,   -1,   -1,   -1,  116,
       
   422      117,   -1,   -1,  118,  119,   -1,   -1,   -1,
       
   423       -1,   -1,  120,   -1,  121,   -1,  122,   -1,
       
   424       -1,   -1,   -1,   -1,   -1,   -1,  123,   -1,
       
   425       -1,   -1,   -1,   -1,   -1,   -1,   -1,  124,
       
   426       -1,   -1,   -1,   -1,   -1,   -1,  125,   -1,
       
   427      126,  127,  128,   -1,   -1,  129,   -1,  130,
       
   428       -1,   -1,  131,   -1,   -1,   -1,  132,   -1,
       
   429       -1,  133,   -1,   -1,   -1,   -1,   -1,   -1,
       
   430      134,   -1,   -1,   -1,   -1,  135,   -1,   -1,
       
   431      136,  137,   -1,  138,   -1,   -1,   -1,   -1,
       
   432       -1,   -1,   -1,  139,  140,  141,  142,   -1,
       
   433       -1,  143,   -1,   -1,   -1,   -1,  144,   -1,
       
   434       -1,  145,  146,  147,   -1,   -1,  148,  149,
       
   435      150,   -1,   -1,  151,   -1,   -1,   -1,   -1,
       
   436       -1,  152,  153,   -1,   -1,   -1,  154,   -1,
       
   437      155,   -1,  156,   -1,  157,   -1,   -1,  158,
       
   438      159,   -1,   -1,   -1,   -1,  160,   -1,   -1,
       
   439      161,  162,  163,   -1,   -1,   -1,   -1,   -1,
       
   440      164,   -1,   -1,   -1,  165,  166,   -1,   -1,
       
   441       -1,   -1,   -1,   -1,   -1,  167,  168,  169,
       
   442       -1,   -1,   -1,  170,   -1,   -1,   -1,   -1,
       
   443      171,   -1,   -1,   -1,   -1,  172,   -1,   -1,
       
   444       -1,   -1,  173,   -1,   -1,   -1,   -1,   -1,
       
   445       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   446       -1,   -1,   -1,   -1,   -1,   -1,  174,   -1,
       
   447       -1,   -1,   -1,  175,   -1,   -1,   -1,   -1,
       
   448      176,  177,   -1,   -1,   -1,  178,  179,   -1,
       
   449       -1,   -1,   -1,  180,   -1,   -1,   -1,   -1,
       
   450       -1,   -1,   -1,  181,  182,  183,   -1,   -1,
       
   451       -1,   -1,  184,  185,   -1,  186,  187,   -1,
       
   452      188,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   453      189,   -1,   -1,   -1,   -1,   -1,  190,  191,
       
   454       -1,   -1,   -1,  192,   -1,   -1,   -1,   -1,
       
   455      193,  194,   -1,  195,  196,   -1,   -1,   -1,
       
   456       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   457       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   458      197,  198,   -1,   -1,   -1,   -1,   -1,   -1,
       
   459       -1,   -1,   -1,   -1,  199,   -1,   -1,   -1,
       
   460      200,  201,   -1,   -1,   -1,   -1,   -1,   -1,
       
   461       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   462       -1,   -1,  202,   -1,   -1,  203,   -1,   -1,
       
   463       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   464       -1,   -1,   -1,  204,   -1,   -1,   -1,   -1,
       
   465       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   466       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   467      205,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   468       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   469       -1,   -1,  206,   -1,   -1,   -1,  207,   -1,
       
   470       -1,   -1,   -1,   -1,  208,   -1,   -1,   -1,
       
   471       -1,  209,   -1,   -1,   -1,   -1,   -1,   -1,
       
   472       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   473       -1,  210,   -1,   -1,   -1,   -1,  211,   -1,
       
   474       -1,  212,   -1,  213,   -1,   -1,   -1,  214,
       
   475       -1,   -1,   -1,  215,  216,  217,   -1,   -1,
       
   476       -1,  218,   -1,   -1,   -1,   -1,  219,   -1,
       
   477       -1,   -1,   -1,  220,  221,  222,   -1,   -1,
       
   478      223,   -1,  224,   -1,   -1,   -1,  225,  226,
       
   479       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   480       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   481       -1,   -1,  227,   -1,   -1,  228,  229,   -1,
       
   482       -1,   -1,   -1,   -1,  230,   -1,   -1,   -1,
       
   483       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   484       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   485       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   486       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   487       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   488       -1,   -1,   -1,   -1,   -1,   -1,  231,   -1,
       
   489       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   490       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   491       -1,   -1,  232,   -1,   -1,   -1,  233,   -1,
       
   492       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   493       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   494       -1,   -1,   -1,   -1,  234,   -1,   -1,   -1,
       
   495       -1,   -1,  235,   -1,   -1,   -1,  236,   -1,
       
   496       -1,   -1,   -1,   -1,   -1,   -1,   -1,  237,
       
   497       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   498       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   499       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   500       -1,   -1,   -1,   -1,   -1,  238,   -1,   -1,
       
   501       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   502       -1,   -1,   -1,   -1,  239,   -1,   -1,   -1,
       
   503       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   504       -1,   -1,   -1,   -1,   -1,   -1,   -1,  240,
       
   505       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   506       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   507       -1,   -1,   -1,   -1,   -1,  241,   -1,   -1,
       
   508       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   509       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   510      242,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   511       -1,  243,   -1,   -1,   -1,   -1,   -1,   -1,
       
   512       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   513       -1,   -1,   -1,   -1,   -1,   -1,   -1,  244,
       
   514      245,   -1,  246,  247,   -1,   -1,   -1,   -1,
       
   515       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   516       -1,   -1,  248,   -1,   -1,   -1,   -1,   -1,
       
   517       -1,   -1,   -1,   -1,  249,   -1,   -1,   -1,
       
   518       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   519       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   520       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   521       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   522      250,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   523       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   524       -1,   -1,  251,   -1,   -1,   -1,   -1,   -1,
       
   525       -1,   -1,   -1,   -1,   -1,   -1,   -1,  252,
       
   526       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   527       -1,   -1,   -1,   -1,   -1,   -1,   -1,  253,
       
   528       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   529       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   530       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   531       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   532       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   533       -1,   -1,   -1,   -1,   -1,   -1,  254,  255,
       
   534       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   535       -1,   -1,   -1,   -1,   -1,   -1,   -1,  256,
       
   536       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   537       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   538       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   539       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   540       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   541       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   542       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   543       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   544       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   545       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   546       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   547       -1,   -1,   -1,   -1,   -1,   -1,  257,   -1,
       
   548       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   549      258,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   550       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   551       -1,   -1,   -1,   -1,  259,   -1,   -1,   -1,
       
   552       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   553       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   554       -1,   -1,   -1,   -1,  260,   -1,   -1,   -1,
       
   555       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   556       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   557       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   558       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   559       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   560       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   561       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   562       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   563       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   564       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   565       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   566       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   567       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   568       -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
       
   569       -1,   -1,   -1,   -1,  261
       
   570   };
       
   571 
       
   572 #ifdef __GNUC__
       
   573 __inline
       
   574 #endif
       
   575 const struct Entity *
       
   576 findEntity (register const char *str, register unsigned int len)
       
   577 {
       
   578   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
       
   579     {
       
   580       register int key = hash (str, len);
       
   581 
       
   582       if (key <= MAX_HASH_VALUE && key >= 0)
       
   583         {
       
   584           register int index = lookup[key];
       
   585 
       
   586           if (index >= 0)
       
   587             {
       
   588               register const char *s = wordlist[index].name;
       
   589 
       
   590               if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0')
       
   591                 return &wordlist[index];
       
   592             }
       
   593           else if (index < -TOTAL_KEYWORDS)
       
   594             {
       
   595               register int offset = - 1 - TOTAL_KEYWORDS - index;
       
   596               register const struct Entity *wordptr = &wordlist[TOTAL_KEYWORDS + lookup[offset]];
       
   597               register const struct Entity *wordendptr = wordptr + -lookup[offset + 1];
       
   598 
       
   599               while (wordptr < wordendptr)
       
   600                 {
       
   601                   register const char *s = wordptr->name;
       
   602 
       
   603                   if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0')
       
   604                     return wordptr;
       
   605                   wordptr++;
       
   606                 }
       
   607             }
       
   608         }
       
   609     }
       
   610   return 0;
       
   611 }