godot/thirdparty/linuxbsd_headers/xkbcommon/xkbcommon-keysyms.h

#ifndef _XKBCOMMON_KEYSYMS_H
#define _XKBCOMMON_KEYSYMS_H

/* This file is autogenerated; please do not commit directly. */

#define XKB_KEY_NoSymbol

/***********************************************************
Copyright 1987, 1994, 1998  The Open Group

Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.

The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.

Except as contained in this notice, the name of The Open Group shall
not be used in advertising or otherwise to promote the sale, use or
other dealings in this Software without prior written authorization
from The Open Group.


Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts

                        All Rights Reserved

Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in
supporting documentation, and that the name of Digital not be
used in advertising or publicity pertaining to distribution of the
software without specific, written prior permission.

DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
SOFTWARE.

******************************************************************/

/*
 * The "X11 Window System Protocol" standard defines in Appendix A the
 * keysym codes. These 29-bit integer values identify characters or
 * functions associated with each key (e.g., via the visible
 * engraving) of a keyboard layout. This file assigns mnemonic macro
 * names for these keysyms.
 *
 * This file is also compiled (by src/util/makekeys.c in libX11) into
 * hash tables that can be accessed with X11 library functions such as
 * XStringToKeysym() and XKeysymToString().
 *
 * Where a keysym corresponds one-to-one to an ISO 10646 / Unicode
 * character, this is noted in a comment that provides both the U+xxxx
 * Unicode position, as well as the official Unicode name of the
 * character.
 *
 * Where the correspondence is either not one-to-one or semantically
 * unclear, the Unicode position and name are enclosed in
 * parentheses. Such legacy keysyms should be considered deprecated
 * and are not recommended for use in future keyboard mappings.
 *
 * For any future extension of the keysyms with characters already
 * found in ISO 10646 / Unicode, the following algorithm shall be
 * used. The new keysym code position will simply be the character's
 * Unicode number plus 0x01000000. The keysym values in the range
 * 0x01000100 to 0x0110ffff are reserved to represent Unicode
 * characters in the range U+0100 to U+10FFFF.
 *
 * While most newer Unicode-based X11 clients do already accept
 * Unicode-mapped keysyms in the range 0x01000100 to 0x0110ffff, it
 * will remain necessary for clients -- in the interest of
 * compatibility with existing servers -- to also understand the
 * existing legacy keysym values in the range 0x0100 to 0x20ff.
 *
 * Where several mnemonic names are defined for the same keysym in this
 * file, all but the first one listed should be considered deprecated.
 *
 * Mnemonic names for keysyms are defined in this file with lines
 * that match one of these Perl regular expressions:
 *
 *    /^\#define XKB_KEY_([a-zA-Z_0-9]+)\s+0x([0-9a-f]+)\s*\/\* U\+([0-9A-F]{4,6}) (.*) \*\/\s*$/
 *    /^\#define XKB_KEY_([a-zA-Z_0-9]+)\s+0x([0-9a-f]+)\s*\/\*\(U\+([0-9A-F]{4,6}) (.*)\)\*\/\s*$/
 *    /^\#define XKB_KEY_([a-zA-Z_0-9]+)\s+0x([0-9a-f]+)\s*(\/\*\s*(.*)\s*\*\/)?\s*$/
 *
 * Before adding new keysyms, please do consider the following: In
 * addition to the keysym names defined in this file, the
 * XStringToKeysym() and XKeysymToString() functions will also handle
 * any keysym string of the form "U0020" to "U007E" and "U00A0" to
 * "U10FFFF" for all possible Unicode characters. In other words,
 * every possible Unicode character has already a keysym string
 * defined algorithmically, even if it is not listed here. Therefore,
 * defining an additional keysym macro is only necessary where a
 * non-hexadecimal mnemonic name is needed, or where the new keysym
 * does not represent any existing Unicode character.
 *
 * When adding new keysyms to this file, do not forget to also update the
 * following as needed:
 *
 *   - the mappings in src/KeyBind.c in the libX11 repo
 *     https://gitlab.freedesktop.org/xorg/lib/libx11
 *
 *   - the protocol specification in specs/keysyms.xml in this repo
 *     https://gitlab.freedesktop.org/xorg/proto/xorgproto
 *
 */

#define XKB_KEY_VoidSymbol

/*
 * TTY function keys, cleverly chosen to map to ASCII, for convenience of
 * programming, but could have been arbitrary (at the cost of lookup
 * tables in client code).
 */

#define XKB_KEY_BackSpace
#define XKB_KEY_Tab
#define XKB_KEY_Linefeed
#define XKB_KEY_Clear
#define XKB_KEY_Return
#define XKB_KEY_Pause
#define XKB_KEY_Scroll_Lock
#define XKB_KEY_Sys_Req
#define XKB_KEY_Escape
#define XKB_KEY_Delete



/* International & multi-key character composition */

#define XKB_KEY_Multi_key
#define XKB_KEY_Codeinput
#define XKB_KEY_SingleCandidate
#define XKB_KEY_MultipleCandidate
#define XKB_KEY_PreviousCandidate

/* Japanese keyboard support */

#define XKB_KEY_Kanji
#define XKB_KEY_Muhenkan
#define XKB_KEY_Henkan_Mode
#define XKB_KEY_Henkan
#define XKB_KEY_Romaji
#define XKB_KEY_Hiragana
#define XKB_KEY_Katakana
#define XKB_KEY_Hiragana_Katakana
#define XKB_KEY_Zenkaku
#define XKB_KEY_Hankaku
#define XKB_KEY_Zenkaku_Hankaku
#define XKB_KEY_Touroku
#define XKB_KEY_Massyo
#define XKB_KEY_Kana_Lock
#define XKB_KEY_Kana_Shift
#define XKB_KEY_Eisu_Shift
#define XKB_KEY_Eisu_toggle
#define XKB_KEY_Kanji_Bangou
#define XKB_KEY_Zen_Koho
#define XKB_KEY_Mae_Koho

/* 0xff31 thru 0xff3f are under XK_KOREAN */

/* Cursor control & motion */

#define XKB_KEY_Home
#define XKB_KEY_Left
#define XKB_KEY_Up
#define XKB_KEY_Right
#define XKB_KEY_Down
#define XKB_KEY_Prior
#define XKB_KEY_Page_Up
#define XKB_KEY_Next
#define XKB_KEY_Page_Down
#define XKB_KEY_End
#define XKB_KEY_Begin


/* Misc functions */

#define XKB_KEY_Select
#define XKB_KEY_Print
#define XKB_KEY_Execute
#define XKB_KEY_Insert
#define XKB_KEY_Undo
#define XKB_KEY_Redo
#define XKB_KEY_Menu
#define XKB_KEY_Find
#define XKB_KEY_Cancel
#define XKB_KEY_Help
#define XKB_KEY_Break
#define XKB_KEY_Mode_switch
#define XKB_KEY_script_switch
#define XKB_KEY_Num_Lock

/* Keypad functions, keypad numbers cleverly chosen to map to ASCII */

#define XKB_KEY_KP_Space
#define XKB_KEY_KP_Tab
#define XKB_KEY_KP_Enter
#define XKB_KEY_KP_F1
#define XKB_KEY_KP_F2
#define XKB_KEY_KP_F3
#define XKB_KEY_KP_F4
#define XKB_KEY_KP_Home
#define XKB_KEY_KP_Left
#define XKB_KEY_KP_Up
#define XKB_KEY_KP_Right
#define XKB_KEY_KP_Down
#define XKB_KEY_KP_Prior
#define XKB_KEY_KP_Page_Up
#define XKB_KEY_KP_Next
#define XKB_KEY_KP_Page_Down
#define XKB_KEY_KP_End
#define XKB_KEY_KP_Begin
#define XKB_KEY_KP_Insert
#define XKB_KEY_KP_Delete
#define XKB_KEY_KP_Equal
#define XKB_KEY_KP_Multiply
#define XKB_KEY_KP_Add
#define XKB_KEY_KP_Separator
#define XKB_KEY_KP_Subtract
#define XKB_KEY_KP_Decimal
#define XKB_KEY_KP_Divide

#define XKB_KEY_KP_0
#define XKB_KEY_KP_1
#define XKB_KEY_KP_2
#define XKB_KEY_KP_3
#define XKB_KEY_KP_4
#define XKB_KEY_KP_5
#define XKB_KEY_KP_6
#define XKB_KEY_KP_7
#define XKB_KEY_KP_8
#define XKB_KEY_KP_9



/*
 * Auxiliary functions; note the duplicate definitions for left and right
 * function keys;  Sun keyboards and a few other manufacturers have such
 * function key groups on the left and/or right sides of the keyboard.
 * We've not found a keyboard with more than 35 function keys total.
 */

#define XKB_KEY_F1
#define XKB_KEY_F2
#define XKB_KEY_F3
#define XKB_KEY_F4
#define XKB_KEY_F5
#define XKB_KEY_F6
#define XKB_KEY_F7
#define XKB_KEY_F8
#define XKB_KEY_F9
#define XKB_KEY_F10
#define XKB_KEY_F11
#define XKB_KEY_L1
#define XKB_KEY_F12
#define XKB_KEY_L2
#define XKB_KEY_F13
#define XKB_KEY_L3
#define XKB_KEY_F14
#define XKB_KEY_L4
#define XKB_KEY_F15
#define XKB_KEY_L5
#define XKB_KEY_F16
#define XKB_KEY_L6
#define XKB_KEY_F17
#define XKB_KEY_L7
#define XKB_KEY_F18
#define XKB_KEY_L8
#define XKB_KEY_F19
#define XKB_KEY_L9
#define XKB_KEY_F20
#define XKB_KEY_L10
#define XKB_KEY_F21
#define XKB_KEY_R1
#define XKB_KEY_F22
#define XKB_KEY_R2
#define XKB_KEY_F23
#define XKB_KEY_R3
#define XKB_KEY_F24
#define XKB_KEY_R4
#define XKB_KEY_F25
#define XKB_KEY_R5
#define XKB_KEY_F26
#define XKB_KEY_R6
#define XKB_KEY_F27
#define XKB_KEY_R7
#define XKB_KEY_F28
#define XKB_KEY_R8
#define XKB_KEY_F29
#define XKB_KEY_R9
#define XKB_KEY_F30
#define XKB_KEY_R10
#define XKB_KEY_F31
#define XKB_KEY_R11
#define XKB_KEY_F32
#define XKB_KEY_R12
#define XKB_KEY_F33
#define XKB_KEY_R13
#define XKB_KEY_F34
#define XKB_KEY_R14
#define XKB_KEY_F35
#define XKB_KEY_R15

/* Modifiers */

#define XKB_KEY_Shift_L
#define XKB_KEY_Shift_R
#define XKB_KEY_Control_L
#define XKB_KEY_Control_R
#define XKB_KEY_Caps_Lock
#define XKB_KEY_Shift_Lock

#define XKB_KEY_Meta_L
#define XKB_KEY_Meta_R
#define XKB_KEY_Alt_L
#define XKB_KEY_Alt_R
#define XKB_KEY_Super_L
#define XKB_KEY_Super_R
#define XKB_KEY_Hyper_L
#define XKB_KEY_Hyper_R

/*
 * Keyboard (XKB) Extension function and modifier keys
 * (from Appendix C of "The X Keyboard Extension: Protocol Specification")
 * Byte 3 = 0xfe
 */

#define XKB_KEY_ISO_Lock
#define XKB_KEY_ISO_Level2_Latch
#define XKB_KEY_ISO_Level3_Shift
#define XKB_KEY_ISO_Level3_Latch
#define XKB_KEY_ISO_Level3_Lock
#define XKB_KEY_ISO_Level5_Shift
#define XKB_KEY_ISO_Level5_Latch
#define XKB_KEY_ISO_Level5_Lock
#define XKB_KEY_ISO_Group_Shift
#define XKB_KEY_ISO_Group_Latch
#define XKB_KEY_ISO_Group_Lock
#define XKB_KEY_ISO_Next_Group
#define XKB_KEY_ISO_Next_Group_Lock
#define XKB_KEY_ISO_Prev_Group
#define XKB_KEY_ISO_Prev_Group_Lock
#define XKB_KEY_ISO_First_Group
#define XKB_KEY_ISO_First_Group_Lock
#define XKB_KEY_ISO_Last_Group
#define XKB_KEY_ISO_Last_Group_Lock

#define XKB_KEY_ISO_Left_Tab
#define XKB_KEY_ISO_Move_Line_Up
#define XKB_KEY_ISO_Move_Line_Down
#define XKB_KEY_ISO_Partial_Line_Up
#define XKB_KEY_ISO_Partial_Line_Down
#define XKB_KEY_ISO_Partial_Space_Left
#define XKB_KEY_ISO_Partial_Space_Right
#define XKB_KEY_ISO_Set_Margin_Left
#define XKB_KEY_ISO_Set_Margin_Right
#define XKB_KEY_ISO_Release_Margin_Left
#define XKB_KEY_ISO_Release_Margin_Right
#define XKB_KEY_ISO_Release_Both_Margins
#define XKB_KEY_ISO_Fast_Cursor_Left
#define XKB_KEY_ISO_Fast_Cursor_Right
#define XKB_KEY_ISO_Fast_Cursor_Up
#define XKB_KEY_ISO_Fast_Cursor_Down
#define XKB_KEY_ISO_Continuous_Underline
#define XKB_KEY_ISO_Discontinuous_Underline
#define XKB_KEY_ISO_Emphasize
#define XKB_KEY_ISO_Center_Object
#define XKB_KEY_ISO_Enter

#define XKB_KEY_dead_grave
#define XKB_KEY_dead_acute
#define XKB_KEY_dead_circumflex
#define XKB_KEY_dead_tilde
#define XKB_KEY_dead_perispomeni
#define XKB_KEY_dead_macron
#define XKB_KEY_dead_breve
#define XKB_KEY_dead_abovedot
#define XKB_KEY_dead_diaeresis
#define XKB_KEY_dead_abovering
#define XKB_KEY_dead_doubleacute
#define XKB_KEY_dead_caron
#define XKB_KEY_dead_cedilla
#define XKB_KEY_dead_ogonek
#define XKB_KEY_dead_iota
#define XKB_KEY_dead_voiced_sound
#define XKB_KEY_dead_semivoiced_sound
#define XKB_KEY_dead_belowdot
#define XKB_KEY_dead_hook
#define XKB_KEY_dead_horn
#define XKB_KEY_dead_stroke
#define XKB_KEY_dead_abovecomma
#define XKB_KEY_dead_psili
#define XKB_KEY_dead_abovereversedcomma
#define XKB_KEY_dead_dasia
#define XKB_KEY_dead_doublegrave
#define XKB_KEY_dead_belowring
#define XKB_KEY_dead_belowmacron
#define XKB_KEY_dead_belowcircumflex
#define XKB_KEY_dead_belowtilde
#define XKB_KEY_dead_belowbreve
#define XKB_KEY_dead_belowdiaeresis
#define XKB_KEY_dead_invertedbreve
#define XKB_KEY_dead_belowcomma
#define XKB_KEY_dead_currency

/* extra dead elements for German T3 layout */
#define XKB_KEY_dead_lowline
#define XKB_KEY_dead_aboveverticalline
#define XKB_KEY_dead_belowverticalline
#define XKB_KEY_dead_longsolidusoverlay

/* dead vowels for universal syllable entry */
#define XKB_KEY_dead_a
#define XKB_KEY_dead_A
#define XKB_KEY_dead_e
#define XKB_KEY_dead_E
#define XKB_KEY_dead_i
#define XKB_KEY_dead_I
#define XKB_KEY_dead_o
#define XKB_KEY_dead_O
#define XKB_KEY_dead_u
#define XKB_KEY_dead_U
#define XKB_KEY_dead_small_schwa
#define XKB_KEY_dead_capital_schwa

#define XKB_KEY_dead_greek

#define XKB_KEY_First_Virtual_Screen
#define XKB_KEY_Prev_Virtual_Screen
#define XKB_KEY_Next_Virtual_Screen
#define XKB_KEY_Last_Virtual_Screen
#define XKB_KEY_Terminate_Server

