aboutsummaryrefslogtreecommitdiffstats
path: root/udev-lfs/keyboard-keys-from-name.h
diff options
context:
space:
mode:
authorBruce Dubbs <bdubbs@linuxfromscratch.org>2013-07-27 20:49:15 +0000
committerBruce Dubbs <bdubbs@linuxfromscratch.org>2013-07-27 20:49:15 +0000
commit6a5ec4923dfc35da44894a082b28c53b9bcaebb6 (patch)
tree5b033f37a8555e0a6ca5c3b0e5d8e8c26bb2285f /udev-lfs/keyboard-keys-from-name.h
parent7e3a2897e7e8d8b398162f464f093388efbaf48f (diff)
Update to systemd-206/udev-lfs-206-1
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@10307 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Diffstat (limited to 'udev-lfs/keyboard-keys-from-name.h')
-rw-r--r--udev-lfs/keyboard-keys-from-name.h923
1 files changed, 923 insertions, 0 deletions
diff --git a/udev-lfs/keyboard-keys-from-name.h b/udev-lfs/keyboard-keys-from-name.h
new file mode 100644
index 000000000..e47cb2a95
--- /dev/null
+++ b/udev-lfs/keyboard-keys-from-name.h
@@ -0,0 +1,923 @@
+/* ANSI-C code produced by gperf version 3.0.4 */
+/* Command-line: gperf -L ANSI-C -t -N keyboard_lookup_key -H hash_key_name -p -C */
+/* Computed positions: -k'1-4,$' */
+
+#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
+ && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
+ && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
+ && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
+ && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
+ && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
+ && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
+ && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
+ && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
+ && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
+ && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
+ && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
+ && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
+ && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
+ && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
+ && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
+ && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
+ && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
+ && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
+ && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
+ && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
+ && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
+ && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
+/* The character set is not based on ISO-646. */
+#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
+#endif
+
+struct key { const char* name; unsigned short id; };
+
+#define TOTAL_KEYWORDS 392
+#define MIN_WORD_LENGTH 1
+#define MAX_WORD_LENGTH 16
+#define MIN_HASH_VALUE 1
+#define MAX_HASH_VALUE 1503
+/* maximum key range = 1503, duplicates = 0 */
+
+#ifdef __GNUC__
+__inline
+#else
+#ifdef __cplusplus
+inline
+#endif
+#endif
+static unsigned int
+hash_key_name (register const char *str, register unsigned int len)
+{
+ static const unsigned short asso_values[] =
+ {
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 130, 165,
+ 295, 285, 310, 370, 335, 220, 215, 75, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 75, 1504, 10, 330, 25,
+ 80, 5, 395, 260, 345, 185, 50, 300, 110, 30,
+ 145, 35, 15, 45, 65, 20, 0, 210, 455, 375,
+ 55, 95, 85, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1504, 1504, 1504
+ };
+ register int hval = len;
+
+ switch (hval)
+ {
+ default:
+ hval += asso_values[(unsigned char)str[3]];
+ /*FALLTHROUGH*/
+ case 3:
+ hval += asso_values[(unsigned char)str[2]];
+ /*FALLTHROUGH*/
+ case 2:
+ hval += asso_values[(unsigned char)str[1]];
+ /*FALLTHROUGH*/
+ case 1:
+ hval += asso_values[(unsigned char)str[0]];
+ break;
+ }
+ return hval + asso_values[(unsigned char)str[len - 1]];
+}
+
+#ifdef __GNUC__
+__inline
+#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__
+__attribute__ ((__gnu_inline__))
+#endif
+#endif
+const struct key *
+keyboard_lookup_key (register const char *str, register unsigned int len)
+{
+ static const struct key wordlist[] =
+ {
+ {(char*)0},
+ {"t", KEY_T},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"e", KEY_E},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"a", KEY_A},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"p", KEY_P},
+ {(char*)0},
+ {"sat", KEY_SAT},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"tape", KEY_TAPE},
+ {(char*)0},
+ {"s", KEY_S},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"c", KEY_C},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"paste", KEY_PASTE},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"m", KEY_M},
+ {(char*)0}, {(char*)0},
+ {"text", KEY_TEXT},
+ {(char*)0}, {(char*)0},
+ {"pc", KEY_PC},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"o", KEY_O},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"esc", KEY_ESC},
+ {(char*)0},
+ {"space", KEY_SPACE},
+ {"camera_left", KEY_CAMERA_LEFT},
+ {"camera_right", KEY_CAMERA_RIGHT},
+ {(char*)0},
+ {"camera_zoomout", KEY_CAMERA_ZOOMOUT},
+ {(char*)0},
+ {"camera", KEY_CAMERA},
+ {(char*)0}, {(char*)0},
+ {"stop", KEY_STOP},
+ {(char*)0},
+ {"q", KEY_Q},
+ {(char*)0}, {(char*)0},
+ {"camera_up", KEY_CAMERA_UP},
+ {"apostrophe", KEY_APOSTROPHE},
+ {(char*)0},
+ {"restart", KEY_RESTART},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"j", KEY_J},
+ {"camera_focus", KEY_CAMERA_FOCUS},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"x", KEY_X},
+ {(char*)0},
+ {"database", KEY_DATABASE},
+ {(char*)0}, {(char*)0},
+ {"spreadsheet", KEY_SPREADSHEET},
+ {"compose", KEY_COMPOSE},
+ {"dot", KEY_DOT},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"r", KEY_R},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"comma", KEY_COMMA},
+ {(char*)0},
+ {"ro", KEY_RO},
+ {"alterase", KEY_ALTERASE},
+ {"memo", KEY_MEMO},
+ {"sport", KEY_SPORT},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"last", KEY_LAST},
+ {(char*)0},
+ {"select", KEY_SELECT},
+ {(char*)0}, {(char*)0},
+ {"messenger", KEY_MESSENGER},
+ {(char*)0},
+ {"9", KEY_9},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"props", KEY_PROPS},
+ {"stopcd", KEY_STOPCD},
+ {(char*)0}, {(char*)0},
+ {"mode", KEY_MODE},
+ {"sleep", KEY_SLEEP},
+ {"d", KEY_D},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"scrollup", KEY_SCROLLUP},
+ {(char*)0},
+ {"macro", KEY_MACRO},
+ {"z", KEY_Z},
+ {"ejectcd", KEY_EJECTCD},
+ {(char*)0}, {(char*)0},
+ {"scale", KEY_SCALE},
+ {(char*)0},
+ {"ejectclosecd", KEY_EJECTCLOSECD},
+ {"computer", KEY_COMPUTER},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"reserved", KEY_RESERVED},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"cd", KEY_CD},
+ {(char*)0}, {(char*)0},
+ {"msdos", KEY_MSDOS},
+ {"y", KEY_Y},
+ {"zoomout", KEY_ZOOMOUT},
+ {(char*)0},
+ {"zoomreset", KEY_ZOOMRESET},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"calc", KEY_CALC},
+ {"close", KEY_CLOSE},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"next", KEY_NEXT},
+ {(char*)0},
+ {"delete", KEY_DELETE},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"deletefile", KEY_DELETEFILE},
+ {"record", KEY_RECORD},
+ {(char*)0}, {(char*)0},
+ {"zoom", KEY_ZOOM},
+ {"clear", KEY_CLEAR},
+ {"l", KEY_L},
+ {(char*)0},
+ {"calendar", KEY_CALENDAR},
+ {"redo", KEY_REDO},
+ {"enter", KEY_ENTER},
+ {"camera_down", KEY_CAMERA_DOWN},
+ {(char*)0},
+ {"camera_zoomin", KEY_CAMERA_ZOOMIN},
+ {"time", KEY_TIME},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"red", KEY_RED},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"cut", KEY_CUT},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"up", KEY_UP},
+ {(char*)0},
+ {"playpause", KEY_PLAYPAUSE},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"exit", KEY_EXIT},
+ {"sysrq", KEY_SYSRQ},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"mute", KEY_MUTE},
+ {"setup", KEY_SETUP},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"0", KEY_0},
+ {"presentation", KEY_PRESENTATION},
+ {"sendfile", KEY_SENDFILE},
+ {(char*)0},
+ {"pause", KEY_PAUSE},
+ {"screen", KEY_SCREEN},
+ {(char*)0}, {(char*)0},
+ {"copy", KEY_COPY},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"edit", KEY_EDIT},
+ {(char*)0}, {(char*)0},
+ {"closecd", KEY_CLOSECD},
+ {"iso", KEY_ISO},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"micmute", KEY_MICMUTE},
+ {"del_line", KEY_DEL_LINE},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"cyclewindows", KEY_CYCLEWINDOWS},
+ {(char*)0}, {(char*)0},
+ {"touchpad_toggle", KEY_TOUCHPAD_TOGGLE},
+ {"n", KEY_N},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"reply", KEY_REPLY},
+ {(char*)0},
+ {"del_eos", KEY_DEL_EOS},
+ {(char*)0}, {(char*)0},
+ {"scrolldown", KEY_SCROLLDOWN},
+ {"player", KEY_PLAYER},
+ {(char*)0}, {(char*)0},
+ {"teen", KEY_TEEN},
+ {"title", KEY_TITLE},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"pageup", KEY_PAGEUP},
+ {"media_repeat", KEY_MEDIA_REPEAT},
+ {"end", KEY_END},
+ {(char*)0},
+ {"media", KEY_MEDIA},
+ {"playcd", KEY_PLAYCD},
+ {(char*)0},
+ {"displaytoggle", KEY_DISPLAYTOGGLE},
+ {"list", KEY_LIST},
+ {(char*)0},
+ {"cancel", KEY_CANCEL},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"play", KEY_PLAY},
+ {"games", KEY_GAMES},
+ {"1", KEY_1},
+ {(char*)0},
+ {"aux", KEY_AUX},
+ {"send", KEY_SEND},
+ {(char*)0},
+ {"zoomin", KEY_ZOOMIN},
+ {(char*)0},
+ {"katakana", KEY_KATAKANA},
+ {(char*)0}, {(char*)0},
+ {"editor", KEY_EDITOR},
+ {"pausecd", KEY_PAUSECD},
+ {(char*)0}, {(char*)0},
+ {"email", KEY_EMAIL},
+ {"katakanahiragana", KEY_KATAKANAHIRAGANA},
+ {(char*)0}, {(char*)0},
+ {"open", KEY_OPEN},
+ {(char*)0}, {(char*)0},
+ {"suspend", KEY_SUSPEND},
+ {(char*)0},
+ {"euro", KEY_EURO},
+ {(char*)0}, {(char*)0},
+ {"connect", KEY_CONNECT},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"insert", KEY_INSERT},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"goto", KEY_GOTO},
+ {(char*)0},
+ {"i", KEY_I},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"hp", KEY_HP},
+ {"capslock", KEY_CAPSLOCK},
+ {"documents", KEY_DOCUMENTS},
+ {"radio", KEY_RADIO},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"chat", KEY_CHAT},
+ {"equal", KEY_EQUAL},
+ {"option", KEY_OPTION},
+ {"del_eol", KEY_DEL_EOL},
+ {(char*)0},
+ {"bassboost", KEY_BASSBOOST},
+ {(char*)0}, {(char*)0},
+ {"kpcomma", KEY_KPCOMMA},
+ {"yen", KEY_YEN},
+ {"semicolon", KEY_SEMICOLON},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"kpjpcomma", KEY_KPJPCOMMA},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"dollar", KEY_DOLLAR},
+ {(char*)0},
+ {"mhp", KEY_MHP},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"program", KEY_PROGRAM},
+ {(char*)0}, {(char*)0},
+ {"print", KEY_PRINT},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"u", KEY_U},
+ {(char*)0}, {(char*)0},
+ {"home", KEY_HOME},
+ {"screenlock", KEY_SCREENLOCK},
+ {"touchpad_on", KEY_TOUCHPAD_ON},
+ {"context_menu", KEY_CONTEXT_MENU},
+ {"homepage", KEY_HOMEPAGE},
+ {"graphicseditor", KEY_GRAPHICSEDITOR},
+ {"tuner", KEY_TUNER},
+ {"8", KEY_8},
+ {(char*)0},
+ {"question", KEY_QUESTION},
+ {"shop", KEY_SHOP},
+ {"kpdot", KEY_KPDOT},
+ {(char*)0}, {(char*)0},
+ {"ins_line", KEY_INS_LINE},
+ {"directory", KEY_DIRECTORY},
+ {(char*)0},
+ {"7", KEY_7},
+ {"battery", KEY_BATTERY},
+ {"pagedown", KEY_PAGEDOWN},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"mail", KEY_MAIL},
+ {(char*)0},
+ {"search", KEY_SEARCH},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"scrolllock", KEY_SCROLLLOCK},
+ {(char*)0},
+ {"archive", KEY_ARCHIVE},
+ {(char*)0}, {(char*)0},
+ {"spellcheck", KEY_SPELLCHECK},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"kpplus", KEY_KPPLUS},
+ {"numeric_star", KEY_NUMERIC_STAR},
+ {"kp9", KEY_KP9},
+ {(char*)0}, {(char*)0},
+ {"kpplusminus", KEY_KPPLUSMINUS},
+ {(char*)0},
+ {"nextsong", KEY_NEXTSONG},
+ {"numeric_9", KEY_NUMERIC_9},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"kpequal", KEY_KPEQUAL},
+ {"numeric_pound", KEY_NUMERIC_POUND},
+ {(char*)0},
+ {"green", KEY_GREEN},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"direction", KEY_DIRECTION},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"help", KEY_HELP},
+ {"sound", KEY_SOUND},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"save", KEY_SAVE},
+ {"power", KEY_POWER},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"undo", KEY_UNDO},
+ {"slash", KEY_SLASH},
+ {"images", KEY_IMAGES},
+ {(char*)0}, {(char*)0},
+ {"left", KEY_LEFT},
+ {(char*)0},
+ {"fastforward", KEY_FASTFORWARD},
+ {"leftalt", KEY_LEFTALT},
+ {(char*)0},
+ {"leftshift", KEY_LEFTSHIFT},
+ {(char*)0},
+ {"g", KEY_G},
+ {(char*)0}, {(char*)0},
+ {"leftbrace", KEY_LEFTBRACE},
+ {"audio", KEY_AUDIO},
+ {(char*)0}, {(char*)0},
+ {"leftmeta", KEY_LEFTMETA},
+ {"numeric_0", KEY_NUMERIC_0},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"linefeed", KEY_LINEFEED},
+ {"move", KEY_MOVE},
+ {"angle", KEY_ANGLE},
+ {(char*)0},
+ {"kpenter", KEY_KPENTER},
+ {"language", KEY_LANGUAGE},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"epg", KEY_EPG},
+ {"dashboard", KEY_DASHBOARD},
+ {"prog1", KEY_PROG1},
+ {"addressbook", KEY_ADDRESSBOOK},
+ {"f9", KEY_F9},
+ {(char*)0},
+ {"channelup", KEY_CHANNELUP},
+ {"phone", KEY_PHONE},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"kpminus", KEY_KPMINUS},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"numeric_1", KEY_NUMERIC_1},
+ {"hanja", KEY_HANJA},
+ {(char*)0}, {(char*)0},
+ {"previous", KEY_PREVIOUS},
+ {"news", KEY_NEWS},
+ {(char*)0},
+ {"3", KEY_3},
+ {(char*)0},
+ {"subtitle", KEY_SUBTITLE},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"kp0", KEY_KP0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"kpleftparen", KEY_KPLEFTPAREN},
+ {(char*)0}, {(char*)0},
+ {"xfer", KEY_XFER},
+ {(char*)0},
+ {"2", KEY_2},
+ {"frameforward", KEY_FRAMEFORWARD},
+ {(char*)0}, {(char*)0},
+ {"minus", KEY_MINUS},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"switchvideomode", KEY_SWITCHVIDEOMODE},
+ {"k", KEY_K},
+ {(char*)0},
+ {"pvr", KEY_PVR},
+ {"menu", KEY_MENU},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"vcr", KEY_VCR},
+ {"numeric_8", KEY_NUMERIC_8},
+ {"again", KEY_AGAIN},
+ {(char*)0}, {(char*)0},
+ {"mp3", KEY_MP3},
+ {"numeric_7", KEY_NUMERIC_7},
+ {(char*)0},
+ {"4", KEY_4},
+ {(char*)0},
+ {"hiragana", KEY_HIRAGANA},
+ {"sat2", KEY_SAT2},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"leftctrl", KEY_LEFTCTRL},
+ {"fn_e", KEY_FN_E},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"wordprocessor", KEY_WORDPROCESSOR},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"ok", KEY_OK},
+ {(char*)0}, {(char*)0},
+ {"wps_button", KEY_WPS_BUTTON},
+ {(char*)0},
+ {"channel", KEY_CHANNEL},
+ {(char*)0}, {(char*)0},
+ {"front", KEY_FRONT},
+ {(char*)0}, {(char*)0},
+ {"kp1", KEY_KP1},
+ {(char*)0}, {(char*)0},
+ {"fn_esc", KEY_FN_ESC},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"kpasterisk", KEY_KPASTERISK},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"fn_s", KEY_FN_S},
+ {"wimax", KEY_WIMAX},
+ {"b", KEY_B},
+ {(char*)0},
+ {"brl_dot9", KEY_BRL_DOT9},
+ {"blue", KEY_BLUE},
+ {"prog3", KEY_PROG3},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"first", KEY_FIRST},
+ {"6", KEY_6},
+ {"ab", KEY_AB},
+ {"tab", KEY_TAB},
+ {"twen", KEY_TWEN},
+ {"prog2", KEY_PROG2},
+ {(char*)0},
+ {"touchpad_off", KEY_TOUCHPAD_OFF},
+ {(char*)0},
+ {"backspace", KEY_BACKSPACE},
+ {(char*)0},
+ {"channeldown", KEY_CHANNELDOWN},
+ {(char*)0}, {(char*)0},
+ {"numeric_3", KEY_NUMERIC_3},
+ {(char*)0}, {(char*)0},
+ {"fn", KEY_FN},
+ {(char*)0}, {(char*)0},
+ {"prog4", KEY_PROG4},
+ {"h", KEY_H},
+ {"10channelsup", KEY_10CHANNELSUP},
+ {(char*)0},
+ {"numeric_2", KEY_NUMERIC_2},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"dvd", KEY_DVD},
+ {(char*)0}, {(char*)0},
+ {"yellow", KEY_YELLOW},
+ {(char*)0}, {(char*)0},
+ {"file", KEY_FILE},
+ {(char*)0},
+ {"display_off", KEY_DISPLAY_OFF},
+ {(char*)0}, {(char*)0},
+ {"numeric_4", KEY_NUMERIC_4},
+ {(char*)0},
+ {"wakeup", KEY_WAKEUP},
+ {(char*)0},
+ {"f19", KEY_F19},
+ {(char*)0},
+ {"break", KEY_BREAK},
+ {"rewind", KEY_REWIND},
+ {(char*)0}, {(char*)0},
+ {"brl_dot10", KEY_BRL_DOT10},
+ {(char*)0}, {(char*)0},
+ {"kprightparen", KEY_KPRIGHTPAREN},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"f1", KEY_F1},
+ {(char*)0},
+ {"bookmarks", KEY_BOOKMARKS},
+ {(char*)0},
+ {"power2", KEY_POWER2},
+ {(char*)0}, {(char*)0},
+ {"numeric_6", KEY_NUMERIC_6},
+ {"video_next", KEY_VIDEO_NEXT},
+ {"digits", KEY_DIGITS},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"videophone", KEY_VIDEOPHONE},
+ {"5", KEY_5},
+ {(char*)0},
+ {"muhenkan", KEY_MUHENKAN},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"finance", KEY_FINANCE},
+ {"kp8", KEY_KP8},
+ {(char*)0}, {(char*)0},
+ {"w", KEY_W},
+ {(char*)0},
+ {"brl_dot1", KEY_BRL_DOT1},
+ {(char*)0}, {(char*)0},
+ {"vendor", KEY_VENDOR},
+ {(char*)0},
+ {"kp7", KEY_KP7},
+ {"zenkakuhankaku", KEY_ZENKAKUHANKAKU},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"video", KEY_VIDEO},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"numeric_5", KEY_NUMERIC_5},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"fn_d", KEY_FN_D},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"down", KEY_DOWN},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"wlan", KEY_WLAN},
+ {(char*)0},
+ {"f", KEY_F},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"kpslash", KEY_KPSLASH},
+ {(char*)0},
+ {"info", KEY_INFO},
+ {"grave", KEY_GRAVE},
+ {(char*)0},
+ {"numlock", KEY_NUMLOCK},
+ {"brl_dot8", KEY_BRL_DOT8},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"brl_dot7", KEY_BRL_DOT7},
+ {"frameback", KEY_FRAMEBACK},
+ {(char*)0}, {(char*)0},
+ {"previoussong", KEY_PREVIOUSSONG},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"keyboard", KEY_KEYBOARD},
+ {"voicemail", KEY_VOICEMAIL},
+ {"102nd", KEY_102ND},
+ {(char*)0}, {(char*)0},
+ {"f10", KEY_F10},
+ {"10channelsdown", KEY_10CHANNELSDOWN},
+ {(char*)0}, {(char*)0},
+ {"f8", KEY_F8},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"volumeup", KEY_VOLUMEUP},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"f7", KEY_F7},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"logoff", KEY_LOGOFF},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"right", KEY_RIGHT},
+ {"brightness_cycle", KEY_BRIGHTNESS_CYCLE},
+ {(char*)0},
+ {"rightalt", KEY_RIGHTALT},
+ {(char*)0},
+ {"rightshift", KEY_RIGHTSHIFT},
+ {"config", KEY_CONFIG},
+ {"brightnessup", KEY_BRIGHTNESSUP},
+ {(char*)0}, {(char*)0},
+ {"rightbrace", KEY_RIGHTBRACE},
+ {(char*)0}, {(char*)0},
+ {"brl_dot3", KEY_BRL_DOT3},
+ {"rightmeta", KEY_RIGHTMETA},
+ {(char*)0}, {(char*)0},
+ {"hangeul", KEY_HANGEUL},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"refresh", KEY_REFRESH},
+ {"brl_dot2", KEY_BRL_DOT2},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"kp3", KEY_KP3},
+ {"find", KEY_FIND},
+ {"brightness_zero", KEY_BRIGHTNESS_ZERO},
+ {(char*)0}, {(char*)0},
+ {"f11", KEY_F11},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"brl_dot4", KEY_BRL_DOT4},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"new", KEY_NEW},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"kp2", KEY_KP2},
+ {(char*)0}, {(char*)0},
+ {"v", KEY_V},
+ {"tv", KEY_TV},
+ {(char*)0},
+ {"kbdillumtoggle", KEY_KBDILLUMTOGGLE},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"slow", KEY_SLOW},
+ {"kbdillumup", KEY_KBDILLUMUP},
+ {(char*)0}, {(char*)0},
+ {"brl_dot6", KEY_BRL_DOT6},
+ {"favorites", KEY_FAVORITES},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"kp4", KEY_KP4},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"henkan", KEY_HENKAN},
+ {(char*)0}, {(char*)0},
+ {"fn_1", KEY_FN_1},
+ {(char*)0}, {(char*)0},
+ {"unknown", KEY_UNKNOWN},
+ {"f20", KEY_F20},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"forward", KEY_FORWARD},
+ {"brl_dot5", KEY_BRL_DOT5},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"volumedown", KEY_VOLUMEDOWN},
+ {(char*)0},
+ {"f3", KEY_F3},
+ {(char*)0},
+ {"back", KEY_BACK},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"rightctrl", KEY_RIGHTCTRL},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"shuffle", KEY_SHUFFLE},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"f2", KEY_F2},
+ {"kp6", KEY_KP6},
+ {(char*)0}, {(char*)0},
+ {"forwardmail", KEY_FORWARDMAIL},
+ {(char*)0},
+ {"f18", KEY_F18},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"brightnessdown", KEY_BRIGHTNESSDOWN},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"f17", KEY_F17},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"bluetooth", KEY_BLUETOOTH},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"f4", KEY_F4},
+ {(char*)0},
+ {"backslash", KEY_BACKSLASH},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"f21", KEY_F21},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"tv2", KEY_TV2},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"kbdillumdown", KEY_KBDILLUMDOWN},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"kp5", KEY_KP5},
+ {(char*)0}, {(char*)0},
+ {"rfkill", KEY_RFKILL},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"f6", KEY_F6},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"fn_f9", KEY_FN_F9},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"f13", KEY_F13},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"f5", KEY_F5},
+ {(char*)0},
+ {"vcr2", KEY_VCR2},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"fn_f10", KEY_FN_F10},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"f12", KEY_F12},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"fn_f1", KEY_FN_F1},
+ {"fn_f11", KEY_FN_F11},
+ {(char*)0},
+ {"f14", KEY_F14},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"video_prev", KEY_VIDEO_PREV},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"fn_2", KEY_FN_2},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"fn_f8", KEY_FN_F8},
+ {(char*)0}, {(char*)0},
+ {"f16", KEY_F16},
+ {(char*)0},
+ {"fn_f7", KEY_FN_F7},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"uwb", KEY_UWB},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"f23", KEY_F23},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"fn_b", KEY_FN_B},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"f22", KEY_F22},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"fn_f3", KEY_FN_F3},
+ {(char*)0}, {(char*)0},
+ {"f15", KEY_F15},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"fn_f2", KEY_FN_F2},
+ {"fn_f12", KEY_FN_F12},
+ {(char*)0},
+ {"f24", KEY_F24},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"fn_f4", KEY_FN_F4},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {"fn_f6", KEY_FN_F6},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0},
+ {"fn_f5", KEY_FN_F5},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0},
+ {"fn_f", KEY_FN_F},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
+ {(char*)0},
+ {"www", KEY_WWW}
+ };
+
+ if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
+ {
+ register int key = hash_key_name (str, len);
+
+ if (key <= MAX_HASH_VALUE && key >= 0)
+ {
+ register const char *s = wordlist[key].name;
+
+ if (s && *str == *s && !strcmp (str + 1, s + 1))
+ return &wordlist[key];
+ }
+ }
+ return 0;
+}