e1ca624cc119ae9acdb7bc384988939226065b49
[WebKit-https.git] / WebCore / khtml / css / cssvalues.c
1 /* ANSI-C code produced by gperf version 2.7.2 */
2 /* Command-line: gperf -L ANSI-C -E -C -n -o -t -k '*' -NfindValue -Hhash_val -Wwordlist_value -D cssvalues.gperf  */
3 /* This file is automatically generated from cssvalues.in by makevalues, do not edit */
4 /* Copyright 1999 W. Bastian */
5 #include "cssvalues.h"
6 struct css_value {
7     const char *name;
8     int id;
9 };
10 /* maximum key range = 3788, duplicates = 1 */
11
12 #ifdef __GNUC__
13 __inline
14 #else
15 #ifdef __cplusplus
16 inline
17 #endif
18 #endif
19 static unsigned int
20 hash_val (register const char *str, register unsigned int len)
21 {
22   static const unsigned short asso_values[] =
23     {
24       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
25       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
26       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
27       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
28       3788, 3788, 3788, 3788, 3788,   15, 3788, 3788,    0,    5,
29         10,   15,   20,   25,   35,   40,   45,    0, 3788, 3788,
30       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
31       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
32       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
33       3788, 3788, 3788, 3788, 3788, 3788, 3788,    0,   28,    3,
34        400,  300,   20,  450,  438,   35,    0,  265,    0,   13,
35         55,    5,    8,   50,   65,   10,    0,  465,  303,  131,
36        403,   45,    5, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
37       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
38       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
39       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
40       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
41       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
42       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
43       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
44       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
45       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
46       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
47       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
48       3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788, 3788,
49       3788, 3788, 3788, 3788, 3788, 3788
50     };
51   register int hval = 0;
52
53   switch (len)
54     {
55       default:
56       case 22:
57         hval += asso_values[(unsigned char)str[21]];
58       case 21:
59         hval += asso_values[(unsigned char)str[20]];
60       case 20:
61         hval += asso_values[(unsigned char)str[19]];
62       case 19:
63         hval += asso_values[(unsigned char)str[18]];
64       case 18:
65         hval += asso_values[(unsigned char)str[17]];
66       case 17:
67         hval += asso_values[(unsigned char)str[16]];
68       case 16:
69         hval += asso_values[(unsigned char)str[15]];
70       case 15:
71         hval += asso_values[(unsigned char)str[14]];
72       case 14:
73         hval += asso_values[(unsigned char)str[13]];
74       case 13:
75         hval += asso_values[(unsigned char)str[12]];
76       case 12:
77         hval += asso_values[(unsigned char)str[11]];
78       case 11:
79         hval += asso_values[(unsigned char)str[10]];
80       case 10:
81         hval += asso_values[(unsigned char)str[9]];
82       case 9:
83         hval += asso_values[(unsigned char)str[8]];
84       case 8:
85         hval += asso_values[(unsigned char)str[7]];
86       case 7:
87         hval += asso_values[(unsigned char)str[6]];
88       case 6:
89         hval += asso_values[(unsigned char)str[5]];
90       case 5:
91         hval += asso_values[(unsigned char)str[4]];
92       case 4:
93         hval += asso_values[(unsigned char)str[3]];
94       case 3:
95         hval += asso_values[(unsigned char)str[2]];
96       case 2:
97         hval += asso_values[(unsigned char)str[1]];
98       case 1:
99         hval += asso_values[(unsigned char)str[0]];
100         break;
101     }
102   return hval;
103 }
104
105 #ifdef __GNUC__
106 __inline
107 #endif
108 const struct css_value *
109 findValue (register const char *str, register unsigned int len)
110 {
111   enum
112     {
113       TOTAL_KEYWORDS = 269,
114       MIN_WORD_LENGTH = 2,
115       MAX_WORD_LENGTH = 22,
116       MIN_HASH_VALUE = 0,
117       MAX_HASH_VALUE = 3787
118     };
119
120   static const struct css_value wordlist_value[] =
121     {
122       {"900", CSS_VAL_900},
123       {"100", CSS_VAL_100},
124       {"200", CSS_VAL_200},
125       {"top", CSS_VAL_TOP},
126       {"300", CSS_VAL_300},
127       {"400", CSS_VAL_400},
128       {"small", CSS_VAL_SMALL},
129       {"500", CSS_VAL_500},
130       {"fast", CSS_VAL_FAST},
131       {"compact", CSS_VAL_COMPACT},
132       {"600", CSS_VAL_600},
133       {"700", CSS_VAL_700},
134       {"800", CSS_VAL_800},
135       {"clip", CSS_VAL_CLIP},
136       {"static", CSS_VAL_STATIC},
137       {"bottom", CSS_VAL_BOTTOM},
138       {"small-caps", CSS_VAL_SMALL_CAPS},
139       {"ltr", CSS_VAL_LTR},
140       {"rtl", CSS_VAL_RTL},
141       {"italic", CSS_VAL_ITALIC},
142       {"start", CSS_VAL_START},
143       {"crop", CSS_VAL_CROP},
144       {"scroll", CSS_VAL_SCROLL},
145       {"cross", CSS_VAL_CROSS},
146       {"icon", CSS_VAL_ICON},
147       {"caption", CSS_VAL_CAPTION},
148       {"fantasy", CSS_VAL_FANTASY},
149       {"normal", CSS_VAL_NORMAL},
150       {"maroon", CSS_VAL_MAROON},
151       {"small-caption", CSS_VAL_SMALL_CAPTION},
152       {"slow", CSS_VAL_SLOW},
153       {"initial", CSS_VAL_INITIAL},
154       {"wait", CSS_VAL_WAIT},
155       {"scrollbar", CSS_VAL_SCROLLBAR},
156       {"portrait", CSS_VAL_PORTRAIT},
157       {"always", CSS_VAL_ALWAYS},
158       {"nowrap", CSS_VAL_NOWRAP},
159       {"intrinsic", CSS_VAL_INTRINSIC},
160       {"black", CSS_VAL_BLACK},
161       {"teal", CSS_VAL_TEAL},
162       {"block", CSS_VAL_BLOCK},
163       {"left", CSS_VAL_LEFT},
164       {"collapse", CSS_VAL_COLLAPSE},
165       {"table", CSS_VAL_TABLE},
166       {"lime", CSS_VAL_LIME},
167       {"pre", CSS_VAL_PRE},
168       {"blink", CSS_VAL_BLINK},
169       {"capitalize", CSS_VAL_CAPITALIZE},
170       {"smaller", CSS_VAL_SMALLER},
171       {"ellipsis", CSS_VAL_ELLIPSIS},
172       {"monospace", CSS_VAL_MONOSPACE},
173       {"inset", CSS_VAL_INSET},
174       {"navy", CSS_VAL_NAVY},
175       {"circle", CSS_VAL_CIRCLE},
176       {"list-item", CSS_VAL_LIST_ITEM},
177       {"min-intrinsic", CSS_VAL_MIN_INTRINSIC},
178       {"none", CSS_VAL_NONE},
179       {"serif", CSS_VAL_SERIF},
180       {"bold", CSS_VAL_BOLD},
181       {"x-small", CSS_VAL_X_SMALL},
182       {"disc", CSS_VAL_DISC},
183       {"table-caption", CSS_VAL_TABLE_CAPTION},
184       {"solid", CSS_VAL_SOLID},
185       {"mix", CSS_VAL_MIX},
186       {"below", CSS_VAL_BELOW},
187       {"pointer", CSS_VAL_POINTER},
188       {"auto", CSS_VAL_AUTO},
189       {"both", CSS_VAL_BOTH},
190       {"up", CSS_VAL_UP},
191       {"inline", CSS_VAL_INLINE},
192       {"yellow", CSS_VAL_YELLOW},
193       {"lower", CSS_VAL_LOWER},
194       {"sub", CSS_VAL_SUB},
195       {"aqua", CSS_VAL_AQUA},
196       {"sans-serif", CSS_VAL_SANS_SERIF},
197       {"armenian", CSS_VAL_ARMENIAN},
198       {"thin", CSS_VAL_THIN},
199       {"infinite", CSS_VAL_INFINITE},
200       {"table-row", CSS_VAL_TABLE_ROW},
201       {"transparent", CSS_VAL_TRANSPARENT},
202       {"gray", CSS_VAL_GRAY},
203       {"justify", CSS_VAL_JUSTIFY},
204       {"show", CSS_VAL_SHOW},
205       {"katakana", CSS_VAL_KATAKANA},
206       {"down", CSS_VAL_DOWN},
207       {"status-bar", CSS_VAL_STATUS_BAR},
208       {"lower-latin", CSS_VAL_LOWER_LATIN},
209       {"horizontal", CSS_VAL_HORIZONTAL},
210       {"move", CSS_VAL_MOVE},
211       {"crosshair", CSS_VAL_CROSSHAIR},
212       {"above", CSS_VAL_ABOVE},
213       {"olive", CSS_VAL_OLIVE},
214       {"table-cell", CSS_VAL_TABLE_CELL},
215       {"lower-roman", CSS_VAL_LOWER_ROMAN},
216       {"repeat", CSS_VAL_REPEAT},
217       {"separate", CSS_VAL_SEPARATE},
218       {"narrower", CSS_VAL_NARROWER},
219       {"run-in", CSS_VAL_RUN_IN},
220       {"forwards", CSS_VAL_FORWARDS},
221       {"text", CSS_VAL_TEXT},
222       {"vertical", CSS_VAL_VERTICAL},
223       {"visible", CSS_VAL_VISIBLE},
224       {"silver", CSS_VAL_SILVER},
225       {"overlay", CSS_VAL_OVERLAY},
226       {"alternate", CSS_VAL_ALTERNATE},
227       {"center", CSS_VAL_CENTER},
228       {"baseline", CSS_VAL_BASELINE},
229       {"text-top", CSS_VAL_TEXT_TOP},
230       {"repeat-y", CSS_VAL_REPEAT_Y},
231       {"wave", CSS_VAL_WAVE},
232       {"s-resize", CSS_VAL_S_RESIZE},
233       {"thick", CSS_VAL_THICK},
234       {"avoid", CSS_VAL_AVOID},
235       {"slide", CSS_VAL_SLIDE},
236       {"help", CSS_VAL_HELP},
237       {"activecaption", CSS_VAL_ACTIVECAPTION},
238       {"no-repeat", CSS_VAL_NO_REPEAT},
239       {"decimal", CSS_VAL_DECIMAL},
240       {"end", CSS_VAL_END},
241       {"window", CSS_VAL_WINDOW},
242       {"invert", CSS_VAL_INVERT},
243       {"block-axis", CSS_VAL_BLOCK_AXIS},
244       {"red", CSS_VAL_RED},
245       {"text-bottom", CSS_VAL_TEXT_BOTTOM},
246       {"landscape", CSS_VAL_LANDSCAPE},
247       {"outset", CSS_VAL_OUTSET},
248       {"n-resize", CSS_VAL_N_RESIZE},
249       {"blue", CSS_VAL_BLUE},
250       {"inline-block", CSS_VAL_INLINE_BLOCK},
251       {"bolder", CSS_VAL_BOLDER},
252       {"appworkspace", CSS_VAL_APPWORKSPACE},
253       {"absolute", CSS_VAL_ABSOLUTE},
254       {"captiontext", CSS_VAL_CAPTIONTEXT},
255       {"lowercase", CSS_VAL_LOWERCASE},
256       {"large", CSS_VAL_LARGE},
257       {"stretch", CSS_VAL_STRETCH},
258       {"infotext", CSS_VAL_INFOTEXT},
259       {"multiple", CSS_VAL_MULTIPLE},
260       {"inline-table", CSS_VAL_INLINE_TABLE},
261       {"menu", CSS_VAL_MENU},
262       {"inside", CSS_VAL_INSIDE},
263       {"inactivecaption", CSS_VAL_INACTIVECAPTION},
264       {"xx-small", CSS_VAL_XX_SMALL},
265       {"purple", CSS_VAL_PURPLE},
266       {"super", CSS_VAL_SUPER},
267       {"single", CSS_VAL_SINGLE},
268       {"grey", CSS_VAL_GREY},
269       {"w-resize", CSS_VAL_W_RESIZE},
270       {"loud", CSS_VAL_LOUD},
271       {"sw-resize", CSS_VAL_SW_RESIZE},
272       {"orange", CSS_VAL_ORANGE},
273       {"buttonface", CSS_VAL_BUTTONFACE},
274       {"larger", CSS_VAL_LARGER},
275       {"oblique", CSS_VAL_OBLIQUE},
276       {"table-column", CSS_VAL_TABLE_COLUMN},
277       {"read-only", CSS_VAL_READ_ONLY},
278       {"square", CSS_VAL_SQUARE},
279       {"hand", CSS_VAL_HAND},
280       {"backwards", CSS_VAL_BACKWARDS},
281       {"level", CSS_VAL_LEVEL},
282       {"white", CSS_VAL_WHITE},
283       {"discard", CSS_VAL_DISCARD},
284       {"nw-resize", CSS_VAL_NW_RESIZE},
285       {"inherit", CSS_VAL_INHERIT},
286       {"wider", CSS_VAL_WIDER},
287       {"inline-axis", CSS_VAL_INLINE_AXIS},
288       {"upper-latin", CSS_VAL_UPPER_LATIN},
289       {"lower-alpha", CSS_VAL_LOWER_ALPHA},
290       {"element", CSS_VAL_ELEMENT},
291       {"fuchsia", CSS_VAL_FUCHSIA},
292       {"right", CSS_VAL_RIGHT},
293       {"upper-roman", CSS_VAL_UPPER_ROMAN},
294       {"relative", CSS_VAL_RELATIVE},
295       {"-khtml-nowrap", CSS_VAL__KHTML_NOWRAP},
296       {"e-resize", CSS_VAL_E_RESIZE},
297       {"se-resize", CSS_VAL_SE_RESIZE},
298       {"embed", CSS_VAL_EMBED},
299       {"hiragana", CSS_VAL_HIRAGANA},
300       {"overline", CSS_VAL_OVERLINE},
301       {"-khtml-left", CSS_VAL__KHTML_LEFT},
302       {"unfurl", CSS_VAL_UNFURL},
303       {"ne-resize", CSS_VAL_NE_RESIZE},
304       {"repeat-x", CSS_VAL_REPEAT_X},
305       {"continuous", CSS_VAL_CONTINUOUS},
306       {"-khtml-link", CSS_VAL__KHTML_LINK},
307       {"dotted", CSS_VAL_DOTTED},
308       {"groove", CSS_VAL_GROOVE},
309       {"ahead", CSS_VAL_AHEAD},
310       {"katakana-iroha", CSS_VAL_KATAKANA_IROHA},
311       {"middle", CSS_VAL_MIDDLE},
312       {"close-quote", CSS_VAL_CLOSE_QUOTE},
313       {"windowframe", CSS_VAL_WINDOWFRAME},
314       {"fixed", CSS_VAL_FIXED},
315       {"uppercase", CSS_VAL_UPPERCASE},
316       {"green", CSS_VAL_GREEN},
317       {"hide", CSS_VAL_HIDE},
318       {"cursive", CSS_VAL_CURSIVE},
319       {"-khtml-box", CSS_VAL__KHTML_BOX},
320       {"default", CSS_VAL_DEFAULT},
321       {"marquee", CSS_VAL_MARQUEE},
322       {"double", CSS_VAL_DOUBLE},
323       {"open-quote", CSS_VAL_OPEN_QUOTE},
324       {"outside", CSS_VAL_OUTSIDE},
325       {"-khtml-auto", CSS_VAL__KHTML_AUTO},
326       {"-khtml-body", CSS_VAL__KHTML_BODY},
327       {"medium", CSS_VAL_MEDIUM},
328       {"no-close-quote", CSS_VAL_NO_CLOSE_QUOTE},
329       {"x-large", CSS_VAL_X_LARGE},
330       {"ridge", CSS_VAL_RIDGE},
331       {"buttontext", CSS_VAL_BUTTONTEXT},
332       {"hebrew", CSS_VAL_HEBREW},
333       {"graytext", CSS_VAL_GRAYTEXT},
334       {"dot-dash", CSS_VAL_DOT_DASH},
335       {"break-word", CSS_VAL_BREAK_WORD},
336       {"no-open-quote", CSS_VAL_NO_OPEN_QUOTE},
337       {"lighter", CSS_VAL_LIGHTER},
338       {"upper-alpha", CSS_VAL_UPPER_ALPHA},
339       {"read-write", CSS_VAL_READ_WRITE},
340       {"reverse", CSS_VAL_REVERSE},
341       {"georgian", CSS_VAL_GEORGIAN},
342       {"-khtml-text", CSS_VAL__KHTML_TEXT},
343       {"windowtext", CSS_VAL_WINDOWTEXT},
344       {"-khtml-center", CSS_VAL__KHTML_CENTER},
345       {"activeborder", CSS_VAL_ACTIVEBORDER},
346       {"condensed", CSS_VAL_CONDENSED},
347       {"message-box", CSS_VAL_MESSAGE_BOX},
348       {"menutext", CSS_VAL_MENUTEXT},
349       {"buttonshadow", CSS_VAL_BUTTONSHADOW},
350       {"inactivecaptiontext", CSS_VAL_INACTIVECAPTIONTEXT},
351       {"dashed", CSS_VAL_DASHED},
352       {"table-row-group", CSS_VAL_TABLE_ROW_GROUP},
353       {"skip-white-space", CSS_VAL_SKIP_WHITE_SPACE},
354       {"inactiveborder", CSS_VAL_INACTIVEBORDER},
355       {"hiragana-iroha", CSS_VAL_HIRAGANA_IROHA},
356       {"hidden", CSS_VAL_HIDDEN},
357       {"xx-large", CSS_VAL_XX_LARGE},
358       {"underline", CSS_VAL_UNDERLINE},
359       {"-khtml-inline-box", CSS_VAL__KHTML_INLINE_BOX},
360       {"dot-dot-dash", CSS_VAL_DOT_DOT_DASH},
361       {"higher", CSS_VAL_HIGHER},
362       {"-khtml-right", CSS_VAL__KHTML_RIGHT},
363       {"background", CSS_VAL_BACKGROUND},
364       {"-khtml-activelink", CSS_VAL__KHTML_ACTIVELINK},
365       {"table-footer-group", CSS_VAL_TABLE_FOOTER_GROUP},
366       {"threedface", CSS_VAL_THREEDFACE},
367       {"infobackground", CSS_VAL_INFOBACKGROUND},
368       {"expanded", CSS_VAL_EXPANDED},
369       {"table-column-group", CSS_VAL_TABLE_COLUMN_GROUP},
370       {"lower-greek", CSS_VAL_LOWER_GREEK},
371       {"semi-condensed", CSS_VAL_SEMI_CONDENSED},
372       {"bidi-override", CSS_VAL_BIDI_OVERRIDE},
373       {"cjk-ideographic", CSS_VAL_CJK_IDEOGRAPHIC},
374       {"ultra-condensed", CSS_VAL_ULTRA_CONDENSED},
375       {"semi-expanded", CSS_VAL_SEMI_EXPANDED},
376       {"line-through", CSS_VAL_LINE_THROUGH},
377       {"highlight", CSS_VAL_HIGHLIGHT},
378       {"extra-condensed", CSS_VAL_EXTRA_CONDENSED},
379       {"decimal-leading-zero", CSS_VAL_DECIMAL_LEADING_ZERO},
380       {"ultra-expanded", CSS_VAL_ULTRA_EXPANDED},
381       {"threedshadow", CSS_VAL_THREEDSHADOW},
382       {"-khtml-baseline-middle", CSS_VAL__KHTML_BASELINE_MIDDLE},
383       {"extra-expanded", CSS_VAL_EXTRA_EXPANDED},
384       {"-khtml-xxx-large", CSS_VAL__KHTML_XXX_LARGE},
385       {"buttonhighlight", CSS_VAL_BUTTONHIGHLIGHT},
386       {"table-header-group", CSS_VAL_TABLE_HEADER_GROUP},
387       {"highlighttext", CSS_VAL_HIGHLIGHTTEXT},
388       {"threeddarkshadow", CSS_VAL_THREEDDARKSHADOW},
389       {"threedlightshadow", CSS_VAL_THREEDLIGHTSHADOW},
390       {"threedhighlight", CSS_VAL_THREEDHIGHLIGHT}
391     };
392
393   static const short lookup[] =
394     {
395          0,   -1,   -1,   -1,   -1,    1,   -1,   -1,
396         -1,   -1,    2,   -1,   -1,    3,   -1,    4,
397         -1,   -1,   -1,   -1,    5,   -1,   -1,    6,
398         -1,    7,   -1,   -1,   -1,   -1,    8,   -1,
399          9,   -1,   -1,   10,   -1,   -1,   -1,   -1,
400         11,   -1,   -1,   -1,   -1,   12,   13,   -1,
401         14,   -1,   -1,   15,   -1,   -1,   -1,   -1,
402         -1,   -1,   -1,   16,   -1,   -1,   -1,   -1,
403         -1, -336, -252,   -2,   -1,   -1,   -1,   -1,
404         -1,   19,   -1,   20,   -1,   -1,   -1,   -1,
405         -1,   21,   -1,   22,   -1,   -1,   -1,   -1,
406         -1,   -1,   -1,   -1,   -1,   23,   -1,   -1,
407         -1,   -1,   24,   -1,   -1,   -1,   -1,   -1,
408         -1,   -1,   25,   -1,   -1,   -1,   -1,   -1,
409         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
410         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
411         -1,   -1,   26,   -1,   -1,   -1,   -1,   -1,
412         -1,   -1,   27,   -1,   -1,   -1,   -1,   28,
413         29,   -1,   30,   -1,   -1,   -1,   -1,   -1,
414         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
415         31,   -1,   -1,   -1,   -1,   -1,   32,   -1,
416         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
417         33,   -1,   34,   -1,   -1,   -1,   -1,   -1,
418         -1,   -1,   35,   -1,   -1,   -1,   -1,   -1,
419         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
420         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
421         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
422         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
423         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
424         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
425         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
426         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
427         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
428         36,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
429         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
430         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
431         -1,   -1,   -1,   -1,   -1,   37,   -1,   -1,
432         38,   -1,   -1,   -1,   39,   40,   -1,   -1,
433         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
434         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
435         41,   -1,   -1,   -1,   -1,   -1,   42,   -1,
436         43,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
437         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
438         -1,   -1,   -1,   -1,   44,   -1,   -1,   -1,
439         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
440         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
441         -1,   -1,   -1,   -1,   -1,   45,   -1,   -1,
442         -1,   -1,   -1,   -1,   -1,   -1,   -1,   46,
443         -1,   -1,   47,   -1,   48,   -1,   -1,   -1,
444         -1,   -1,   -1,   -1,   -1,   -1,   49,   50,
445         51,   -1,   -1,   52,   -1,   -1,   53,   -1,
446         54,   -1,   -1,   55,   -1,   -1,   -1,   56,
447         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
448         -1,   -1,   -1,   -1,   -1,   -1,   57,   -1,
449         -1,   58,   -1,   -1,   -1,   -1,   -1,   -1,
450         -1,   59,   -1,   -1,   -1,   -1,   -1,   -1,
451         60,   61,   62,   63,   -1,   -1,   -1,   -1,
452         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
453         64,   -1,   -1,   -1,   65,   -1,   66,   67,
454         -1,   68,   -1,   -1,   -1,   -1,   -1,   -1,
455         69,   70,   -1,   -1,   -1,   -1,   -1,   -1,
456         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
457         -1,   -1,   -1,   -1,   -1,   71,   -1,   72,
458         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
459         -1,   -1,   -1,   73,   -1,   -1,   -1,   -1,
460         74,   -1,   -1,   75,   -1,   -1,   -1,   -1,
461         76,   -1,   -1,   -1,   -1,   -1,   -1,   77,
462         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
463         78,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
464         -1,   -1,   -1,   -1,   -1,   -1,   79,   -1,
465         80,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
466         -1,   -1,   -1,   -1,   -1,   -1,   -1,   81,
467         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
468         82,   83,   -1,   -1,   -1,   -1,   -1,   84,
469         -1,   85,   -1,   -1,   -1,   -1,   -1,   -1,
470         -1,   -1,   -1,   -1,   -1,   -1,   86,   -1,
471         87,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
472         -1,   -1,   -1,   -1,   -1,   88,   -1,   -1,
473         -1,   -1,   -1,   -1,   -1,   -1,   -1,   89,
474         -1,   -1,   -1,   -1,   90,   -1,   -1,   -1,
475         -1,   -1,   -1,   91,   -1,   -1,   92,   -1,
476         -1,   -1,   -1,   -1,   -1,   -1,   93,   -1,
477         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
478         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
479         -1,   94,   -1,   -1,   -1,   -1,   -1,   -1,
480         -1,   -1,   -1,   95,   -1,   -1,   96,   -1,
481         -1,   -1,   97,   -1,   -1,   -1,   -1,   -1,
482         98,   -1,   -1,   -1,   -1,   -1,   -1,   99,
483         -1,   -1,  100,   -1,   -1,   -1,   -1,  101,
484         -1,  102,   -1,   -1,   -1,   -1,  103,   -1,
485        104,   -1,   -1,  105,   -1,   -1,   -1,   -1,
486        106,   -1,   -1,  107,   -1,  108,  109,   -1,
487         -1,   -1,   -1,   -1,  110,  111,   -1,  112,
488         -1,  113,  114,  115,  116,   -1,   -1,  117,
489         -1,   -1,   -1,  118,   -1,  119,  120,   -1,
490         -1,   -1,   -1,   -1,  121,  122,   -1,   -1,
491         -1,  123,   -1,   -1,   -1,   -1,   -1,   -1,
492        124,   -1,   -1,   -1,  125,   -1,   -1,   -1,
493         -1,  126,   -1,   -1,   -1,   -1,   -1,   -1,
494         -1,  127,   -1,   -1,  128,   -1,  129,   -1,
495         -1,   -1,   -1,  130,   -1,   -1,   -1,   -1,
496        131,  132,   -1,   -1,   -1,   -1,  133,  134,
497        135,   -1,  136,   -1,   -1,  137,   -1,  138,
498         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
499         -1,  139,   -1,  140,   -1,  141,   -1,   -1,
500         -1,   -1,   -1,   -1,  142,   -1,  143,   -1,
501        144,   -1,  145,   -1,   -1,   -1,   -1,   -1,
502         -1,   -1,   -1,   -1,  146,  147,   -1,   -1,
503         -1,   -1,   -1,   -1,   -1,   -1,  148,  149,
504         -1,   -1,   -1,  150,  151,   -1,   -1,   -1,
505        152,   -1,   -1,  153,  154,  155,   -1,   -1,
506         -1,   -1,  156,   -1,   -1,  157,   -1,   -1,
507         -1,   -1,   -1,   -1,   -1,   -1,  158,  159,
508        160,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
509         -1,  161,   -1,   -1,  162,   -1,   -1,   -1,
510         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
511        163,   -1,   -1,  164,   -1,   -1,   -1,   -1,
512         -1,   -1,   -1,   -1,   -1,   -1,   -1,  165,
513         -1,   -1,   -1,   -1,   -1,   -1,   -1,  166,
514         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
515         -1,   -1,  167,   -1,   -1,   -1,   -1,   -1,
516        168,   -1,   -1,  169,   -1,   -1,   -1,   -1,
517         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
518         -1,   -1,   -1,   -1,  170,   -1,   -1,   -1,
519         -1,   -1,   -1,   -1,   -1,   -1,   -1,  171,
520         -1,   -1,   -1,  172,   -1,   -1,   -1,   -1,
521         -1,   -1,  173,   -1,   -1,   -1,   -1,   -1,
522         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
523         -1,   -1,   -1,   -1,   -1,   -1,  174,   -1,
524         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
525        175,  176,   -1,  177,   -1,   -1,   -1,   -1,
526         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
527         -1,   -1,   -1,   -1,   -1,   -1,   -1,  178,
528         -1,   -1,  179,   -1,   -1,   -1,  180,   -1,
529         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
530         -1,   -1,   -1,   -1,   -1,  181,   -1,   -1,
531         -1,   -1,   -1,  182,   -1,   -1,   -1,   -1,
532         -1,   -1,  183,   -1,   -1,  184,   -1,   -1,
533         -1,  185,   -1,   -1,   -1,   -1,   -1,   -1,
534         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
535         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
536        186,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
537         -1,   -1,  187,   -1,   -1,   -1,   -1,  188,
538         -1,   -1,   -1,   -1,  189,   -1,   -1,   -1,
539         -1,  190,   -1,  191,   -1,   -1,  192,  193,
540         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
541         -1,   -1,  194,   -1,   -1,  195,   -1,   -1,
542         -1,   -1,   -1,   -1,   -1,  196,  197,   -1,
543         -1,  198,   -1,   -1,   -1,   -1,   -1,   -1,
544         -1,  199,   -1,   -1,   -1,   -1,  200,   -1,
545         -1,   -1,   -1,  201,   -1,   -1,   -1,   -1,
546         -1,   -1,   -1,   -1,   -1,   -1,   -1,  202,
547        203,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
548        204,   -1,  205,   -1,  206,   -1,   -1,   -1,
549         -1,  207,   -1,   -1,   -1,   -1,   -1,   -1,
550         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
551         -1,   -1,  208,   -1,   -1,   -1,   -1,   -1,
552        209,   -1,   -1,   -1,   -1,   -1,  210,  211,
553         -1,   -1,   -1,   -1,  212,   -1,   -1,   -1,
554         -1,   -1,  213,   -1,   -1,   -1,  214,   -1,
555         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
556        215,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
557         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
558         -1,   -1,   -1,  216,   -1,   -1,   -1,  217,
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,  218,
563         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
564         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
565        219,   -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,   -1,   -1,   -1,   -1,
570         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
571         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
572         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
573         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
574         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
575         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
576         -1,  220,   -1,   -1,   -1,   -1,   -1,   -1,
577         -1,   -1,   -1,   -1,  221,   -1,   -1,   -1,
578         -1,   -1,   -1,   -1,   -1,  222,   -1,   -1,
579         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
580         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
581         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
582         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
583        223,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
584         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
585         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
586        224,   -1,   -1,   -1,   -1,   -1,  225,   -1,
587        226,  227,   -1,   -1,  228,   -1,   -1,   -1,
588         -1,   -1,   -1,   -1,  229,   -1,   -1,   -1,
589        230,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
590         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
591         -1,   -1,   -1,   -1,   -1,  231,   -1,   -1,
592         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
593         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
594         -1,   -1,  232,   -1,   -1,   -1,   -1,   -1,
595         -1,  233,   -1,   -1,   -1,   -1,   -1,   -1,
596         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
597         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
598         -1,   -1,   -1,   -1,  234,   -1,   -1,   -1,
599         -1,   -1,   -1,   -1,  235,   -1,   -1,   -1,
600         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
601         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
602         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
603         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
604         -1,   -1,   -1,  236,   -1,  237,   -1,   -1,
605         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
606        238,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
607         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
608         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
609         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
610         -1,   -1,   -1,   -1,   -1,   -1,  239,   -1,
611         -1,   -1,   -1,   -1,   -1,   -1,  240,   -1,
612        241,   -1,   -1,   -1,   -1,   -1,  242,   -1,
613         -1,   -1,  243,   -1,   -1,   -1,   -1,   -1,
614         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
615         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
616         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
617         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
618         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
619         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
620         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
621         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
622         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
623         -1,   -1,  244,   -1,   -1,   -1,   -1,   -1,
624         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
625         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
626         -1,   -1,   -1,  245,   -1,   -1,   -1,   -1,
627         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
628         -1,   -1,  246,   -1,   -1,   -1,   -1,   -1,
629         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
630         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
631         -1,   -1,   -1,   -1,  247,   -1,   -1,   -1,
632        248,   -1,   -1,   -1,   -1,  249,   -1,   -1,
633         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
634         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
635         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
636         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
637         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
638         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
639         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
640         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
641         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
642         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
643         -1,   -1,  250,   -1,   -1,   -1,   -1,   -1,
644         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
645         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
646         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
647         -1,   -1,   -1,   -1,   -1,   -1,  251,   -1,
648         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
649         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
650         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
651         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
652         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
653         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
654         -1,  252,   -1,   -1,   -1,   -1,   -1,   -1,
655         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
656         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
657         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
658         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
659         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
660         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
661         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
662         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
663         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
664         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
665         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
666         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
667         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
668         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
669         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
670         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
671         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
672         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
673         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
674         -1,   -1,   -1,   -1,   -1,   -1,   -1,  253,
675         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
676         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
677         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
678         -1,   -1,  254,   -1,   -1,   -1,   -1,   -1,
679         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
680         -1,   -1,   -1,   -1,  255,   -1,   -1,   -1,
681         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
682         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
683         -1,   -1,   -1,   -1,   -1,   -1,   -1,  256,
684         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
685         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
686         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
687         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
688         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
689         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
690         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
691         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
692         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
693         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
694         -1,   -1,   -1,   -1,  257,   -1,   -1,   -1,
695         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
696         -1,   -1,   -1,  258,   -1,   -1,   -1,   -1,
697         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
698         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
699         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
700         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
701         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
702         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
703         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
704         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
705         -1,   -1,   -1,   -1,   -1,   -1,   -1,  259,
706         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
707         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
708         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
709         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
710         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
711         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
712         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
713         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
714         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
715         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
716         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
717         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
718         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
719         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
720         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
721         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
722         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
723         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
724         -1,   -1,   -1,   -1,   -1,  260,   -1,   -1,
725         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
726         -1,  261,   -1,   -1,   -1,   -1,   -1,   -1,
727         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
728         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
729         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
730         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
731         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
732         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
733         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
734         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
735         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
736         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
737         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
738         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
739         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
740         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
741         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
742         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
743         -1,  262,   -1,   -1,   -1,   -1,   -1,   -1,
744         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
745         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
746         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
747         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
748         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
749         -1,   -1,   -1,   -1,   -1,  263,   -1,   -1,
750         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
751         -1,   -1,   -1,   -1,   -1,   -1,  264,   -1,
752         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
753         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
754         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
755         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
756         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
757         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
758         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
759         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
760         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
761         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
762         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
763         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
764         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
765         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
766         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
767         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
768         -1,   -1,   -1,  265,   -1,   -1,   -1,   -1,
769         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
770         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
771         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
772         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
773         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
774         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
775         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
776         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
777         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
778         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
779         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
780         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
781         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
782         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
783         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
784         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
785         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
786         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
787         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
788         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
789         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
790         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
791         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
792         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
793         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
794         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
795         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
796         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
797         -1,  266,   -1,   -1,   -1,   -1,   -1,   -1,
798         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
799         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
800         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
801         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
802         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
803         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
804         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
805         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
806         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
807         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
808         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
809         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
810         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
811         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
812         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
813         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
814         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
815         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
816         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
817         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
818         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
819         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
820         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
821         -1,   -1,  267,   -1,   -1,   -1,   -1,   -1,
822         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
823         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
824         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
825         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
826         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
827         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
828         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
829         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
830         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
831         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
832         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
833         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
834         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
835         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
836         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
837         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
838         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
839         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
840         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
841         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
842         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
843         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
844         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
845         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
846         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
847         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
848         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
849         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
850         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
851         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
852         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
853         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
854         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
855         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
856         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
857         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
858         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
859         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
860         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
861         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
862         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
863         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
864         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
865         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
866         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
867         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
868         -1,   -1,   -1,  268
869     };
870
871   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
872     {
873       register int key = hash_val (str, len);
874
875       if (key <= MAX_HASH_VALUE && key >= 0)
876         {
877           register int index = lookup[key];
878
879           if (index >= 0)
880             {
881               register const char *s = wordlist_value[index].name;
882
883               if (*str == *s && !strcmp (str + 1, s + 1))
884                 return &wordlist_value[index];
885             }
886           else if (index < -TOTAL_KEYWORDS)
887             {
888               register int offset = - 1 - TOTAL_KEYWORDS - index;
889               register const struct css_value *wordptr = &wordlist_value[TOTAL_KEYWORDS + lookup[offset]];
890               register const struct css_value *wordendptr = wordptr + -lookup[offset + 1];
891
892               while (wordptr < wordendptr)
893                 {
894                   register const char *s = wordptr->name;
895
896                   if (*str == *s && !strcmp (str + 1, s + 1))
897                     return wordptr;
898                   wordptr++;
899                 }
900             }
901         }
902     }
903   return 0;
904 }
905 static const char * const valueList[] = {
906 "",
907 "inherit", 
908 "initial", 
909 "none", 
910 "hidden", 
911 "inset", 
912 "groove", 
913 "ridge", 
914 "outset", 
915 "dotted", 
916 "dashed", 
917 "solid", 
918 "double", 
919 "caption", 
920 "icon", 
921 "menu", 
922 "message-box", 
923 "small-caption", 
924 "status-bar", 
925 "italic", 
926 "oblique", 
927 "small-caps", 
928 "normal", 
929 "bold", 
930 "bolder", 
931 "lighter", 
932 "100", 
933 "200", 
934 "300", 
935 "400", 
936 "500", 
937 "600", 
938 "700", 
939 "800", 
940 "900", 
941 "xx-small", 
942 "x-small", 
943 "small", 
944 "medium", 
945 "large", 
946 "x-large", 
947 "xx-large", 
948 "-khtml-xxx-large", 
949 "smaller", 
950 "larger", 
951 "wider", 
952 "narrower", 
953 "ultra-condensed", 
954 "extra-condensed", 
955 "condensed", 
956 "semi-condensed", 
957 "semi-expanded", 
958 "expanded", 
959 "extra-expanded", 
960 "ultra-expanded", 
961 "serif", 
962 "sans-serif", 
963 "cursive", 
964 "fantasy", 
965 "monospace", 
966 "-khtml-body", 
967 "aqua", 
968 "black", 
969 "blue", 
970 "fuchsia", 
971 "gray", 
972 "green", 
973 "lime", 
974 "maroon", 
975 "navy", 
976 "olive", 
977 "orange", 
978 "purple", 
979 "red", 
980 "silver", 
981 "teal", 
982 "white", 
983 "yellow", 
984 "transparent", 
985 "-khtml-link", 
986 "-khtml-activelink", 
987 "activeborder", 
988 "activecaption", 
989 "appworkspace", 
990 "background", 
991 "buttonface", 
992 "buttonhighlight", 
993 "buttonshadow", 
994 "buttontext", 
995 "captiontext", 
996 "graytext", 
997 "highlight", 
998 "highlighttext", 
999 "inactiveborder", 
1000 "inactivecaption", 
1001 "inactivecaptiontext", 
1002 "infobackground", 
1003 "infotext", 
1004 "menutext", 
1005 "scrollbar", 
1006 "threeddarkshadow", 
1007 "threedface", 
1008 "threedhighlight", 
1009 "threedlightshadow", 
1010 "threedshadow", 
1011 "window", 
1012 "windowframe", 
1013 "windowtext", 
1014 "grey", 
1015 "-khtml-text", 
1016 "repeat", 
1017 "repeat-x", 
1018 "repeat-y", 
1019 "no-repeat", 
1020 "baseline", 
1021 "middle", 
1022 "sub", 
1023 "super", 
1024 "text-top", 
1025 "text-bottom", 
1026 "top", 
1027 "bottom", 
1028 "-khtml-baseline-middle", 
1029 "-khtml-auto", 
1030 "left", 
1031 "right", 
1032 "center", 
1033 "justify", 
1034 "-khtml-left", 
1035 "-khtml-right", 
1036 "-khtml-center", 
1037 "outside", 
1038 "inside", 
1039 "disc", 
1040 "circle", 
1041 "square", 
1042 "decimal", 
1043 "decimal-leading-zero", 
1044 "lower-roman", 
1045 "upper-roman", 
1046 "lower-greek", 
1047 "lower-alpha", 
1048 "lower-latin", 
1049 "upper-alpha", 
1050 "upper-latin", 
1051 "hebrew", 
1052 "armenian", 
1053 "georgian", 
1054 "cjk-ideographic", 
1055 "hiragana", 
1056 "katakana", 
1057 "hiragana-iroha", 
1058 "katakana-iroha", 
1059 "inline", 
1060 "block", 
1061 "list-item", 
1062 "run-in", 
1063 "compact", 
1064 "inline-block", 
1065 "table", 
1066 "inline-table", 
1067 "table-row-group", 
1068 "table-header-group", 
1069 "table-footer-group", 
1070 "table-row", 
1071 "table-column-group", 
1072 "table-column", 
1073 "table-cell", 
1074 "table-caption", 
1075 "-khtml-box", 
1076 "-khtml-inline-box", 
1077 "auto", 
1078 "crosshair", 
1079 "default", 
1080 "pointer", 
1081 "move", 
1082 "e-resize", 
1083 "ne-resize", 
1084 "nw-resize", 
1085 "n-resize", 
1086 "se-resize", 
1087 "sw-resize", 
1088 "s-resize", 
1089 "w-resize", 
1090 "text", 
1091 "wait", 
1092 "help", 
1093 "ltr", 
1094 "rtl", 
1095 "capitalize", 
1096 "uppercase", 
1097 "lowercase", 
1098 "visible", 
1099 "collapse", 
1100 "above", 
1101 "absolute", 
1102 "always", 
1103 "avoid", 
1104 "below", 
1105 "bidi-override", 
1106 "blink", 
1107 "both", 
1108 "close-quote", 
1109 "crop", 
1110 "cross", 
1111 "embed", 
1112 "fixed", 
1113 "hand", 
1114 "hide", 
1115 "higher", 
1116 "invert", 
1117 "landscape", 
1118 "level", 
1119 "line-through", 
1120 "loud", 
1121 "lower", 
1122 "marquee", 
1123 "mix", 
1124 "no-close-quote", 
1125 "no-open-quote", 
1126 "nowrap", 
1127 "open-quote", 
1128 "overlay", 
1129 "overline", 
1130 "portrait", 
1131 "pre", 
1132 "relative", 
1133 "scroll", 
1134 "separate", 
1135 "show", 
1136 "static", 
1137 "thick", 
1138 "thin", 
1139 "underline", 
1140 "-khtml-nowrap", 
1141 "stretch", 
1142 "start", 
1143 "end", 
1144 "reverse", 
1145 "horizontal", 
1146 "vertical", 
1147 "inline-axis", 
1148 "block-axis", 
1149 "single", 
1150 "multiple", 
1151 "forwards", 
1152 "backwards", 
1153 "ahead", 
1154 "up", 
1155 "down", 
1156 "slow", 
1157 "fast", 
1158 "infinite", 
1159 "slide", 
1160 "alternate", 
1161 "unfurl", 
1162 "read-only", 
1163 "read-write", 
1164 "element", 
1165 "intrinsic", 
1166 "min-intrinsic", 
1167 "clip", 
1168 "ellipsis", 
1169 "discard", 
1170 "dot-dash", 
1171 "dot-dot-dash", 
1172 "wave", 
1173 "continuous", 
1174 "skip-white-space", 
1175 "break-word", 
1176     0
1177 };
1178 DOMString getValueName(unsigned short id)
1179 {
1180     if(id >= CSS_VAL_TOTAL || id == 0)
1181       return DOMString();
1182     else
1183       return DOMString(valueList[id]);
1184 };
1185