#define XKB_KEY_AccessX_Enable
#define XKB_KEY_AccessX_Feedback_Enable
#define XKB_KEY_RepeatKeys_Enable
#define XKB_KEY_SlowKeys_Enable
#define XKB_KEY_BounceKeys_Enable
#define XKB_KEY_StickyKeys_Enable
#define XKB_KEY_MouseKeys_Enable
#define XKB_KEY_MouseKeys_Accel_Enable
#define XKB_KEY_Overlay1_Enable
#define XKB_KEY_Overlay2_Enable
#define XKB_KEY_AudibleBell_Enable

#define XKB_KEY_Pointer_Left
#define XKB_KEY_Pointer_Right
#define XKB_KEY_Pointer_Up
#define XKB_KEY_Pointer_Down
#define XKB_KEY_Pointer_UpLeft
#define XKB_KEY_Pointer_UpRight
#define XKB_KEY_Pointer_DownLeft
#define XKB_KEY_Pointer_DownRight
#define XKB_KEY_Pointer_Button_Dflt
#define XKB_KEY_Pointer_Button1
#define XKB_KEY_Pointer_Button2
#define XKB_KEY_Pointer_Button3
#define XKB_KEY_Pointer_Button4
#define XKB_KEY_Pointer_Button5
#define XKB_KEY_Pointer_DblClick_Dflt
#define XKB_KEY_Pointer_DblClick1
#define XKB_KEY_Pointer_DblClick2
#define XKB_KEY_Pointer_DblClick3
#define XKB_KEY_Pointer_DblClick4
#define XKB_KEY_Pointer_DblClick5
#define XKB_KEY_Pointer_Drag_Dflt
#define XKB_KEY_Pointer_Drag1
#define XKB_KEY_Pointer_Drag2
#define XKB_KEY_Pointer_Drag3
#define XKB_KEY_Pointer_Drag4
#define XKB_KEY_Pointer_Drag5

#define XKB_KEY_Pointer_EnableKeys
#define XKB_KEY_Pointer_Accelerate
#define XKB_KEY_Pointer_DfltBtnNext
#define XKB_KEY_Pointer_DfltBtnPrev

/* Single-Stroke Multiple-Character N-Graph Keysyms For The X Input Method */

#define XKB_KEY_ch
#define XKB_KEY_Ch
#define XKB_KEY_CH
#define XKB_KEY_c_h
#define XKB_KEY_C_h
#define XKB_KEY_C_H


/*
 * 3270 Terminal Keys
 * Byte 3 = 0xfd
 */

#define XKB_KEY_3270_Duplicate
#define XKB_KEY_3270_FieldMark
#define XKB_KEY_3270_Right2
#define XKB_KEY_3270_Left2
#define XKB_KEY_3270_BackTab
#define XKB_KEY_3270_EraseEOF
#define XKB_KEY_3270_EraseInput
#define XKB_KEY_3270_Reset
#define XKB_KEY_3270_Quit
#define XKB_KEY_3270_PA1
#define XKB_KEY_3270_PA2
#define XKB_KEY_3270_PA3
#define XKB_KEY_3270_Test
#define XKB_KEY_3270_Attn
#define XKB_KEY_3270_CursorBlink
#define XKB_KEY_3270_AltCursor
#define XKB_KEY_3270_KeyClick
#define XKB_KEY_3270_Jump
#define XKB_KEY_3270_Ident
#define XKB_KEY_3270_Rule
#define XKB_KEY_3270_Copy
#define XKB_KEY_3270_Play
#define XKB_KEY_3270_Setup
#define XKB_KEY_3270_Record
#define XKB_KEY_3270_ChangeScreen
#define XKB_KEY_3270_DeleteWord
#define XKB_KEY_3270_ExSelect
#define XKB_KEY_3270_CursorSelect
#define XKB_KEY_3270_PrintScreen
#define XKB_KEY_3270_Enter

/*
 * Latin 1
 * (ISO/IEC 8859-1 = Unicode U+0020..U+00FF)
 * Byte 3 = 0
 */
#define XKB_KEY_space
#define XKB_KEY_exclam
#define XKB_KEY_quotedbl
#define XKB_KEY_numbersign
#define XKB_KEY_dollar
#define XKB_KEY_percent
#define XKB_KEY_ampersand
#define XKB_KEY_apostrophe
#define XKB_KEY_quoteright
#define XKB_KEY_parenleft
#define XKB_KEY_parenright
#define XKB_KEY_asterisk
#define XKB_KEY_plus
#define XKB_KEY_comma
#define XKB_KEY_minus
#define XKB_KEY_period
#define XKB_KEY_slash
#define XKB_KEY_0
#define XKB_KEY_1
#define XKB_KEY_2
#define XKB_KEY_3
#define XKB_KEY_4
#define XKB_KEY_5
#define XKB_KEY_6
#define XKB_KEY_7
#define XKB_KEY_8
#define XKB_KEY_9
#define XKB_KEY_colon
#define XKB_KEY_semicolon
#define XKB_KEY_less
#define XKB_KEY_equal
#define XKB_KEY_greater
#define XKB_KEY_question
#define XKB_KEY_at
#define XKB_KEY_A
#define XKB_KEY_B
#define XKB_KEY_C
#define XKB_KEY_D
#define XKB_KEY_E
#define XKB_KEY_F
#define XKB_KEY_G
#define XKB_KEY_H
#define XKB_KEY_I
#define XKB_KEY_J
#define XKB_KEY_K
#define XKB_KEY_L
#define XKB_KEY_M
#define XKB_KEY_N
#define XKB_KEY_O
#define XKB_KEY_P
#define XKB_KEY_Q
#define XKB_KEY_R
#define XKB_KEY_S
#define XKB_KEY_T
#define XKB_KEY_U
#define XKB_KEY_V
#define XKB_KEY_W
#define XKB_KEY_X
#define XKB_KEY_Y
#define XKB_KEY_Z
#define XKB_KEY_bracketleft
#define XKB_KEY_backslash
#define XKB_KEY_bracketright
#define XKB_KEY_asciicircum
#define XKB_KEY_underscore
#define XKB_KEY_grave
#define XKB_KEY_quoteleft
#define XKB_KEY_a
#define XKB_KEY_b
#define XKB_KEY_c
#define XKB_KEY_d
#define XKB_KEY_e
#define XKB_KEY_f
#define XKB_KEY_g
#define XKB_KEY_h
#define XKB_KEY_i
#define XKB_KEY_j
#define XKB_KEY_k
#define XKB_KEY_l
#define XKB_KEY_m
#define XKB_KEY_n
#define XKB_KEY_o
#define XKB_KEY_p
#define XKB_KEY_q
#define XKB_KEY_r
#define XKB_KEY_s
#define XKB_KEY_t
#define XKB_KEY_u
#define XKB_KEY_v
#define XKB_KEY_w
#define XKB_KEY_x
#define XKB_KEY_y
#define XKB_KEY_z
#define XKB_KEY_braceleft
#define XKB_KEY_bar
#define XKB_KEY_braceright
#define XKB_KEY_asciitilde

#define XKB_KEY_nobreakspace
#define XKB_KEY_exclamdown
#define XKB_KEY_cent
#define XKB_KEY_sterling
#define XKB_KEY_currency
#define XKB_KEY_yen
#define XKB_KEY_brokenbar
#define XKB_KEY_section
#define XKB_KEY_diaeresis
#define XKB_KEY_copyright
#define XKB_KEY_ordfeminine
#define XKB_KEY_guillemotleft
#define XKB_KEY_notsign
#define XKB_KEY_hyphen
#define XKB_KEY_registered
#define XKB_KEY_macron
#define XKB_KEY_degree
#define XKB_KEY_plusminus
#define XKB_KEY_twosuperior
#define XKB_KEY_threesuperior
#define XKB_KEY_acute
#define XKB_KEY_mu
#define XKB_KEY_paragraph
#define XKB_KEY_periodcentered
#define XKB_KEY_cedilla
#define XKB_KEY_onesuperior
#define XKB_KEY_masculine
#define XKB_KEY_guillemotright
#define XKB_KEY_onequarter
#define XKB_KEY_onehalf
#define XKB_KEY_threequarters
#define XKB_KEY_questiondown
#define XKB_KEY_Agrave
#define XKB_KEY_Aacute
#define XKB_KEY_Acircumflex
#define XKB_KEY_Atilde
#define XKB_KEY_Adiaeresis
#define XKB_KEY_Aring
#define XKB_KEY_AE
#define XKB_KEY_Ccedilla
#define XKB_KEY_Egrave
#define XKB_KEY_Eacute
#define XKB_KEY_Ecircumflex
#define XKB_KEY_Ediaeresis
#define XKB_KEY_Igrave
#define XKB_KEY_Iacute
#define XKB_KEY_Icircumflex
#define XKB_KEY_Idiaeresis
#define XKB_KEY_ETH
#define XKB_KEY_Eth
#define XKB_KEY_Ntilde
#define XKB_KEY_Ograve
#define XKB_KEY_Oacute
#define XKB_KEY_Ocircumflex
#define XKB_KEY_Otilde
#define XKB_KEY_Odiaeresis
#define XKB_KEY_multiply
#define XKB_KEY_Oslash
#define XKB_KEY_Ooblique
#define XKB_KEY_Ugrave
#define XKB_KEY_Uacute
#define XKB_KEY_Ucircumflex
#define XKB_KEY_Udiaeresis
#define XKB_KEY_Yacute
#define XKB_KEY_THORN
#define XKB_KEY_Thorn
#define XKB_KEY_ssharp
#define XKB_KEY_agrave
#define XKB_KEY_aacute
#define XKB_KEY_acircumflex
#define XKB_KEY_atilde
#define XKB_KEY_adiaeresis
#define XKB_KEY_aring
#define XKB_KEY_ae
#define XKB_KEY_ccedilla
#define XKB_KEY_egrave
#define XKB_KEY_eacute
#define XKB_KEY_ecircumflex
#define XKB_KEY_ediaeresis
#define XKB_KEY_igrave
#define XKB_KEY_iacute
#define XKB_KEY_icircumflex
#define XKB_KEY_idiaeresis
#define XKB_KEY_eth
#define XKB_KEY_ntilde
#define XKB_KEY_ograve
#define XKB_KEY_oacute
#define XKB_KEY_ocircumflex
#define XKB_KEY_otilde
#define XKB_KEY_odiaeresis
#define XKB_KEY_division
#define XKB_KEY_oslash
#define XKB_KEY_ooblique
#define XKB_KEY_ugrave
#define XKB_KEY_uacute
#define XKB_KEY_ucircumflex
#define XKB_KEY_udiaeresis
#define XKB_KEY_yacute
#define XKB_KEY_thorn
#define XKB_KEY_ydiaeresis

/*
 * Latin 2
 * Byte 3 = 1
 */

#define XKB_KEY_Aogonek
#define XKB_KEY_breve
#define XKB_KEY_Lstroke
#define XKB_KEY_Lcaron
#define XKB_KEY_Sacute
#define XKB_KEY_Scaron
#define XKB_KEY_Scedilla
#define XKB_KEY_Tcaron
#define XKB_KEY_Zacute
#define XKB_KEY_Zcaron
#define XKB_KEY_Zabovedot
#define XKB_KEY_aogonek
#define XKB_KEY_ogonek
#define XKB_KEY_lstroke
#define XKB_KEY_lcaron
#define XKB_KEY_sacute
#define XKB_KEY_caron
#define XKB_KEY_scaron
#define XKB_KEY_scedilla
#define XKB_KEY_tcaron
#define XKB_KEY_zacute
#define XKB_KEY_doubleacute
#define XKB_KEY_zcaron
#define XKB_KEY_zabovedot
#define XKB_KEY_Racute
#define XKB_KEY_Abreve
#define XKB_KEY_Lacute
#define XKB_KEY_Cacute
#define XKB_KEY_Ccaron
#define XKB_KEY_Eogonek
#define XKB_KEY_Ecaron
#define XKB_KEY_Dcaron
#define XKB_KEY_Dstroke
#define XKB_KEY_Nacute
#define XKB_KEY_Ncaron
#define XKB_KEY_Odoubleacute
#define XKB_KEY_Rcaron
#define XKB_KEY_Uring
#define XKB_KEY_Udoubleacute
#define XKB_KEY_Tcedilla
#define XKB_KEY_racute
#define XKB_KEY_abreve
#define XKB_KEY_lacute
#define XKB_KEY_cacute
#define XKB_KEY_ccaron
#define XKB_KEY_eogonek
#define XKB_KEY_ecaron
#define XKB_KEY_dcaron
#define XKB_KEY_dstroke
#define XKB_KEY_nacute
#define XKB_KEY_ncaron
#define XKB_KEY_odoubleacute
#define XKB_KEY_rcaron
#define XKB_KEY_uring
#define XKB_KEY_udoubleacute
#define XKB_KEY_tcedilla
#define XKB_KEY_abovedot

/*
 * Latin 3
 * Byte 3 = 2
 */

#define XKB_KEY_Hstroke
#define XKB_KEY_Hcircumflex
#define XKB_KEY_Iabovedot
#define XKB_KEY_Gbreve
#define XKB_KEY_Jcircumflex
#define XKB_KEY_hstroke
#define XKB_KEY_hcircumflex
#define XKB_KEY_idotless
#define XKB_KEY_gbreve
#define XKB_KEY_jcircumflex
#define XKB_KEY_Cabovedot
#define XKB_KEY_Ccircumflex
#define XKB_KEY_Gabovedot
#define XKB_KEY_Gcircumflex
#define XKB_KEY_Ubreve
#define XKB_KEY_Scircumflex
#define XKB_KEY_cabovedot
#define XKB_KEY_ccircumflex
#define XKB_KEY_gabovedot
#define XKB_KEY_gcircumflex
#define XKB_KEY_ubreve
#define XKB_KEY_scircumflex


/*
 * Latin 4
 * Byte 3 = 3
 */

#define XKB_KEY_kra
#define XKB_KEY_kappa
#define XKB_KEY_Rcedilla
#define XKB_KEY_Itilde
#define XKB_KEY_Lcedilla
#define XKB_KEY_Emacron
#define XKB_KEY_Gcedilla
#define XKB_KEY_Tslash
#define XKB_KEY_rcedilla
#define XKB_KEY_itilde
#define XKB_KEY_lcedilla
#define XKB_KEY_emacron
#define XKB_KEY_gcedilla
#define XKB_KEY_tslash
#define XKB_KEY_ENG
#define XKB_KEY_eng
#define XKB_KEY_Amacron
#define XKB_KEY_Iogonek
#define XKB_KEY_Eabovedot
#define XKB_KEY_Imacron
#define XKB_KEY_Ncedilla
#define XKB_KEY_Omacron
#define XKB_KEY_Kcedilla
#define XKB_KEY_Uogonek
#define XKB_KEY_Utilde
#define XKB_KEY_Umacron
#define XKB_KEY_amacron
#define XKB_KEY_iogonek
#define XKB_KEY_eabovedot
#define XKB_KEY_imacron
#define XKB_KEY_ncedilla
#define XKB_KEY_omacron
#define XKB_KEY_kcedilla
#define XKB_KEY_uogonek
#define XKB_KEY_utilde
#define XKB_KEY_umacron

/*
 * Latin 8
 */
#define XKB_KEY_Wcircumflex
#define XKB_KEY_wcircumflex
#define XKB_KEY_Ycircumflex
#define XKB_KEY_ycircumflex
#define XKB_KEY_Babovedot
#define XKB_KEY_babovedot
#define XKB_KEY_Dabovedot
#define XKB_KEY_dabovedot
#define XKB_KEY_Fabovedot
#define XKB_KEY_fabovedot
#define XKB_KEY_Mabovedot
#define XKB_KEY_mabovedot
#define XKB_KEY_Pabovedot
#define XKB_KEY_pabovedot
#define XKB_KEY_Sabovedot
#define XKB_KEY_sabovedot
#define XKB_KEY_Tabovedot
#define XKB_KEY_tabovedot
#define XKB_KEY_Wgrave
#define XKB_KEY_wgrave
#define XKB_KEY_Wacute
#define XKB_KEY_wacute
#define XKB_KEY_Wdiaeresis
#define XKB_KEY_wdiaeresis
#define XKB_KEY_Ygrave
#define XKB_KEY_ygrave

/*
 * Latin 9
 * Byte 3 = 0x13
 */

#define XKB_KEY_OE
#define XKB_KEY_oe
#define XKB_KEY_Ydiaeresis

/*
 * Katakana
 * Byte 3 = 4
 */

#define XKB_KEY_overline
#define XKB_KEY_kana_fullstop
#define XKB_KEY_kana_openingbracket
#define XKB_KEY_kana_closingbracket
#define XKB_KEY_kana_comma
#define XKB_KEY_kana_conjunctive
#define XKB_KEY_kana_middledot
#define XKB_KEY_kana_WO
#define XKB_KEY_kana_a
#define XKB_KEY_kana_i
#define XKB_KEY_kana_u
#define XKB_KEY_kana_e
#define XKB_KEY_kana_o
#define XKB_KEY_kana_ya
#define XKB_KEY_kana_yu
#define XKB_KEY_kana_yo
#define XKB_KEY_kana_tsu
#define XKB_KEY_kana_tu
#define XKB_KEY_prolongedsound
#define XKB_KEY_kana_A
#define XKB_KEY_kana_I
#define XKB_KEY_kana_U
#define XKB_KEY_kana_E
#define XKB_KEY_kana_O
#define XKB_KEY_kana_KA
#define XKB_KEY_kana_KI
#define XKB_KEY_kana_KU
#define XKB_KEY_kana_KE
#define XKB_KEY_kana_KO
#define XKB_KEY_kana_SA
#define XKB_KEY_kana_SHI
#define XKB_KEY_kana_SU
#define XKB_KEY_kana_SE
#define XKB_KEY_kana_SO
#define XKB_KEY_kana_TA
#define XKB_KEY_kana_CHI
#define XKB_KEY_kana_TI
#define XKB_KEY_kana_TSU
#define XKB_KEY_kana_TU
#define XKB_KEY_kana_TE
#define XKB_KEY_kana_TO
#define XKB_KEY_kana_NA
#define XKB_KEY_kana_NI
#define XKB_KEY_kana_NU
#define XKB_KEY_kana_NE
#define XKB_KEY_kana_NO
#define XKB_KEY_kana_HA
#define XKB_KEY_kana_HI
#define XKB_KEY_kana_FU
#define XKB_KEY_kana_HU
#define XKB_KEY_kana_HE
#define XKB_KEY_kana_HO
#define XKB_KEY_kana_MA
#define XKB_KEY_kana_MI
#define XKB_KEY_kana_MU
#define XKB_KEY_kana_ME
#define XKB_KEY_kana_MO
#define XKB_KEY_kana_YA
#define XKB_KEY_kana_YU
#define XKB_KEY_kana_YO
#define XKB_KEY_kana_RA
#define XKB_KEY_kana_RI
#define XKB_KEY_kana_RU
#define XKB_KEY_kana_RE
#define XKB_KEY_kana_RO
#define XKB_KEY_kana_WA
#define XKB_KEY_kana_N
#define XKB_KEY_voicedsound
#define XKB_KEY_semivoicedsound
#define XKB_KEY_kana_switch

/*
 * Arabic
 * Byte 3 = 5
 */

#define XKB_KEY_Farsi_0
#define XKB_KEY_Farsi_1
#define XKB_KEY_Farsi_2
#define XKB_KEY_Farsi_3
#define XKB_KEY_Farsi_4
#define XKB_KEY_Farsi_5
#define XKB_KEY_Farsi_6
#define XKB_KEY_Farsi_7
#define XKB_KEY_Farsi_8
#define XKB_KEY_Farsi_9
#define XKB_KEY_Arabic_percent
#define XKB_KEY_Arabic_superscript_alef
#define XKB_KEY_Arabic_tteh
#define XKB_KEY_Arabic_peh
#define XKB_KEY_Arabic_tcheh
#define XKB_KEY_Arabic_ddal
#define XKB_KEY_Arabic_rreh
#define XKB_KEY_Arabic_comma
#define XKB_KEY_Arabic_fullstop
#define XKB_KEY_Arabic_0
#define XKB_KEY_Arabic_1
#define XKB_KEY_Arabic_2
#define XKB_KEY_Arabic_3
#define XKB_KEY_Arabic_4
#define XKB_KEY_Arabic_5
#define XKB_KEY_Arabic_6
#define XKB_KEY_Arabic_7
#define XKB_KEY_Arabic_8
#define XKB_KEY_Arabic_9
#define XKB_KEY_Arabic_semicolon
#define XKB_KEY_Arabic_question_mark
#define XKB_KEY_Arabic_hamza
#define XKB_KEY_Arabic_maddaonalef
#define XKB_KEY_Arabic_hamzaonalef
#define XKB_KEY_Arabic_hamzaonwaw
#define XKB_KEY_Arabic_hamzaunderalef
#define XKB_KEY_Arabic_hamzaonyeh
#define XKB_KEY_Arabic_alef
#define XKB_KEY_Arabic_beh
#define XKB_KEY_Arabic_tehmarbuta
#define XKB_KEY_Arabic_teh
#define XKB_KEY_Arabic_theh
#define XKB_KEY_Arabic_jeem
#define XKB_KEY_Arabic_hah
#define XKB_KEY_Arabic_khah
#define XKB_KEY_Arabic_dal
#define XKB_KEY_Arabic_thal
#define XKB_KEY_Arabic_ra
#define XKB_KEY_Arabic_zain
#define XKB_KEY_Arabic_seen
#define XKB_KEY_Arabic_sheen
#define XKB_KEY_Arabic_sad
#define XKB_KEY_Arabic_dad
#define XKB_KEY_Arabic_tah
#define XKB_KEY_Arabic_zah
#define XKB_KEY_Arabic_ain
#define XKB_KEY_Arabic_ghain
#define XKB_KEY_Arabic_tatweel
#define XKB_KEY_Arabic_feh
#define XKB_KEY_Arabic_qaf
#define XKB_KEY_Arabic_kaf
#define XKB_KEY_Arabic_lam
#define XKB_KEY_Arabic_meem
#define XKB_KEY_Arabic_noon
#define XKB_KEY_Arabic_ha
#define XKB_KEY_Arabic_heh
#define XKB_KEY_Arabic_waw
#define XKB_KEY_Arabic_alefmaksura
#define XKB_KEY_Arabic_yeh
#define XKB_KEY_Arabic_fathatan
#define XKB_KEY_Arabic_dammatan
#define XKB_KEY_Arabic_kasratan
#define XKB_KEY_Arabic_fatha
#define XKB_KEY_Arabic_damma
#define XKB_KEY_Arabic_kasra
#define XKB_KEY_Arabic_shadda
#define XKB_KEY_Arabic_sukun
#define XKB_KEY_Arabic_madda_above
#define XKB_KEY_Arabic_hamza_above
#define XKB_KEY_Arabic_hamza_below
#define XKB_KEY_Arabic_jeh
#define XKB_KEY_Arabic_veh
#define XKB_KEY_Arabic_keheh
#define XKB_KEY_Arabic_gaf
#define XKB_KEY_Arabic_noon_ghunna
#define XKB_KEY_Arabic_heh_doachashmee
#define XKB_KEY_Farsi_yeh
#define XKB_KEY_Arabic_farsi_yeh
#define XKB_KEY_Arabic_yeh_baree
#define XKB_KEY_Arabic_heh_goal
#define XKB_KEY_Arabic_switch

/*
 * Cyrillic
 * Byte 3 = 6
 */
#define XKB_KEY_Cyrillic_GHE_bar
#define XKB_KEY_Cyrillic_ghe_bar
#define XKB_KEY_Cyrillic_ZHE_descender
#define XKB_KEY_Cyrillic_zhe_descender
#define XKB_KEY_Cyrillic_KA_descender
#define XKB_KEY_Cyrillic_ka_descender
#define XKB_KEY_Cyrillic_KA_vertstroke
#define XKB_KEY_Cyrillic_ka_vertstroke
#define XKB_KEY_Cyrillic_EN_descender
#define XKB_KEY_Cyrillic_en_descender
#define XKB_KEY_Cyrillic_U_straight
#define XKB_KEY_Cyrillic_u_straight
#define XKB_KEY_Cyrillic_U_straight_bar
#define XKB_KEY_Cyrillic_u_straight_bar
#define XKB_KEY_Cyrillic_HA_descender
#define XKB_KEY_Cyrillic_ha_descender
#define XKB_KEY_Cyrillic_CHE_descender
#define XKB_KEY_Cyrillic_che_descender
#define XKB_KEY_Cyrillic_CHE_vertstroke
#define XKB_KEY_Cyrillic_che_vertstroke
#define XKB_KEY_Cyrillic_SHHA
#define XKB_KEY_Cyrillic_shha

#define XKB_KEY_Cyrillic_SCHWA
#define XKB_KEY_Cyrillic_schwa
#define XKB_KEY_Cyrillic_I_macron
#define XKB_KEY_Cyrillic_i_macron
#define XKB_KEY_Cyrillic_O_bar
#define XKB_KEY_Cyrillic_o_bar
#define XKB_KEY_Cyrillic_U_macron
#define XKB_KEY_Cyrillic_u_macron

#define XKB_KEY_Serbian_dje
#define XKB_KEY_Macedonia_gje
#define XKB_KEY_Cyrillic_io
#define XKB_KEY_Ukrainian_ie
#define XKB_KEY_Ukranian_je
#define XKB_KEY_Macedonia_dse
#define XKB_KEY_Ukrainian_i
#define XKB_KEY_Ukranian_i
#define XKB_KEY_Ukrainian_yi
#define XKB_KEY_Ukranian_yi
#define XKB_KEY_Cyrillic_je
#define XKB_KEY_Serbian_je
#define XKB_KEY_Cyrillic_lje
#define XKB_KEY_Serbian_lje
#define XKB_KEY_Cyrillic_nje
#define XKB_KEY_Serbian_nje
#define XKB_KEY_Serbian_tshe
#define XKB_KEY_Macedonia_kje
#define XKB_KEY_Ukrainian_ghe_with_upturn
#define XKB_KEY_Byelorussian_shortu
#define XKB_KEY_Cyrillic_dzhe
#define XKB_KEY_Serbian_dze
#define XKB_KEY_numerosign
#define XKB_KEY_Serbian_DJE
#define XKB_KEY_Macedonia_GJE
#define XKB_KEY_Cyrillic_IO
#define XKB_KEY_Ukrainian_IE
#define XKB_KEY_Ukranian_JE
#define XKB_KEY_Macedonia_DSE
#define XKB_KEY_Ukrainian_I
#define XKB_KEY_Ukranian_I
#define XKB_KEY_Ukrainian_YI
#define XKB_KEY_Ukranian_YI
#define XKB_KEY_Cyrillic_JE
#define XKB_KEY_Serbian_JE
#define XKB_KEY_Cyrillic_LJE
#define XKB_KEY_Serbian_LJE
#define XKB_KEY_Cyrillic_NJE
#define XKB_KEY_Serbian_NJE
#define XKB_KEY_Serbian_TSHE
#define XKB_KEY_Macedonia_KJE
#define XKB_KEY_Ukrainian_GHE_WITH_UPTURN
#define XKB_KEY_Byelorussian_SHORTU
#define XKB_KEY_Cyrillic_DZHE
#define XKB_KEY_Serbian_DZE
#define XKB_KEY_Cyrillic_yu
#define XKB_KEY_Cyrillic_a
#define XKB_KEY_Cyrillic_be
#define XKB_KEY_Cyrillic_tse
#define XKB_KEY_Cyrillic_de
#define XKB_KEY_Cyrillic_ie
#define XKB_KEY_Cyrillic_ef
#define XKB_KEY_Cyrillic_ghe
#define XKB_KEY_Cyrillic_ha
#define XKB_KEY_Cyrillic_i
#define XKB_KEY_Cyrillic_shorti
#define XKB_KEY_Cyrillic_ka
#define XKB_KEY_Cyrillic_el
#define XKB_KEY_Cyrillic_em
#define XKB_KEY_Cyrillic_en
#define XKB_KEY_Cyrillic_o
#define XKB_KEY_Cyrillic_pe
#define XKB_KEY_Cyrillic_ya
#define XKB_KEY_Cyrillic_er
#define XKB_KEY_Cyrillic_es
#define XKB_KEY_Cyrillic_te
#define XKB_KEY_Cyrillic_u
#define XKB_KEY_Cyrillic_zhe
#define XKB_KEY_Cyrillic_ve
#define XKB_KEY_Cyrillic_softsign
#define XKB_KEY_Cyrillic_yeru
#define XKB_KEY_Cyrillic_ze
#define XKB_KEY_Cyrillic_sha
#define XKB_KEY_Cyrillic_e
#define XKB_KEY_Cyrillic_shcha
#define XKB_KEY_Cyrillic_che
#define XKB_KEY_Cyrillic_hardsign
#define XKB_KEY_Cyrillic_YU
#define XKB_KEY_Cyrillic_A
#define XKB_KEY_Cyrillic_BE
#define XKB_KEY_Cyrillic_TSE
#define XKB_KEY_Cyrillic_DE
#define XKB_KEY_Cyrillic_IE
#define XKB_KEY_Cyrillic_EF
#define XKB_KEY_Cyrillic_GHE
#define XKB_KEY_Cyrillic_HA
#define XKB_KEY_Cyrillic_I
#define XKB_KEY_Cyrillic_SHORTI
#define XKB_KEY_Cyrillic_KA
#define XKB_KEY_Cyrillic_EL
#define XKB_KEY_Cyrillic_EM
#define XKB_KEY_Cyrillic_EN
#define XKB_KEY_Cyrillic_O
#define XKB_KEY_Cyrillic_PE
#define XKB_KEY_Cyrillic_YA
#define XKB_KEY_Cyrillic_ER
#define XKB_KEY_Cyrillic_ES
#define XKB_KEY_Cyrillic_TE
#define XKB_KEY_Cyrillic_U
#define XKB_KEY_Cyrillic_ZHE
#define XKB_KEY_Cyrillic_VE
#define XKB_KEY_Cyrillic_SOFTSIGN
#define XKB_KEY_Cyrillic_YERU
#define XKB_KEY_Cyrillic_ZE
#define XKB_KEY_Cyrillic_SHA
#define XKB_KEY_Cyrillic_E
#define XKB_KEY_Cyrillic_SHCHA
#define XKB_KEY_Cyrillic_CHE
#define XKB_KEY_Cyrillic_HARDSIGN

/*
 * Greek
 * (based on an early draft of, and not quite identical to, ISO/IEC 8859-7)
 * Byte 3 = 7
 */

#define XKB_KEY_Greek_ALPHAaccent
#define XKB_KEY_Greek_EPSILONaccent
#define XKB_KEY_Greek_ETAaccent
#define XKB_KEY_Greek_IOTAaccent
#define XKB_KEY_Greek_IOTAdieresis
#define XKB_KEY_Greek_IOTAdiaeresis
#define XKB_KEY_Greek_OMICRONaccent
#define XKB_KEY_Greek_UPSILONaccent
#define XKB_KEY_Greek_UPSILONdieresis
#define XKB_KEY_Greek_OMEGAaccent
#define XKB_KEY_Greek_accentdieresis
#define XKB_KEY_Greek_horizbar
#define XKB_KEY_Greek_alphaaccent
#define XKB_KEY_Greek_epsilonaccent
#define XKB_KEY_Greek_etaaccent
#define XKB_KEY_Greek_iotaaccent
#define XKB_KEY_Greek_iotadieresis
#define XKB_KEY_Greek_iotaaccentdieresis
#define XKB_KEY_Greek_omicronaccent
#define XKB_KEY_Greek_upsilonaccent
#define XKB_KEY_Greek_upsilondieresis
#define XKB_KEY_Greek_upsilonaccentdieresis
#define XKB_KEY_Greek_omegaaccent
#define XKB_KEY_Greek_ALPHA
#define XKB_KEY_Greek_BETA
#define XKB_KEY_Greek_GAMMA
#define XKB_KEY_Greek_DELTA
#define XKB_KEY_Greek_EPSILON
#define XKB_KEY_Greek_ZETA
#define XKB_KEY_Greek_ETA
#define XKB_KEY_Greek_THETA
#define XKB_KEY_Greek_IOTA
#define XKB_KEY_Greek_KAPPA
#define XKB_KEY_Greek_LAMDA
#define XKB_KEY_Greek_LAMBDA
#define XKB_KEY_Greek_MU
#define XKB_KEY_Greek_NU
#define XKB_KEY_Greek_XI
#define XKB_KEY_Greek_OMICRON
#define XKB_KEY_Greek_PI
#define XKB_KEY_Greek_RHO
#define XKB_KEY_Greek_SIGMA
#define XKB_KEY_Greek_TAU
#define XKB_KEY_Greek_UPSILON
#define XKB_KEY_Greek_PHI
#define XKB_KEY_Greek_CHI
#define XKB_KEY_Greek_PSI
#define XKB_KEY_Greek_OMEGA
#define XKB_KEY_Greek_alpha
#define XKB_KEY_Greek_beta
#define XKB_KEY_Greek_gamma
#define XKB_KEY_Greek_delta
#define XKB_KEY_Greek_epsilon
#define XKB_KEY_Greek_zeta
#define XKB_KEY_Greek_eta
#define XKB_KEY_Greek_theta
#define XKB_KEY_Greek_iota
#define XKB_KEY_Greek_kappa
#define XKB_KEY_Greek_lamda
#define XKB_KEY_Greek_lambda
#define XKB_KEY_Greek_mu
#define XKB_KEY_Greek_nu
#define XKB_KEY_Greek_xi
#define XKB_KEY_Greek_omicron
#define XKB_KEY_Greek_pi
#define XKB_KEY_Greek_rho
#define XKB_KEY_Greek_sigma
#define XKB_KEY_Greek_finalsmallsigma
#define XKB_KEY_Greek_tau
#define XKB_KEY_Greek_upsilon
#define XKB_KEY_Greek_phi
#define XKB_KEY_Greek_chi
#define XKB_KEY_Greek_psi
#define XKB_KEY_Greek_omega
#define XKB_KEY_Greek_switch

/*
 * Technical
 * (from the DEC VT330/VT420 Technical Character Set, http://vt100.net/charsets/technical.html)
 * Byte 3 = 8
 */

#define XKB_KEY_leftradical
#define XKB_KEY_topleftradical
#define XKB_KEY_horizconnector
#define XKB_KEY_topintegral
#define XKB_KEY_botintegral
#define XKB_KEY_vertconnector
#define XKB_KEY_topleftsqbracket
#define XKB_KEY_botleftsqbracket
#define XKB_KEY_toprightsqbracket
#define XKB_KEY_botrightsqbracket
#define XKB_KEY_topleftparens
#define XKB_KEY_botleftparens
#define XKB_KEY_toprightparens
#define XKB_KEY_botrightparens
#define XKB_KEY_leftmiddlecurlybrace
#define XKB_KEY_rightmiddlecurlybrace
#define XKB_KEY_topleftsummation
#define XKB_KEY_botleftsummation
#define XKB_KEY_topvertsummationconnector
#define XKB_KEY_botvertsummationconnector
#define XKB_KEY_toprightsummation
#define XKB_KEY_botrightsummation
#define XKB_KEY_rightmiddlesummation
#define XKB_KEY_lessthanequal
#define XKB_KEY_notequal
#define XKB_KEY_greaterthanequal
#define XKB_KEY_integral
#define XKB_KEY_therefore
#define XKB_KEY_variation
#define XKB_KEY_infinity
#define XKB_KEY_nabla
#define XKB_KEY_approximate
#define XKB_KEY_similarequal
#define XKB_KEY_ifonlyif
#define XKB_KEY_implies
#define XKB_KEY_identical
#define XKB_KEY_radical
#define XKB_KEY_includedin
#define XKB_KEY_includes
#define XKB_KEY_intersection
#define XKB_KEY_union
#define XKB_KEY_logicaland
#define XKB_KEY_logicalor
#define XKB_KEY_partialderivative
#define XKB_KEY_function
#define XKB_KEY_leftarrow
#define XKB_KEY_uparrow
#define XKB_KEY_rightarrow
#define XKB_KEY_downarrow

/*
 * Special
 * (from the DEC VT100 Special Graphics Character Set)
 * Byte 3 = 9
 */

#define XKB_KEY_blank
#define XKB_KEY_soliddiamond
#define XKB_KEY_checkerboard
#define XKB_KEY_ht
#define XKB_KEY_ff
#define XKB_KEY_cr
#define XKB_KEY_lf
#define XKB_KEY_nl
#define XKB_KEY_vt
#define XKB_KEY_lowrightcorner
#define XKB_KEY_uprightcorner
#define XKB_KEY_upleftcorner
#define XKB_KEY_lowleftcorner
#define XKB_KEY_crossinglines
#define XKB_KEY_horizlinescan1
#define XKB_KEY_horizlinescan3
#define XKB_KEY_horizlinescan5
#define XKB_KEY_horizlinescan7
#define XKB_KEY_horizlinescan9
#define XKB_KEY_leftt
#define XKB_KEY_rightt
#define XKB_KEY_bott
#define XKB_KEY_topt
#define XKB_KEY_vertbar

/*
 * Publishing
 * (these are probably from a long forgotten DEC Publishing
 * font that once shipped with DECwrite)
 * Byte 3 = 0x0a
 */

#define XKB_KEY_emspace
#define XKB_KEY_enspace
#define XKB_KEY_em3space
#define XKB_KEY_em4space
#define XKB_KEY_digitspace
#define XKB_KEY_punctspace
#define XKB_KEY_thinspace
#define XKB_KEY_hairspace
#define XKB_KEY_emdash
#define XKB_KEY_endash
#define XKB_KEY_signifblank
#define XKB_KEY_ellipsis
#define XKB_KEY_doubbaselinedot
#define XKB_KEY_onethird
#define XKB_KEY_twothirds
#define XKB_KEY_onefifth
#define XKB_KEY_twofifths
#define XKB_KEY_threefifths
#define XKB_KEY_fourfifths
#define XKB_KEY_onesixth
#define XKB_KEY_fivesixths
#define XKB_KEY_careof
#define XKB_KEY_figdash
#define XKB_KEY_leftanglebracket
#define XKB_KEY_decimalpoint
#define XKB_KEY_rightanglebracket
#define XKB_KEY_marker
#define XKB_KEY_oneeighth
#define XKB_KEY_threeeighths
#define XKB_KEY_fiveeighths
#define XKB_KEY_seveneighths
#define XKB_KEY_trademark
#define XKB_KEY_signaturemark
#define XKB_KEY_trademarkincircle
#define XKB_KEY_leftopentriangle
#define XKB_KEY_rightopentriangle
#define XKB_KEY_emopencircle
#define XKB_KEY_emopenrectangle
#define XKB_KEY_leftsinglequotemark
#define XKB_KEY_rightsinglequotemark
#define XKB_KEY_leftdoublequotemark
#define XKB_KEY_rightdoublequotemark
#define XKB_KEY_prescription
#define XKB_KEY_permille
#define XKB_KEY_minutes
#define XKB_KEY_seconds
#define XKB_KEY_latincross
#define XKB_KEY_hexagram
#define XKB_KEY_filledrectbullet
#define XKB_KEY_filledlefttribullet
#define XKB_KEY_filledrighttribullet
#define XKB_KEY_emfilledcircle
#define XKB_KEY_emfilledrect
#define XKB_KEY_enopencircbullet
#define XKB_KEY_enopensquarebullet
#define XKB_KEY_openrectbullet
#define XKB_KEY_opentribulletup
#define XKB_KEY_opentribulletdown
#define XKB_KEY_openstar
#define XKB_KEY_enfilledcircbullet
#define XKB_KEY_enfilledsqbullet
#define XKB_KEY_filledtribulletup
#define XKB_KEY_filledtribulletdown
#define XKB_KEY_leftpointer
#define XKB_KEY_rightpointer
#define XKB_KEY_club
#define XKB_KEY_diamond
#define XKB_KEY_heart
#define XKB_KEY_maltesecross
#define XKB_KEY_dagger
#define XKB_KEY_doubledagger
#define XKB_KEY_checkmark
#define XKB_KEY_ballotcross
#define XKB_KEY_musicalsharp
#define XKB_KEY_musicalflat
#define XKB_KEY_malesymbol
#define XKB_KEY_femalesymbol
#define XKB_KEY_telephone
#define XKB_KEY_telephonerecorder
#define XKB_KEY_phonographcopyright
#define XKB_KEY_caret
#define XKB_KEY_singlelowquotemark
#define XKB_KEY_doublelowquotemark
#define XKB_KEY_cursor

/*
 * APL
 * Byte 3 = 0x0b
 */

#define XKB_KEY_leftcaret
#define XKB_KEY_rightcaret
#define XKB_KEY_downcaret
#define XKB_KEY_upcaret
#define XKB_KEY_overbar
#define XKB_KEY_downtack
#define XKB_KEY_upshoe
#define XKB_KEY_downstile
#define XKB_KEY_underbar
#define XKB_KEY_jot
#define XKB_KEY_quad
#define XKB_KEY_uptack
#define XKB_KEY_circle
#define XKB_KEY_upstile
#define XKB_KEY_downshoe
#define XKB_KEY_rightshoe
#define XKB_KEY_leftshoe
#define XKB_KEY_lefttack
#define XKB_KEY_righttack

/*
 * Hebrew
 * Byte 3 = 0x0c
 */

#define XKB_KEY_hebrew_doublelowline
#define XKB_KEY_hebrew_aleph
#define XKB_KEY_hebrew_bet
#define XKB_KEY_hebrew_beth
#define XKB_KEY_hebrew_gimel
#define XKB_KEY_hebrew_gimmel
#define XKB_KEY_hebrew_dalet
#define XKB_KEY_hebrew_daleth
#define XKB_KEY_hebrew_he
#define XKB_KEY_hebrew_waw
#define XKB_KEY_hebrew_zain
#define XKB_KEY_hebrew_zayin
#define XKB_KEY_hebrew_chet
#define XKB_KEY_hebrew_het
#define XKB_KEY_hebrew_tet
#define XKB_KEY_hebrew_teth
#define XKB_KEY_hebrew_yod
#define XKB_KEY_hebrew_finalkaph
#define XKB_KEY_hebrew_kaph
#define XKB_KEY_hebrew_lamed
#define XKB_KEY_hebrew_finalmem
#define XKB_KEY_hebrew_mem
#define XKB_KEY_hebrew_finalnun
#define XKB_KEY_hebrew_nun
#define XKB_KEY_hebrew_samech
#define XKB_KEY_hebrew_samekh
#define XKB_KEY_hebrew_ayin
#define XKB_KEY_hebrew_finalpe
#define XKB_KEY_hebrew_pe
#define XKB_KEY_hebrew_finalzade
#define XKB_KEY_hebrew_finalzadi
#define XKB_KEY_hebrew_zade
#define XKB_KEY_hebrew_zadi
#define XKB_KEY_hebrew_qoph
#define XKB_KEY_hebrew_kuf
#define XKB_KEY_hebrew_resh
#define XKB_KEY_hebrew_shin
#define XKB_KEY_hebrew_taw
#define XKB_KEY_hebrew_taf
#define XKB_KEY_Hebrew_switch

/*
 * Thai
 * Byte 3 = 0x0d
 */

#define XKB_KEY_Thai_kokai
#define XKB_KEY_Thai_khokhai
#define XKB_KEY_Thai_khokhuat
#define XKB_KEY_Thai_khokhwai
#define XKB_KEY_Thai_khokhon
#define XKB_KEY_Thai_khorakhang
#define XKB_KEY_Thai_ngongu
#define XKB_KEY_Thai_chochan
#define XKB_KEY_Thai_choching
#define XKB_KEY_Thai_chochang
#define XKB_KEY_Thai_soso
#define XKB_KEY_Thai_chochoe
#define XKB_KEY_Thai_yoying
#define XKB_KEY_Thai_dochada
#define XKB_KEY_Thai_topatak
#define XKB_KEY_Thai_thothan
#define XKB_KEY_Thai_thonangmontho
#define XKB_KEY_Thai_thophuthao
#define XKB_KEY_Thai_nonen
#define XKB_KEY_Thai_dodek
#define XKB_KEY_Thai_totao
#define XKB_KEY_Thai_thothung
#define XKB_KEY_Thai_thothahan
#define XKB_KEY_Thai_thothong
#define XKB_KEY_Thai_nonu
#define XKB_KEY_Thai_bobaimai
#define XKB_KEY_Thai_popla
#define XKB_KEY_Thai_phophung
#define XKB_KEY_Thai_fofa
#define XKB_KEY_Thai_phophan
#define XKB_KEY_Thai_fofan
#define XKB_KEY_Thai_phosamphao
#define XKB_KEY_Thai_moma
#define XKB_KEY_Thai_yoyak
#define XKB_KEY_Thai_rorua
#define XKB_KEY_Thai_ru
#define XKB_KEY_Thai_loling
#define XKB_KEY_Thai_lu
#define XKB_KEY_Thai_wowaen
#define XKB_KEY_Thai_sosala
#define XKB_KEY_Thai_sorusi
#define XKB_KEY_Thai_sosua
#define XKB_KEY_Thai_hohip
#define XKB_KEY_Thai_lochula
#define XKB_KEY_Thai_oang
#define XKB_KEY_Thai_honokhuk
#define XKB_KEY_Thai_paiyannoi
#define XKB_KEY_Thai_saraa
#define XKB_KEY_Thai_maihanakat
#define XKB_KEY_Thai_saraaa
#define XKB_KEY_Thai_saraam
#define XKB_KEY_Thai_sarai
#define XKB_KEY_Thai_saraii
#define XKB_KEY_Thai_saraue
#define XKB_KEY_Thai_sarauee
#define XKB_KEY_Thai_sarau
#define XKB_KEY_Thai_sarauu
#define XKB_KEY_Thai_phinthu
#define XKB_KEY_Thai_maihanakat_maitho
#define XKB_KEY_Thai_baht
#define XKB_KEY_Thai_sarae
#define XKB_KEY_Thai_saraae
#define XKB_KEY_Thai_sarao
#define XKB_KEY_Thai_saraaimaimuan
#define XKB_KEY_Thai_saraaimaimalai
#define XKB_KEY_Thai_lakkhangyao
#define XKB_KEY_Thai_maiyamok
#define XKB_KEY_Thai_maitaikhu
#define XKB_KEY_Thai_maiek
#define XKB_KEY_Thai_maitho
#define XKB_KEY_Thai_maitri
#define XKB_KEY_Thai_maichattawa
#define XKB_KEY_Thai_thanthakhat
#define XKB_KEY_Thai_nikhahit
#define XKB_KEY_Thai_leksun
#define XKB_KEY_Thai_leknung
#define XKB_KEY_Thai_leksong
#define XKB_KEY_Thai_leksam
#define XKB_KEY_Thai_leksi
#define XKB_KEY_Thai_lekha
#define XKB_KEY_Thai_lekhok
#define XKB_KEY_Thai_lekchet
#define XKB_KEY_Thai_lekpaet
#define XKB_KEY_Thai_lekkao

/*
 * Korean
 * Byte 3 = 0x0e
 */


#define XKB_KEY_Hangul
#define XKB_KEY_Hangul_Start
#define XKB_KEY_Hangul_End
#define XKB_KEY_Hangul_Hanja
#define XKB_KEY_Hangul_Jamo
#define XKB_KEY_Hangul_Romaja
#define XKB_KEY_Hangul_Codeinput
#define XKB_KEY_Hangul_Jeonja
#define XKB_KEY_Hangul_Banja
#define XKB_KEY_Hangul_PreHanja
#define XKB_KEY_Hangul_PostHanja
#define XKB_KEY_Hangul_SingleCandidate
#define XKB_KEY_Hangul_MultipleCandidate
#define XKB_KEY_Hangul_PreviousCandidate
#define XKB_KEY_Hangul_Special
#define XKB_KEY_Hangul_switch

/* Hangul Consonant Characters */
#define XKB_KEY_Hangul_Kiyeog
#define XKB_KEY_Hangul_SsangKiyeog
#define XKB_KEY_Hangul_KiyeogSios
#define XKB_KEY_Hangul_Nieun
#define XKB_KEY_Hangul_NieunJieuj
#define XKB_KEY_Hangul_NieunHieuh
#define XKB_KEY_Hangul_Dikeud
#define XKB_KEY_Hangul_SsangDikeud
#define XKB_KEY_Hangul_Rieul
#define XKB_KEY_Hangul_RieulKiyeog
#define XKB_KEY_Hangul_RieulMieum
#define XKB_KEY_Hangul_RieulPieub
#define XKB_KEY_Hangul_RieulSios
#define XKB_KEY_Hangul_RieulTieut
#define XKB_KEY_Hangul_RieulPhieuf
#define XKB_KEY_Hangul_RieulHieuh
#define XKB_KEY_Hangul_Mieum
#define XKB_KEY_Hangul_Pieub
#define XKB_KEY_Hangul_SsangPieub
#define XKB_KEY_Hangul_PieubSios
#define XKB_KEY_Hangul_Sios
#define XKB_KEY_Hangul_SsangSios
#define XKB_KEY_Hangul_Ieung
#define XKB_KEY_Hangul_Jieuj
#define XKB_KEY_Hangul_SsangJieuj
#define XKB_KEY_Hangul_Cieuc
#define XKB_KEY_Hangul_Khieuq
#define XKB_KEY_Hangul_Tieut
#define XKB_KEY_Hangul_Phieuf
#define XKB_KEY_Hangul_Hieuh

/* Hangul Vowel Characters */
#define XKB_KEY_Hangul_A
#define XKB_KEY_Hangul_AE
#define XKB_KEY_Hangul_YA
#define XKB_KEY_Hangul_YAE
#define XKB_KEY_Hangul_EO
#define XKB_KEY_Hangul_E
#define XKB_KEY_Hangul_YEO
#define XKB_KEY_Hangul_YE
#define XKB_KEY_Hangul_O
#define XKB_KEY_Hangul_WA
#define XKB_KEY_Hangul_WAE
#define XKB_KEY_Hangul_OE
#define XKB_KEY_Hangul_YO
#define XKB_KEY_Hangul_U
#define XKB_KEY_Hangul_WEO
#define XKB_KEY_Hangul_WE
#define XKB_KEY_Hangul_WI
#define XKB_KEY_Hangul_YU
#define XKB_KEY_Hangul_EU
#define XKB_KEY_Hangul_YI
#define XKB_KEY_Hangul_I

/* Hangul syllable-final (JongSeong) Characters */
#define XKB_KEY_Hangul_J_Kiyeog
#define XKB_KEY_Hangul_J_SsangKiyeog
#define XKB_KEY_Hangul_J_KiyeogSios
#define XKB_KEY_Hangul_J_Nieun
#define XKB_KEY_Hangul_J_NieunJieuj
#define XKB_KEY_Hangul_J_NieunHieuh
#define XKB_KEY_Hangul_J_Dikeud
#define XKB_KEY_Hangul_J_Rieul
#define XKB_KEY_Hangul_J_RieulKiyeog
#define XKB_KEY_Hangul_J_RieulMieum
#define XKB_KEY_Hangul_J_RieulPieub
#define XKB_KEY_Hangul_J_RieulSios
#define XKB_KEY_Hangul_J_RieulTieut
#define XKB_KEY_Hangul_J_RieulPhieuf
#define XKB_KEY_Hangul_J_RieulHieuh
#define XKB_KEY_Hangul_J_Mieum
#define XKB_KEY_Hangul_J_Pieub
#define XKB_KEY_Hangul_J_PieubSios
#define XKB_KEY_Hangul_J_Sios
#define XKB_KEY_Hangul_J_SsangSios
#define XKB_KEY_Hangul_J_Ieung
#define XKB_KEY_Hangul_J_Jieuj
#define XKB_KEY_Hangul_J_Cieuc
#define XKB_KEY_Hangul_J_Khieuq
#define XKB_KEY_Hangul_J_Tieut
#define XKB_KEY_Hangul_J_Phieuf
#define XKB_KEY_Hangul_J_Hieuh

/* Ancient Hangul Consonant Characters */
#define XKB_KEY_Hangul_RieulYeorinHieuh
#define XKB_KEY_Hangul_SunkyeongeumMieum
#define XKB_KEY_Hangul_SunkyeongeumPieub
#define XKB_KEY_Hangul_PanSios
#define XKB_KEY_Hangul_KkogjiDalrinIeung
#define XKB_KEY_Hangul_SunkyeongeumPhieuf
#define XKB_KEY_Hangul_YeorinHieuh

/* Ancient Hangul Vowel Characters */
#define XKB_KEY_Hangul_AraeA
#define XKB_KEY_Hangul_AraeAE

/* Ancient Hangul syllable-final (JongSeong) Characters */
#define XKB_KEY_Hangul_J_PanSios
#define XKB_KEY_Hangul_J_KkogjiDalrinIeung
#define XKB_KEY_Hangul_J_YeorinHieuh

/* Korean currency symbol */
#define XKB_KEY_Korean_Won


/*
 * Armenian
 */

#define XKB_KEY_Armenian_ligature_ew
#define XKB_KEY_Armenian_full_stop
#define XKB_KEY_Armenian_verjaket
#define XKB_KEY_Armenian_separation_mark
#define XKB_KEY_Armenian_but
#define XKB_KEY_Armenian_hyphen
#define XKB_KEY_Armenian_yentamna
#define XKB_KEY_Armenian_exclam
#define XKB_KEY_Armenian_amanak
#define XKB_KEY_Armenian_accent
#define XKB_KEY_Armenian_shesht
#define XKB_KEY_Armenian_question
#define XKB_KEY_Armenian_paruyk
#define XKB_KEY_Armenian_AYB
#define XKB_KEY_Armenian_ayb
#define XKB_KEY_Armenian_BEN
#define XKB_KEY_Armenian_ben
#define XKB_KEY_Armenian_GIM
#define XKB_KEY_Armenian_gim
#define XKB_KEY_Armenian_DA
#define XKB_KEY_Armenian_da
#define XKB_KEY_Armenian_YECH
#define XKB_KEY_Armenian_yech
#define XKB_KEY_Armenian_ZA
#define XKB_KEY_Armenian_za
#define XKB_KEY_Armenian_E
#define XKB_KEY_Armenian_e
#define XKB_KEY_Armenian_AT
#define XKB_KEY_Armenian_at
#define XKB_KEY_Armenian_TO
#define XKB_KEY_Armenian_to
#define XKB_KEY_Armenian_ZHE
#define XKB_KEY_Armenian_zhe
#define XKB_KEY_Armenian_INI
#define XKB_KEY_Armenian_ini
#define XKB_KEY_Armenian_LYUN
#define XKB_KEY_Armenian_lyun
#define XKB_KEY_Armenian_KHE
#define XKB_KEY_Armenian_khe
#define XKB_KEY_Armenian_TSA
#define XKB_KEY_Armenian_tsa
#define XKB_KEY_Armenian_KEN
#define XKB_KEY_Armenian_ken
#define XKB_KEY_Armenian_HO
#define XKB_KEY_Armenian_ho
#define XKB_KEY_Armenian_DZA
#define XKB_KEY_Armenian_dza
#define XKB_KEY_Armenian_GHAT
#define XKB_KEY_Armenian_ghat
#define XKB_KEY_Armenian_TCHE
#define XKB_KEY_Armenian_tche
#define XKB_KEY_Armenian_MEN
#define XKB_KEY_Armenian_men
#define XKB_KEY_Armenian_HI
#define XKB_KEY_Armenian_hi
#define XKB_KEY_Armenian_NU
#define XKB_KEY_Armenian_nu
#define XKB_KEY_Armenian_SHA
#define XKB_KEY_Armenian_sha
#define XKB_KEY_Armenian_VO
#define XKB_KEY_Armenian_vo
#define XKB_KEY_Armenian_CHA
#define XKB_KEY_Armenian_cha
#define XKB_KEY_Armenian_PE
#define XKB_KEY_Armenian_pe
#define XKB_KEY_Armenian_JE
#define XKB_KEY_Armenian_je
#define XKB_KEY_Armenian_RA
#define XKB_KEY_Armenian_ra
#define XKB_KEY_Armenian_SE
#define XKB_KEY_Armenian_se
#define XKB_KEY_Armenian_VEV
#define XKB_KEY_Armenian_vev
#define XKB_KEY_Armenian_TYUN
#define XKB_KEY_Armenian_tyun
#define XKB_KEY_Armenian_RE
#define XKB_KEY_Armenian_re
#define XKB_KEY_Armenian_TSO
#define XKB_KEY_Armenian_tso
#define XKB_KEY_Armenian_VYUN
#define XKB_KEY_Armenian_vyun
#define XKB_KEY_Armenian_PYUR
#define XKB_KEY_Armenian_pyur
#define XKB_KEY_Armenian_KE
#define XKB_KEY_Armenian_ke
#define XKB_KEY_Armenian_O
#define XKB_KEY_Armenian_o
#define XKB_KEY_Armenian_FE
#define XKB_KEY_Armenian_fe
#define XKB_KEY_Armenian_apostrophe

/*
 * Georgian
 */

#define XKB_KEY_Georgian_an
#define XKB_KEY_Georgian_ban
#define XKB_KEY_Georgian_gan
#define XKB_KEY_Georgian_don
#define XKB_KEY_Georgian_en
#define XKB_KEY_Georgian_vin
#define XKB_KEY_Georgian_zen
#define XKB_KEY_Georgian_tan
#define XKB_KEY_Georgian_in
#define XKB_KEY_Georgian_kan
#define XKB_KEY_Georgian_las
#define XKB_KEY_Georgian_man
#define XKB_KEY_Georgian_nar
#define XKB_KEY_Georgian_on
#define XKB_KEY_Georgian_par
#define XKB_KEY_Georgian_zhar
#define XKB_KEY_Georgian_rae
#define XKB_KEY_Georgian_san
#define XKB_KEY_Georgian_tar
#define XKB_KEY_Georgian_un
#define XKB_KEY_Georgian_phar
#define XKB_KEY_Georgian_khar
#define XKB_KEY_Georgian_ghan
#define XKB_KEY_Georgian_qar
#define XKB_KEY_Georgian_shin
#define XKB_KEY_Georgian_chin
#define XKB_KEY_Georgian_can
#define XKB_KEY_Georgian_jil
#define XKB_KEY_Georgian_cil
#define XKB_KEY_Georgian_char
#define XKB_KEY_Georgian_xan
#define XKB_KEY_Georgian_jhan
#define XKB_KEY_Georgian_hae
#define XKB_KEY_Georgian_he
#define XKB_KEY_Georgian_hie
#define XKB_KEY_Georgian_we
#define XKB_KEY_Georgian_har
#define XKB_KEY_Georgian_hoe
#define XKB_KEY_Georgian_fi

/*
 * Azeri (and other Turkic or Caucasian languages)
 */

/* latin */
#define XKB_KEY_Xabovedot
#define XKB_KEY_Ibreve
#define XKB_KEY_Zstroke
#define XKB_KEY_Gcaron
#define XKB_KEY_Ocaron
#define XKB_KEY_Obarred
#define XKB_KEY_xabovedot
#define XKB_KEY_ibreve
#define XKB_KEY_zstroke
#define XKB_KEY_gcaron
#define XKB_KEY_ocaron
#define XKB_KEY_obarred
#define XKB_KEY_SCHWA
#define XKB_KEY_schwa
#define XKB_KEY_EZH
#define XKB_KEY_ezh
/* those are not really Caucasus */
/* For Inupiak */
#define XKB_KEY_Lbelowdot
#define XKB_KEY_lbelowdot

/*
 * Vietnamese
 */

#define XKB_KEY_Abelowdot
#define XKB_KEY_abelowdot
#define XKB_KEY_Ahook
#define XKB_KEY_ahook
#define XKB_KEY_Acircumflexacute
#define XKB_KEY_acircumflexacute
#define XKB_KEY_Acircumflexgrave
#define XKB_KEY_acircumflexgrave
#define XKB_KEY_Acircumflexhook
#define XKB_KEY_acircumflexhook
#define XKB_KEY_Acircumflextilde
#define XKB_KEY_acircumflextilde
#define XKB_KEY_Acircumflexbelowdot
#define XKB_KEY_acircumflexbelowdot
#define XKB_KEY_Abreveacute
#define XKB_KEY_abreveacute
#define XKB_KEY_Abrevegrave
#define XKB_KEY_abrevegrave
#define XKB_KEY_Abrevehook
#define XKB_KEY_abrevehook
#define XKB_KEY_Abrevetilde
#define XKB_KEY_abrevetilde
#define XKB_KEY_Abrevebelowdot
#define XKB_KEY_abrevebelowdot
#define XKB_KEY_Ebelowdot
#define XKB_KEY_ebelowdot
#define XKB_KEY_Ehook
#define XKB_KEY_ehook
#define XKB_KEY_Etilde
#define XKB_KEY_etilde
#define XKB_KEY_Ecircumflexacute
#define XKB_KEY_ecircumflexacute
#define XKB_KEY_Ecircumflexgrave
#define XKB_KEY_ecircumflexgrave
#define XKB_KEY_Ecircumflexhook
#define XKB_KEY_ecircumflexhook
#define XKB_KEY_Ecircumflextilde
#define XKB_KEY_ecircumflextilde
#define XKB_KEY_Ecircumflexbelowdot
#define XKB_KEY_ecircumflexbelowdot
#define XKB_KEY_Ihook
#define XKB_KEY_ihook
#define XKB_KEY_Ibelowdot
#define XKB_KEY_ibelowdot
#define XKB_KEY_Obelowdot
#define XKB_KEY_obelowdot
#define XKB_KEY_Ohook
#define XKB_KEY_ohook
#define XKB_KEY_Ocircumflexacute
#define XKB_KEY_ocircumflexacute
#define XKB_KEY_Ocircumflexgrave
#define XKB_KEY_ocircumflexgrave
#define XKB_KEY_Ocircumflexhook
#define XKB_KEY_ocircumflexhook
#define XKB_KEY_Ocircumflextilde
#define XKB_KEY_ocircumflextilde
#define XKB_KEY_Ocircumflexbelowdot
#define XKB_KEY_ocircumflexbelowdot
#define XKB_KEY_Ohornacute
#define XKB_KEY_ohornacute
#define XKB_KEY_Ohorngrave
#define XKB_KEY_ohorngrave
#define XKB_KEY_Ohornhook
#define XKB_KEY_ohornhook
#define XKB_KEY_Ohorntilde
#define XKB_KEY_ohorntilde
#define XKB_KEY_Ohornbelowdot
#define XKB_KEY_ohornbelowdot
#define XKB_KEY_Ubelowdot
#define XKB_KEY_ubelowdot
#define XKB_KEY_Uhook
#define XKB_KEY_uhook
#define XKB_KEY_Uhornacute
#define XKB_KEY_uhornacute
#define XKB_KEY_Uhorngrave
#define XKB_KEY_uhorngrave
#define XKB_KEY_Uhornhook
#define XKB_KEY_uhornhook
#define XKB_KEY_Uhorntilde
#define XKB_KEY_uhorntilde
#define XKB_KEY_Uhornbelowdot
#define XKB_KEY_uhornbelowdot
#define XKB_KEY_Ybelowdot
#define XKB_KEY_ybelowdot
#define XKB_KEY_Yhook
#define XKB_KEY_yhook
#define XKB_KEY_Ytilde
#define XKB_KEY_ytilde
#define XKB_KEY_Ohorn
#define XKB_KEY_ohorn
#define XKB_KEY_Uhorn
#define XKB_KEY_uhorn
#define XKB_KEY_combining_tilde
#define XKB_KEY_combining_grave
#define XKB_KEY_combining_acute
#define XKB_KEY_combining_hook
#define XKB_KEY_combining_belowdot


#define XKB_KEY_EcuSign
#define XKB_KEY_ColonSign
#define XKB_KEY_CruzeiroSign
#define XKB_KEY_FFrancSign
#define XKB_KEY_LiraSign
#define XKB_KEY_MillSign
#define XKB_KEY_NairaSign
#define XKB_KEY_PesetaSign
#define XKB_KEY_RupeeSign
#define XKB_KEY_WonSign
#define XKB_KEY_NewSheqelSign
#define XKB_KEY_DongSign
#define XKB_KEY_EuroSign

/* one, two and three are defined above. */
#define XKB_KEY_zerosuperior
#define XKB_KEY_foursuperior
#define XKB_KEY_fivesuperior
#define XKB_KEY_sixsuperior
#define XKB_KEY_sevensuperior
#define XKB_KEY_eightsuperior
#define XKB_KEY_ninesuperior
#define XKB_KEY_zerosubscript
#define XKB_KEY_onesubscript
#define XKB_KEY_twosubscript
#define XKB_KEY_threesubscript
#define XKB_KEY_foursubscript
#define XKB_KEY_fivesubscript
#define XKB_KEY_sixsubscript
#define XKB_KEY_sevensubscript
#define XKB_KEY_eightsubscript
#define XKB_KEY_ninesubscript
#define XKB_KEY_partdifferential
#define XKB_KEY_emptyset
#define XKB_KEY_elementof
#define XKB_KEY_notelementof
#define XKB_KEY_containsas
#define XKB_KEY_squareroot
#define XKB_KEY_cuberoot
#define XKB_KEY_fourthroot
#define XKB_KEY_dintegral
#define XKB_KEY_tintegral
#define XKB_KEY_because
#define XKB_KEY_approxeq
#define XKB_KEY_notapproxeq
#define XKB_KEY_notidentical
#define XKB_KEY_stricteq

#define XKB_KEY_braille_dot_1
#define XKB_KEY_braille_dot_2
#define XKB_KEY_braille_dot_3
#define XKB_KEY_braille_dot_4
#define XKB_KEY_braille_dot_5
#define XKB_KEY_braille_dot_6
#define XKB_KEY_braille_dot_7
#define XKB_KEY_braille_dot_8
#define XKB_KEY_braille_dot_9
#define XKB_KEY_braille_dot_10
#define XKB_KEY_braille_blank
#define XKB_KEY_braille_dots_1
#define XKB_KEY_braille_dots_2
#define XKB_KEY_braille_dots_12
#define XKB_KEY_braille_dots_3
#define XKB_KEY_braille_dots_13
#define XKB_KEY_braille_dots_23
#define XKB_KEY_braille_dots_123
#define XKB_KEY_braille_dots_4
#define XKB_KEY_braille_dots_14
#define XKB_KEY_braille_dots_24
#define XKB_KEY_braille_dots_124
#define XKB_KEY_braille_dots_34
#define XKB_KEY_braille_dots_134
#define XKB_KEY_braille_dots_234
#define XKB_KEY_braille_dots_1234
#define XKB_KEY_braille_dots_5
#define XKB_KEY_braille_dots_15
#define XKB_KEY_braille_dots_25
#define XKB_KEY_braille_dots_125
#define XKB_KEY_braille_dots_35
#define XKB_KEY_braille_dots_135
#define XKB_KEY_braille_dots_235
#define XKB_KEY_braille_dots_1235
#define XKB_KEY_braille_dots_45
#define XKB_KEY_braille_dots_145
#define XKB_KEY_braille_dots_245
#define XKB_KEY_braille_dots_1245
#define XKB_KEY_braille_dots_345
#define XKB_KEY_braille_dots_1345
#define XKB_KEY_braille_dots_2345
#define XKB_KEY_braille_dots_12345
#define XKB_KEY_braille_dots_6
#define XKB_KEY_braille_dots_16
#define XKB_KEY_braille_dots_26
#define XKB_KEY_braille_dots_126
#define XKB_KEY_braille_dots_36
#define XKB_KEY_braille_dots_136
#define XKB_KEY_braille_dots_236
#define XKB_KEY_braille_dots_1236
#define XKB_KEY_braille_dots_46
#define XKB_KEY_braille_dots_146
#define XKB_KEY_braille_dots_246
#define XKB_KEY_braille_dots_1246
#define XKB_KEY_braille_dots_346
#define XKB_KEY_braille_dots_1346
#define XKB_KEY_braille_dots_2346
#define XKB_KEY_braille_dots_12346
#define XKB_KEY_braille_dots_56
#define XKB_KEY_braille_dots_156
#define XKB_KEY_braille_dots_256
#define XKB_KEY_braille_dots_1256
#define XKB_KEY_braille_dots_356
#define XKB_KEY_braille_dots_1356
#define XKB_KEY_braille_dots_2356
#define XKB_KEY_braille_dots_12356
#define XKB_KEY_braille_dots_456
#define XKB_KEY_braille_dots_1456
#define XKB_KEY_braille_dots_2456
#define XKB_KEY_braille_dots_12456
#define XKB_KEY_braille_dots_3456
#define XKB_KEY_braille_dots_13456
#define XKB_KEY_braille_dots_23456
#define XKB_KEY_braille_dots_123456
#define XKB_KEY_braille_dots_7
#define XKB_KEY_braille_dots_17
#define XKB_KEY_braille_dots_27
#define XKB_KEY_braille_dots_127
#define XKB_KEY_braille_dots_37
#define XKB_KEY_braille_dots_137
#define XKB_KEY_braille_dots_237
#define XKB_KEY_braille_dots_1237
#define XKB_KEY_braille_dots_47
#define XKB_KEY_braille_dots_147
#define XKB_KEY_braille_dots_247
#define XKB_KEY_braille_dots_1247
#define XKB_KEY_braille_dots_347
#define XKB_KEY_braille_dots_1347
#define XKB_KEY_braille_dots_2347
#define XKB_KEY_braille_dots_12347
#define XKB_KEY_braille_dots_57
#define XKB_KEY_braille_dots_157
#define XKB_KEY_braille_dots_257
#define XKB_KEY_braille_dots_1257
#define XKB_KEY_braille_dots_357
#define XKB_KEY_braille_dots_1357
#define XKB_KEY_braille_dots_2357
#define XKB_KEY_braille_dots_12357
#define XKB_KEY_braille_dots_457
#define XKB_KEY_braille_dots_1457
#define XKB_KEY_braille_dots_2457
#define XKB_KEY_braille_dots_12457
#define XKB_KEY_braille_dots_3457
#define XKB_KEY_braille_dots_13457
#define XKB_KEY_braille_dots_23457
#define XKB_KEY_braille_dots_123457
#define XKB_KEY_braille_dots_67
#define XKB_KEY_braille_dots_167
#define XKB_KEY_braille_dots_267
#define XKB_KEY_braille_dots_1267
#define XKB_KEY_braille_dots_367
#define XKB_KEY_braille_dots_1367
#define XKB_KEY_braille_dots_2367
#define XKB_KEY_braille_dots_12367
#define XKB_KEY_braille_dots_467
#define XKB_KEY_braille_dots_1467
#define XKB_KEY_braille_dots_2467
#define XKB_KEY_braille_dots_12467
#define XKB_KEY_braille_dots_3467
#define XKB_KEY_braille_dots_13467
#define XKB_KEY_braille_dots_23467
#define XKB_KEY_braille_dots_123467
#define XKB_KEY_braille_dots_567
#define XKB_KEY_braille_dots_1567
#define XKB_KEY_braille_dots_2567
#define XKB_KEY_braille_dots_12567
#define XKB_KEY_braille_dots_3567
#define XKB_KEY_braille_dots_13567
#define XKB_KEY_braille_dots_23567
#define XKB_KEY_braille_dots_123567
#define XKB_KEY_braille_dots_4567
#define XKB_KEY_braille_dots_14567
#define XKB_KEY_braille_dots_24567
#define XKB_KEY_braille_dots_124567
#define XKB_KEY_braille_dots_34567
#define XKB_KEY_braille_dots_134567
#define XKB_KEY_braille_dots_234567
#define XKB_KEY_braille_dots_1234567
#define XKB_KEY_braille_dots_8
#define XKB_KEY_braille_dots_18
#define XKB_KEY_braille_dots_28
#define XKB_KEY_braille_dots_128
#define XKB_KEY_braille_dots_38
#define XKB_KEY_braille_dots_138
#define XKB_KEY_braille_dots_238
#define XKB_KEY_braille_dots_1238
#define XKB_KEY_braille_dots_48
#define XKB_KEY_braille_dots_148
#define XKB_KEY_braille_dots_248
#define XKB_KEY_braille_dots_1248
#define XKB_KEY_braille_dots_348
#define XKB_KEY_braille_dots_1348
#define XKB_KEY_braille_dots_2348
#define XKB_KEY_braille_dots_12348
#define XKB_KEY_braille_dots_58
#define XKB_KEY_braille_dots_158
#define XKB_KEY_braille_dots_258
#define XKB_KEY_braille_dots_1258
#define XKB_KEY_braille_dots_358
#define XKB_KEY_braille_dots_1358
#define XKB_KEY_braille_dots_2358
#define XKB_KEY_braille_dots_12358
#define XKB_KEY_braille_dots_458
#define XKB_KEY_braille_dots_1458
#define XKB_KEY_braille_dots_2458
#define XKB_KEY_braille_dots_12458
#define XKB_KEY_braille_dots_3458
#define XKB_KEY_braille_dots_13458
#define XKB_KEY_braille_dots_23458
#define XKB_KEY_braille_dots_123458
#define XKB_KEY_braille_dots_68
#define XKB_KEY_braille_dots_168
#define XKB_KEY_braille_dots_268
#define XKB_KEY_braille_dots_1268
#define XKB_KEY_braille_dots_368
#define XKB_KEY_braille_dots_1368
#define XKB_KEY_braille_dots_2368
#define XKB_KEY_braille_dots_12368
#define XKB_KEY_braille_dots_468
#define XKB_KEY_braille_dots_1468
#define XKB_KEY_braille_dots_2468
#define XKB_KEY_braille_dots_12468
#define XKB_KEY_braille_dots_3468
#define XKB_KEY_braille_dots_13468
#define XKB_KEY_braille_dots_23468
#define XKB_KEY_braille_dots_123468
#define XKB_KEY_braille_dots_568
#define XKB_KEY_braille_dots_1568
#define XKB_KEY_braille_dots_2568
#define XKB_KEY_braille_dots_12568
#define XKB_KEY_braille_dots_3568
#define XKB_KEY_braille_dots_13568
#define XKB_KEY_braille_dots_23568
#define XKB_KEY_braille_dots_123568
#define XKB_KEY_braille_dots_4568
#define XKB_KEY_braille_dots_14568
#define XKB_KEY_braille_dots_24568
#define XKB_KEY_braille_dots_124568
#define XKB_KEY_braille_dots_34568
#define XKB_KEY_braille_dots_134568
#define XKB_KEY_braille_dots_234568
#define XKB_KEY_braille_dots_1234568
#define XKB_KEY_braille_dots_78
#define XKB_KEY_braille_dots_178
#define XKB_KEY_braille_dots_278
#define XKB_KEY_braille_dots_1278
#define XKB_KEY_braille_dots_378
#define XKB_KEY_braille_dots_1378
#define XKB_KEY_braille_dots_2378
#define XKB_KEY_braille_dots_12378
#define XKB_KEY_braille_dots_478
#define XKB_KEY_braille_dots_1478
#define XKB_KEY_braille_dots_2478
#define XKB_KEY_braille_dots_12478
#define XKB_KEY_braille_dots_3478
#define XKB_KEY_braille_dots_13478
#define XKB_KEY_braille_dots_23478
#define XKB_KEY_braille_dots_123478
#define XKB_KEY_braille_dots_578
#define XKB_KEY_braille_dots_1578
#define XKB_KEY_braille_dots_2578
#define XKB_KEY_braille_dots_12578
#define XKB_KEY_braille_dots_3578
#define XKB_KEY_braille_dots_13578
#define XKB_KEY_braille_dots_23578
#define XKB_KEY_braille_dots_123578
#define XKB_KEY_braille_dots_4578
#define XKB_KEY_braille_dots_14578
#define XKB_KEY_braille_dots_24578
#define XKB_KEY_braille_dots_124578
#define XKB_KEY_braille_dots_34578
#define XKB_KEY_braille_dots_134578
#define XKB_KEY_braille_dots_234578
#define XKB_KEY_braille_dots_1234578
#define XKB_KEY_braille_dots_678
#define XKB_KEY_braille_dots_1678
#define XKB_KEY_braille_dots_2678
#define XKB_KEY_braille_dots_12678
#define XKB_KEY_braille_dots_3678
#define XKB_KEY_braille_dots_13678
#define XKB_KEY_braille_dots_23678
#define XKB_KEY_braille_dots_123678
#define XKB_KEY_braille_dots_4678
#define XKB_KEY_braille_dots_14678
#define XKB_KEY_braille_dots_24678
#define XKB_KEY_braille_dots_124678
#define XKB_KEY_braille_dots_34678
#define XKB_KEY_braille_dots_134678
#define XKB_KEY_braille_dots_234678
#define XKB_KEY_braille_dots_1234678
#define XKB_KEY_braille_dots_5678
#define XKB_KEY_braille_dots_15678
#define XKB_KEY_braille_dots_25678
#define XKB_KEY_braille_dots_125678
#define XKB_KEY_braille_dots_35678
#define XKB_KEY_braille_dots_135678
#define XKB_KEY_braille_dots_235678
#define XKB_KEY_braille_dots_1235678
#define XKB_KEY_braille_dots_45678
#define XKB_KEY_braille_dots_145678
#define XKB_KEY_braille_dots_245678
#define XKB_KEY_braille_dots_1245678
#define XKB_KEY_braille_dots_345678
#define XKB_KEY_braille_dots_1345678
#define XKB_KEY_braille_dots_2345678
#define XKB_KEY_braille_dots_12345678

/*
 * Sinhala (http://unicode.org/charts/PDF/U0D80.pdf)
 * http://www.nongnu.org/sinhala/doc/transliteration/sinhala-transliteration_6.html
 */

#define XKB_KEY_Sinh_ng
#define XKB_KEY_Sinh_h2
#define XKB_KEY_Sinh_a
#define XKB_KEY_Sinh_aa
#define XKB_KEY_Sinh_ae
#define XKB_KEY_Sinh_aee
#define XKB_KEY_Sinh_i
#define XKB_KEY_Sinh_ii
#define XKB_KEY_Sinh_u
#define XKB_KEY_Sinh_uu
#define XKB_KEY_Sinh_ri
#define XKB_KEY_Sinh_rii
#define XKB_KEY_Sinh_lu
#define XKB_KEY_Sinh_luu
#define XKB_KEY_Sinh_e
#define XKB_KEY_Sinh_ee
#define XKB_KEY_Sinh_ai
#define XKB_KEY_Sinh_o
#define XKB_KEY_Sinh_oo
#define XKB_KEY_Sinh_au
#define XKB_KEY_Sinh_ka
#define XKB_KEY_Sinh_kha
#define XKB_KEY_Sinh_ga
#define XKB_KEY_Sinh_gha
#define XKB_KEY_Sinh_ng2
#define XKB_KEY_Sinh_nga
#define XKB_KEY_Sinh_ca
#define XKB_KEY_Sinh_cha
#define XKB_KEY_Sinh_ja
#define XKB_KEY_Sinh_jha
#define XKB_KEY_Sinh_nya
#define XKB_KEY_Sinh_jnya
#define XKB_KEY_Sinh_nja
#define XKB_KEY_Sinh_tta
#define XKB_KEY_Sinh_ttha
#define XKB_KEY_Sinh_dda
#define XKB_KEY_Sinh_ddha
#define XKB_KEY_Sinh_nna
#define XKB_KEY_Sinh_ndda
#define XKB_KEY_Sinh_tha
#define XKB_KEY_Sinh_thha
#define XKB_KEY_Sinh_dha
#define XKB_KEY_Sinh_dhha
#define XKB_KEY_Sinh_na
#define XKB_KEY_Sinh_ndha
#define XKB_KEY_Sinh_pa
#define XKB_KEY_Sinh_pha
#define XKB_KEY_Sinh_ba
#define XKB_KEY_Sinh_bha
#define XKB_KEY_Sinh_ma
#define XKB_KEY_Sinh_mba
#define XKB_KEY_Sinh_ya
#define XKB_KEY_Sinh_ra
#define XKB_KEY_Sinh_la
#define XKB_KEY_Sinh_va
#define XKB_KEY_Sinh_sha
#define XKB_KEY_Sinh_ssha
#define XKB_KEY_Sinh_sa
#define XKB_KEY_Sinh_ha
#define XKB_KEY_Sinh_lla
#define XKB_KEY_Sinh_fa
#define XKB_KEY_Sinh_al
#define XKB_KEY_Sinh_aa2
#define XKB_KEY_Sinh_ae2
#define XKB_KEY_Sinh_aee2
#define XKB_KEY_Sinh_i2
#define XKB_KEY_Sinh_ii2
#define XKB_KEY_Sinh_u2
#define XKB_KEY_Sinh_uu2
#define XKB_KEY_Sinh_ru2
#define XKB_KEY_Sinh_e2
#define XKB_KEY_Sinh_ee2
#define XKB_KEY_Sinh_ai2
#define XKB_KEY_Sinh_o2
#define XKB_KEY_Sinh_oo2
#define XKB_KEY_Sinh_au2
#define XKB_KEY_Sinh_lu2
#define XKB_KEY_Sinh_ruu2
#define XKB_KEY_Sinh_luu2
#define XKB_KEY_Sinh_kunddaliya
/*
 * XFree86 vendor specific keysyms.
 *
 * The XFree86 keysym range is 0x10080001 - 0x1008FFFF.
 *
 * The XF86 set of keysyms is a catch-all set of defines for keysyms found
 * on various multimedia keyboards. Originally specific to XFree86 they have
 * been been adopted over time and are considered a "standard" part of X
 * keysym definitions.
 * XFree86 never properly commented these keysyms, so we have done our
 * best to explain the semantic meaning of these keys.
 *
 * XFree86 has removed their mail archives of the period, that might have
 * shed more light on some of these definitions. Until/unless we resurrect
 * these archives, these are from memory and usage.
 */

/*
 * ModeLock
 *
 * This one is old, and not really used any more since XKB offers this
 * functionality.
 */

#define XKB_KEY_XF86ModeLock

/* Backlight controls. */
#define XKB_KEY_XF86MonBrightnessUp
#define XKB_KEY_XF86MonBrightnessDown
#define XKB_KEY_XF86KbdLightOnOff
#define XKB_KEY_XF86KbdBrightnessUp
#define XKB_KEY_XF86KbdBrightnessDown
#define XKB_KEY_XF86MonBrightnessCycle

/*
 * Keys found on some "Internet" keyboards.
 */
#define XKB_KEY_XF86Standby
#define XKB_KEY_XF86AudioLowerVolume
#define XKB_KEY_XF86AudioMute
#define XKB_KEY_XF86AudioRaiseVolume
#define XKB_KEY_XF86AudioPlay
#define XKB_KEY_XF86AudioStop
#define XKB_KEY_XF86AudioPrev
#define XKB_KEY_XF86AudioNext
#define XKB_KEY_XF86HomePage
#define XKB_KEY_XF86Mail
#define XKB_KEY_XF86Start
#define XKB_KEY_XF86Search
#define XKB_KEY_XF86AudioRecord

/* These are sometimes found on PDA's (e.g. Palm, PocketPC or elsewhere)   */
#define XKB_KEY_XF86Calculator
#define XKB_KEY_XF86Memo
#define XKB_KEY_XF86ToDoList
#define XKB_KEY_XF86Calendar
#define XKB_KEY_XF86PowerDown
#define XKB_KEY_XF86ContrastAdjust
#define XKB_KEY_XF86RockerUp
#define XKB_KEY_XF86RockerDown
#define XKB_KEY_XF86RockerEnter

/* Some more "Internet" keyboard symbols */
#define XKB_KEY_XF86Back
#define XKB_KEY_XF86Forward
#define XKB_KEY_XF86Stop
#define XKB_KEY_XF86Refresh
#define XKB_KEY_XF86PowerOff
#define XKB_KEY_XF86WakeUp
#define XKB_KEY_XF86Eject
#define XKB_KEY_XF86ScreenSaver
#define XKB_KEY_XF86WWW
#define XKB_KEY_XF86Sleep
#define XKB_KEY_XF86Favorites
#define XKB_KEY_XF86AudioPause
#define XKB_KEY_XF86AudioMedia
#define XKB_KEY_XF86MyComputer
#define XKB_KEY_XF86VendorHome
#define XKB_KEY_XF86LightBulb
#define XKB_KEY_XF86Shop
#define XKB_KEY_XF86History
#define XKB_KEY_XF86OpenURL
#define XKB_KEY_XF86AddFavorite
#define XKB_KEY_XF86HotLinks
#define XKB_KEY_XF86BrightnessAdjust
#define XKB_KEY_XF86Finance
#define XKB_KEY_XF86Community
#define XKB_KEY_XF86AudioRewind
#define XKB_KEY_XF86BackForward
#define XKB_KEY_XF86Launch0
#define XKB_KEY_XF86Launch1
#define XKB_KEY_XF86Launch2
#define XKB_KEY_XF86Launch3
#define XKB_KEY_XF86Launch4
#define XKB_KEY_XF86Launch5
#define XKB_KEY_XF86Launch6
#define XKB_KEY_XF86Launch7
#define XKB_KEY_XF86Launch8
#define XKB_KEY_XF86Launch9
#define XKB_KEY_XF86LaunchA
#define XKB_KEY_XF86LaunchB
#define XKB_KEY_XF86LaunchC
#define XKB_KEY_XF86LaunchD
#define XKB_KEY_XF86LaunchE
#define XKB_KEY_XF86LaunchF

#define XKB_KEY_XF86ApplicationLeft
#define XKB_KEY_XF86ApplicationRight
#define XKB_KEY_XF86Book
#define XKB_KEY_XF86CD
#define XKB_KEY_XF86Calculater
#define XKB_KEY_XF86Clear
#define XKB_KEY_XF86Close
#define XKB_KEY_XF86Copy
#define XKB_KEY_XF86Cut
#define XKB_KEY_XF86Display
#define XKB_KEY_XF86DOS
#define XKB_KEY_XF86Documents
#define XKB_KEY_XF86Excel
#define XKB_KEY_XF86Explorer
#define XKB_KEY_XF86Game
#define XKB_KEY_XF86Go
#define XKB_KEY_XF86iTouch
#define XKB_KEY_XF86LogOff
#define XKB_KEY_XF86Market
#define XKB_KEY_XF86Meeting
#define XKB_KEY_XF86MenuKB
#define XKB_KEY_XF86MenuPB
#define XKB_KEY_XF86MySites
#define XKB_KEY_XF86New
#define XKB_KEY_XF86News
#define XKB_KEY_XF86OfficeHome
#define XKB_KEY_XF86Open
#define XKB_KEY_XF86Option
#define XKB_KEY_XF86Paste
#define XKB_KEY_XF86Phone
#define XKB_KEY_XF86Q
#define XKB_KEY_XF86Reply
#define XKB_KEY_XF86Reload
#define XKB_KEY_XF86RotateWindows
#define XKB_KEY_XF86RotationPB
#define XKB_KEY_XF86RotationKB
#define XKB_KEY_XF86Save
#define XKB_KEY_XF86ScrollUp
#define XKB_KEY_XF86ScrollDown
#define XKB_KEY_XF86ScrollClick
#define XKB_KEY_XF86Send
#define XKB_KEY_XF86Spell
#define XKB_KEY_XF86SplitScreen
#define XKB_KEY_XF86Support
#define XKB_KEY_XF86TaskPane
#define XKB_KEY_XF86Terminal
#define XKB_KEY_XF86Tools
#define XKB_KEY_XF86Travel
#define XKB_KEY_XF86UserPB
#define XKB_KEY_XF86User1KB
#define XKB_KEY_XF86User2KB
#define XKB_KEY_XF86Video
#define XKB_KEY_XF86WheelButton
#define XKB_KEY_XF86Word
#define XKB_KEY_XF86Xfer
#define XKB_KEY_XF86ZoomIn
#define XKB_KEY_XF86ZoomOut

#define XKB_KEY_XF86Away
#define XKB_KEY_XF86Messenger
#define XKB_KEY_XF86WebCam
#define XKB_KEY_XF86MailForward
#define XKB_KEY_XF86Pictures
#define XKB_KEY_XF86Music

#define XKB_KEY_XF86Battery
#define XKB_KEY_XF86Bluetooth
#define XKB_KEY_XF86WLAN
#define XKB_KEY_XF86UWB

#define XKB_KEY_XF86AudioForward
#define XKB_KEY_XF86AudioRepeat
#define XKB_KEY_XF86AudioRandomPlay
#define XKB_KEY_XF86Subtitle
#define XKB_KEY_XF86AudioCycleTrack
#define XKB_KEY_XF86CycleAngle
#define XKB_KEY_XF86FrameBack
#define XKB_KEY_XF86FrameForward
#define XKB_KEY_XF86Time
#define XKB_KEY_XF86Select
#define XKB_KEY_XF86View
#define XKB_KEY_XF86TopMenu

#define XKB_KEY_XF86Red
#define XKB_KEY_XF86Green
#define XKB_KEY_XF86Yellow
#define XKB_KEY_XF86Blue

#define XKB_KEY_XF86Suspend
#define XKB_KEY_XF86Hibernate
#define XKB_KEY_XF86TouchpadToggle
#define XKB_KEY_XF86TouchpadOn
#define XKB_KEY_XF86TouchpadOff

#define XKB_KEY_XF86AudioMicMute

#define XKB_KEY_XF86Keyboard

#define XKB_KEY_XF86WWAN
#define XKB_KEY_XF86RFKill

#define XKB_KEY_XF86AudioPreset

#define XKB_KEY_XF86RotationLockToggle

#define XKB_KEY_XF86FullScreen

/* Keys for special action keys (hot keys) */
/* Virtual terminals on some operating systems */
#define XKB_KEY_XF86Switch_VT_1
#define XKB_KEY_XF86Switch_VT_2
#define XKB_KEY_XF86Switch_VT_3
#define XKB_KEY_XF86Switch_VT_4
#define XKB_KEY_XF86Switch_VT_5
#define XKB_KEY_XF86Switch_VT_6
#define XKB_KEY_XF86Switch_VT_7
#define XKB_KEY_XF86Switch_VT_8
#define XKB_KEY_XF86Switch_VT_9
#define XKB_KEY_XF86Switch_VT_10
#define XKB_KEY_XF86Switch_VT_11
#define XKB_KEY_XF86Switch_VT_12

#define XKB_KEY_XF86Ungrab
#define XKB_KEY_XF86ClearGrab
#define XKB_KEY_XF86Next_VMode
#define XKB_KEY_XF86Prev_VMode
#define XKB_KEY_XF86LogWindowTree
#define XKB_KEY_XF86LogGrabInfo


/*
 * Reserved range for evdev symbols: 0x10081000-0x10081FFF
 *
 * Key syms within this range must match the Linux kernel
 * input-event-codes.h file in the format:
 *     XF86XK_CamelCaseKernelName	_EVDEVK(kernel value)
 * For example, the kernel
 *   #define KEY_MACRO_RECORD_START	0x2b0
 * effectively ends up as:
 *   #define XKB_KEY_XF86MacroRecordStart	0x100812b0
 *
 * For historical reasons, some keysyms within the reserved range will be
 * missing, most notably all "normal" keys that are mapped through default
 * XKB layouts (e.g. KEY_Q).
 *
 * CamelCasing is done with a human control as last authority, e.g. see VOD
 * instead of Vod for the Video on Demand key.
 *
 * The format for #defines is strict:
 *
 * #define XKB_KEY_XF86FOO<tab...>_EVDEVK(0xABC)<tab><tab> |* kver KEY_FOO *|
 *
 * Where
 * - alignment by tabs
 * - the _EVDEVK macro must be used
 * - the hex code must be in uppercase hex
 * - the kernel version (kver) is in the form v5.10
 * - kver and key name are within a slash-star comment (a pipe is used in
 *   this example for technical reasons)
 * These #defines are parsed by scripts. Do not stray from the given format.
 *
 * Where the evdev keycode is mapped to a different symbol, please add a
 * comment line starting with Use: but otherwise the same format, e.g.
 *  Use: XF86XK_RotationLockToggle	_EVDEVK(0x231)		   v4.16 KEY_ROTATE_LOCK_TOGGLE
 *
 */
/* Use: XF86XK_Eject			_EVDEVK(0x0A2)		         KEY_EJECTCLOSECD */
/* Use: XF86XK_New			_EVDEVK(0x0B5)		   v2.6.14 KEY_NEW */
/* Use: XK_Redo				_EVDEVK(0x0B6)		   v2.6.14 KEY_REDO */
/* KEY_DASHBOARD has been mapped to LaunchB in xkeyboard-config since 2011 */
/* Use: XF86XK_LaunchB			_EVDEVK(0x0CC)		   v2.6.28 KEY_DASHBOARD */
/* Use: XF86XK_Display			_EVDEVK(0x0E3)		   v2.6.12 KEY_SWITCHVIDEOMODE */
/* Use: XF86XK_KbdLightOnOff		_EVDEVK(0x0E4)		   v2.6.12 KEY_KBDILLUMTOGGLE */
/* Use: XF86XK_KbdBrightnessDown	_EVDEVK(0x0E5)		   v2.6.12 KEY_KBDILLUMDOWN */
/* Use: XF86XK_KbdBrightnessUp		_EVDEVK(0x0E6)		   v2.6.12 KEY_KBDILLUMUP */
/* Use: XF86XK_Send			_EVDEVK(0x0E7)		   v2.6.14 KEY_SEND */
/* Use: XF86XK_Reply			_EVDEVK(0x0E8)		   v2.6.14 KEY_REPLY */
/* Use: XF86XK_MailForward		_EVDEVK(0x0E9)		   v2.6.14 KEY_FORWARDMAIL */
/* Use: XF86XK_Save			_EVDEVK(0x0EA)		   v2.6.14 KEY_SAVE */
/* Use: XF86XK_Documents		_EVDEVK(0x0EB)		   v2.6.14 KEY_DOCUMENTS */
/* Use: XF86XK_Battery			_EVDEVK(0x0EC)		   v2.6.17 KEY_BATTERY */
/* Use: XF86XK_Bluetooth		_EVDEVK(0x0ED)		   v2.6.19 KEY_BLUETOOTH */
/* Use: XF86XK_WLAN			_EVDEVK(0x0EE)		   v2.6.19 KEY_WLAN */
/* Use: XF86XK_UWB			_EVDEVK(0x0EF)		   v2.6.24 KEY_UWB */
/* Use: XF86XK_Next_VMode		_EVDEVK(0x0F1)		   v2.6.23 KEY_VIDEO_NEXT */
/* Use: XF86XK_Prev_VMode		_EVDEVK(0x0F2)		   v2.6.23 KEY_VIDEO_PREV */
/* Use: XF86XK_MonBrightnessCycle	_EVDEVK(0x0F3)		   v2.6.23 KEY_BRIGHTNESS_CYCLE */
#define XKB_KEY_XF86BrightnessAuto
#define XKB_KEY_XF86DisplayOff
/* Use: XF86XK_WWAN			_EVDEVK(0x0F6)		   v3.13 KEY_WWAN */
/* Use: XF86XK_RFKill			_EVDEVK(0x0F7)		   v2.6.33 KEY_RFKILL */
/* Use: XF86XK_AudioMicMute		_EVDEVK(0x0F8)		   v3.1  KEY_MICMUTE */
#define XKB_KEY_XF86Info
/* Use: XF86XK_CycleAngle		_EVDEVK(0x173)		         KEY_ANGLE */
/* Use: XF86XK_FullScreen		_EVDEVK(0x174)		   v5.1  KEY_FULL_SCREEN */
#define XKB_KEY_XF86AspectRatio
#define XKB_KEY_XF86DVD
#define XKB_KEY_XF86Audio
/* Use: XF86XK_Video			_EVDEVK(0x189)		         KEY_VIDEO */
/* Use: XF86XK_Calendar			_EVDEVK(0x18D)		         KEY_CALENDAR */
#define XKB_KEY_XF86ChannelUp
#define XKB_KEY_XF86ChannelDown
/* Use: XF86XK_AudioRandomPlay		_EVDEVK(0x19A)		         KEY_SHUFFLE */
#define XKB_KEY_XF86Break
#define XKB_KEY_XF86VideoPhone
/* Use: XF86XK_Game			_EVDEVK(0x1A1)		   v2.6.20 KEY_GAMES */
/* Use: XF86XK_ZoomIn			_EVDEVK(0x1A2)		   v2.6.20 KEY_ZOOMIN */
/* Use: XF86XK_ZoomOut			_EVDEVK(0x1A3)		   v2.6.20 KEY_ZOOMOUT */
#define XKB_KEY_XF86ZoomReset
/* Use: XF86XK_Word			_EVDEVK(0x1A5)		   v2.6.20 KEY_WORDPROCESSOR */
#define XKB_KEY_XF86Editor
/* Use: XF86XK_Excel			_EVDEVK(0x1A7)		   v2.6.20 KEY_SPREADSHEET */
#define XKB_KEY_XF86GraphicsEditor
#define XKB_KEY_XF86Presentation
#define XKB_KEY_XF86Database
/* Use: XF86XK_News			_EVDEVK(0x1AB)		   v2.6.20 KEY_NEWS */
#define XKB_KEY_XF86Voicemail
#define XKB_KEY_XF86Addressbook
/* Use: XF86XK_Messenger		_EVDEVK(0x1AE)		   v2.6.20 KEY_MESSENGER */
#define XKB_KEY_XF86DisplayToggle
#define XKB_KEY_XF86SpellCheck
/* Use: XF86XK_LogOff			_EVDEVK(0x1B1)		   v2.6.24 KEY_LOGOFF */
/* Use: XK_dollar			_EVDEVK(0x1B2)		   v2.6.24 KEY_DOLLAR */
/* Use: XK_EuroSign			_EVDEVK(0x1B3)		   v2.6.24 KEY_EURO */
/* Use: XF86XK_FrameBack		_EVDEVK(0x1B4)		   v2.6.24 KEY_FRAMEBACK */
/* Use: XF86XK_FrameForward		_EVDEVK(0x1B5)		   v2.6.24 KEY_FRAMEFORWARD */
#define XKB_KEY_XF86ContextMenu
#define XKB_KEY_XF86MediaRepeat
#define XKB_KEY_XF8610ChannelsUp
#define XKB_KEY_XF8610ChannelsDown
#define XKB_KEY_XF86Images
#define XKB_KEY_XF86NotificationCenter
#define XKB_KEY_XF86PickupPhone
#define XKB_KEY_XF86HangupPhone
#define XKB_KEY_XF86Fn
#define XKB_KEY_XF86Fn_Esc
#define XKB_KEY_XF86FnRightShift
/* Use: XK_braille_dot_1		_EVDEVK(0x1F1)		   v2.6.17 KEY_BRL_DOT1 */
/* Use: XK_braille_dot_2		_EVDEVK(0x1F2)		   v2.6.17 KEY_BRL_DOT2 */
/* Use: XK_braille_dot_3		_EVDEVK(0x1F3)		   v2.6.17 KEY_BRL_DOT3 */
/* Use: XK_braille_dot_4		_EVDEVK(0x1F4)		   v2.6.17 KEY_BRL_DOT4 */
/* Use: XK_braille_dot_5		_EVDEVK(0x1F5)		   v2.6.17 KEY_BRL_DOT5 */
/* Use: XK_braille_dot_6		_EVDEVK(0x1F6)		   v2.6.17 KEY_BRL_DOT6 */
/* Use: XK_braille_dot_7		_EVDEVK(0x1F7)		   v2.6.17 KEY_BRL_DOT7 */
/* Use: XK_braille_dot_8		_EVDEVK(0x1F8)		   v2.6.17 KEY_BRL_DOT8 */
/* Use: XK_braille_dot_9		_EVDEVK(0x1F9)		   v2.6.23 KEY_BRL_DOT9 */
/* Use: XK_braille_dot_1		_EVDEVK(0x1FA)		   v2.6.23 KEY_BRL_DOT10 */
#define XKB_KEY_XF86Numeric0
#define XKB_KEY_XF86Numeric1
#define XKB_KEY_XF86Numeric2
#define XKB_KEY_XF86Numeric3
#define XKB_KEY_XF86Numeric4
#define XKB_KEY_XF86Numeric5
#define XKB_KEY_XF86Numeric6
#define XKB_KEY_XF86Numeric7
#define XKB_KEY_XF86Numeric8
#define XKB_KEY_XF86Numeric9
#define XKB_KEY_XF86NumericStar
#define XKB_KEY_XF86NumericPound
#define XKB_KEY_XF86NumericA
#define XKB_KEY_XF86NumericB
#define XKB_KEY_XF86NumericC
#define XKB_KEY_XF86NumericD
#define XKB_KEY_XF86CameraFocus
#define XKB_KEY_XF86WPSButton
/* Use: XF86XK_TouchpadToggle		_EVDEVK(0x212)		   v2.6.37 KEY_TOUCHPAD_TOGGLE */
/* Use: XF86XK_TouchpadOn		_EVDEVK(0x213)		   v2.6.37 KEY_TOUCHPAD_ON */
/* Use: XF86XK_TouchpadOff		_EVDEVK(0x214)		   v2.6.37 KEY_TOUCHPAD_OFF */
#define XKB_KEY_XF86CameraZoomIn
#define XKB_KEY_XF86CameraZoomOut
#define XKB_KEY_XF86CameraUp
#define XKB_KEY_XF86CameraDown
#define XKB_KEY_XF86CameraLeft
#define XKB_KEY_XF86CameraRight
#define XKB_KEY_XF86AttendantOn
#define XKB_KEY_XF86AttendantOff
#define XKB_KEY_XF86AttendantToggle
#define XKB_KEY_XF86LightsToggle
#define XKB_KEY_XF86ALSToggle
/* Use: XF86XK_RotationLockToggle	_EVDEVK(0x231)		   v4.16 KEY_ROTATE_LOCK_TOGGLE */
#define XKB_KEY_XF86Buttonconfig
#define XKB_KEY_XF86Taskmanager
#define XKB_KEY_XF86Journal
#define XKB_KEY_XF86ControlPanel
#define XKB_KEY_XF86AppSelect
#define XKB_KEY_XF86Screensaver
#define XKB_KEY_XF86VoiceCommand
#define XKB_KEY_XF86Assistant
/* Use: XK_ISO_Next_Group		_EVDEVK(0x248)		   v5.2  KEY_KBD_LAYOUT_NEXT */
#define XKB_KEY_XF86BrightnessMin
#define XKB_KEY_XF86BrightnessMax
#define XKB_KEY_XF86KbdInputAssistPrev
#define XKB_KEY_XF86KbdInputAssistNext
#define XKB_KEY_XF86KbdInputAssistPrevgroup
#define XKB_KEY_XF86KbdInputAssistNextgroup
#define XKB_KEY_XF86KbdInputAssistAccept
#define XKB_KEY_XF86KbdInputAssistCancel
#define XKB_KEY_XF86RightUp
#define XKB_KEY_XF86RightDown
#define XKB_KEY_XF86LeftUp
#define XKB_KEY_XF86LeftDown
#define XKB_KEY_XF86RootMenu
#define XKB_KEY_XF86MediaTopMenu
#define XKB_KEY_XF86Numeric11
#define XKB_KEY_XF86Numeric12
#define XKB_KEY_XF86AudioDesc
#define XKB_KEY_XF863DMode
#define XKB_KEY_XF86NextFavorite
#define XKB_KEY_XF86StopRecord
#define XKB_KEY_XF86PauseRecord
#define XKB_KEY_XF86VOD
#define XKB_KEY_XF86Unmute
#define XKB_KEY_XF86FastReverse
#define XKB_KEY_XF86SlowReverse
#define XKB_KEY_XF86Data
#define XKB_KEY_XF86OnScreenKeyboard
#define XKB_KEY_XF86PrivacyScreenToggle
#define XKB_KEY_XF86SelectiveScreenshot
#define XKB_KEY_XF86Macro1
#define XKB_KEY_XF86Macro2
#define XKB_KEY_XF86Macro3
#define XKB_KEY_XF86Macro4
#define XKB_KEY_XF86Macro5
#define XKB_KEY_XF86Macro6
#define XKB_KEY_XF86Macro7
#define XKB_KEY_XF86Macro8
#define XKB_KEY_XF86Macro9
#define XKB_KEY_XF86Macro10
#define XKB_KEY_XF86Macro11
#define XKB_KEY_XF86Macro12
#define XKB_KEY_XF86Macro13
#define XKB_KEY_XF86Macro14
#define XKB_KEY_XF86Macro15
#define XKB_KEY_XF86Macro16
#define XKB_KEY_XF86Macro17
#define XKB_KEY_XF86Macro18
#define XKB_KEY_XF86Macro19
#define XKB_KEY_XF86Macro20
#define XKB_KEY_XF86Macro21
#define XKB_KEY_XF86Macro22
#define XKB_KEY_XF86Macro23
#define XKB_KEY_XF86Macro24
#define XKB_KEY_XF86Macro25
#define XKB_KEY_XF86Macro26
#define XKB_KEY_XF86Macro27
#define XKB_KEY_XF86Macro28
#define XKB_KEY_XF86Macro29
#define XKB_KEY_XF86Macro30
#define XKB_KEY_XF86MacroRecordStart
#define XKB_KEY_XF86MacroRecordStop
#define XKB_KEY_XF86MacroPresetCycle
#define XKB_KEY_XF86MacroPreset1
#define XKB_KEY_XF86MacroPreset2
#define XKB_KEY_XF86MacroPreset3
#define XKB_KEY_XF86KbdLcdMenu1
#define XKB_KEY_XF86KbdLcdMenu2
#define XKB_KEY_XF86KbdLcdMenu3
#define XKB_KEY_XF86KbdLcdMenu4
#define XKB_KEY_XF86KbdLcdMenu5
#undef _EVDEVK
/*
 * Copyright (c) 1991, Oracle and/or its affiliates. All rights reserved.
 *
 * Permission is hereby granted, free of charge, to any person obtaining a
 * copy of this software and associated documentation files (the "Software"),
 * to deal in the Software without restriction, including without limitation
 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
 * and/or sell copies of the Software, and to permit persons to whom the
 * Software is furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice (including the next
 * paragraph) shall be included in all copies or substantial portions of the
 * Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
 * DEALINGS IN THE SOFTWARE.
 */
/************************************************************

Copyright 1991, 1998  The Open Group

Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.

***********************************************************/

/*
 * Floating Accent
 */

#define XKB_KEY_SunFA_Grave
#define XKB_KEY_SunFA_Circum
#define XKB_KEY_SunFA_Tilde
#define XKB_KEY_SunFA_Acute
#define XKB_KEY_SunFA_Diaeresis
#define XKB_KEY_SunFA_Cedilla

/*
 * Miscellaneous Functions
 */

#define XKB_KEY_SunF36
#define XKB_KEY_SunF37

#define XKB_KEY_SunSys_Req
#define XKB_KEY_SunPrint_Screen

/*
 * International & Multi-Key Character Composition
 */

#define XKB_KEY_SunCompose
#define XKB_KEY_SunAltGraph

/*
 * Cursor Control
 */

#define XKB_KEY_SunPageUp
#define XKB_KEY_SunPageDown

/*
 * Open Look Functions
 */

#define XKB_KEY_SunUndo
#define XKB_KEY_SunAgain
#define XKB_KEY_SunFind
#define XKB_KEY_SunStop
#define XKB_KEY_SunProps
#define XKB_KEY_SunFront
#define XKB_KEY_SunCopy
#define XKB_KEY_SunOpen
#define XKB_KEY_SunPaste
#define XKB_KEY_SunCut

#define XKB_KEY_SunPowerSwitch
#define XKB_KEY_SunAudioLowerVolume
#define XKB_KEY_SunAudioMute
#define XKB_KEY_SunAudioRaiseVolume
#define XKB_KEY_SunVideoDegauss
#define XKB_KEY_SunVideoLowerBrightness
#define XKB_KEY_SunVideoRaiseBrightness
#define XKB_KEY_SunPowerSwitchShift
/***********************************************************

Copyright 1988, 1998  The Open Group

Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.


Copyright 1988 by Digital Equipment Corporation, Maynard, Massachusetts.

                        All Rights Reserved

Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in
supporting documentation, and that the name of Digital not be
used in advertising or publicity pertaining to distribution of the
software without specific, written prior permission.

DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
SOFTWARE.

******************************************************************/

/*
 * DEC private keysyms
 * (29th bit set)
 */

/* two-key compose sequence initiators, chosen to map to Latin1 characters */

#define XKB_KEY_Dring_accent
#define XKB_KEY_Dcircumflex_accent
#define XKB_KEY_Dcedilla_accent
#define XKB_KEY_Dacute_accent
#define XKB_KEY_Dgrave_accent
#define XKB_KEY_Dtilde
#define XKB_KEY_Ddiaeresis

/* special keysym for LK2** "Remove" key on editing keypad */

#define XKB_KEY_DRemove
/*

Copyright 1987, 1998  The Open Group

Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.

The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.

Except as contained in this notice, the name of The Open Group shall
not be used in advertising or otherwise to promote the sale, use or
other dealings in this Software without prior written authorization
from The Open Group.

Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts,

                        All Rights Reserved

Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in
supporting documentation, and that the names of Hewlett Packard
or Digital not be
used in advertising or publicity pertaining to distribution of the
software without specific, written prior permission.

DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
SOFTWARE.

HEWLETT-PACKARD MAKES NO WARRANTY OF ANY KIND WITH REGARD
TO THIS SOFTWARE, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE.  Hewlett-Packard shall not be liable for errors
contained herein or direct, indirect, special, incidental or
consequential damages in connection with the furnishing,
performance, or use of this material.

*/



#define XKB_KEY_hpClearLine
#define XKB_KEY_hpInsertLine
#define XKB_KEY_hpDeleteLine
#define XKB_KEY_hpInsertChar
#define XKB_KEY_hpDeleteChar
#define XKB_KEY_hpBackTab
#define XKB_KEY_hpKP_BackTab
#define XKB_KEY_hpModelock1
#define XKB_KEY_hpModelock2
#define XKB_KEY_hpReset
#define XKB_KEY_hpSystem
#define XKB_KEY_hpUser
#define XKB_KEY_hpmute_acute
#define XKB_KEY_hpmute_grave
#define XKB_KEY_hpmute_asciicircum
#define XKB_KEY_hpmute_diaeresis
#define XKB_KEY_hpmute_asciitilde
#define XKB_KEY_hplira
#define XKB_KEY_hpguilder
#define XKB_KEY_hpYdiaeresis
#define XKB_KEY_hpIO
#define XKB_KEY_hplongminus
#define XKB_KEY_hpblock



#define XKB_KEY_osfCopy
#define XKB_KEY_osfCut
#define XKB_KEY_osfPaste
#define XKB_KEY_osfBackTab
#define XKB_KEY_osfBackSpace
#define XKB_KEY_osfClear
#define XKB_KEY_osfEscape
#define XKB_KEY_osfAddMode
#define XKB_KEY_osfPrimaryPaste
#define XKB_KEY_osfQuickPaste
#define XKB_KEY_osfPageLeft
#define XKB_KEY_osfPageUp
#define XKB_KEY_osfPageDown
#define XKB_KEY_osfPageRight
#define XKB_KEY_osfActivate
#define XKB_KEY_osfMenuBar
#define XKB_KEY_osfLeft
#define XKB_KEY_osfUp
#define XKB_KEY_osfRight
#define XKB_KEY_osfDown
#define XKB_KEY_osfEndLine
#define XKB_KEY_osfBeginLine
#define XKB_KEY_osfEndData
#define XKB_KEY_osfBeginData
#define XKB_KEY_osfPrevMenu
#define XKB_KEY_osfNextMenu
#define XKB_KEY_osfPrevField
#define XKB_KEY_osfNextField
#define XKB_KEY_osfSelect
#define XKB_KEY_osfInsert
#define XKB_KEY_osfUndo
#define XKB_KEY_osfMenu
#define XKB_KEY_osfCancel
#define XKB_KEY_osfHelp
#define XKB_KEY_osfSelectAll
#define XKB_KEY_osfDeselectAll
#define XKB_KEY_osfReselect
#define XKB_KEY_osfExtend
#define XKB_KEY_osfRestore
#define XKB_KEY_osfDelete



/**************************************************************
 * The use of the following macros is deprecated.
 * They are listed below only for backwards compatibility.
 */
#define XKB_KEY_Reset
#define XKB_KEY_System
#define XKB_KEY_User
#define XKB_KEY_ClearLine
#define XKB_KEY_InsertLine
#define XKB_KEY_DeleteLine
#define XKB_KEY_InsertChar
#define XKB_KEY_DeleteChar
#define XKB_KEY_BackTab
#define XKB_KEY_KP_BackTab
#define XKB_KEY_Ext16bit_L
#define XKB_KEY_Ext16bit_R
#define XKB_KEY_mute_acute
#define XKB_KEY_mute_grave
#define XKB_KEY_mute_asciicircum
#define XKB_KEY_mute_diaeresis
#define XKB_KEY_mute_asciitilde
#define XKB_KEY_lira
#define XKB_KEY_guilder
#define XKB_KEY_IO
#define XKB_KEY_longminus
#define XKB_KEY_block



#endif