xkeysymtounicodetable.h
author Jan Vrany <jan.vrany@fit.cvut.cz>
Tue, 03 Oct 2017 11:38:15 +0100
branchjv
changeset 8188 00df122d8bd4
parent 8038 c7cab63f9ec9
child 8420 76e39223f5ab
permissions -rw-r--r--
X11: backed out changeset 03ebf4f9a91d This is no good, it completely trashes copy-paste on X11.

/* 
 * Automatically generated - do not edit! 
 */

/* 
 * Copyright (c) 2017-now Jan Vrany
 * 
 * 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 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
 * MeERCHANTABILITY, 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.
 */

/* 
 * This header contain table definitions for XKeysymToUnicode() function. 
 *
 * Automatically generated by `xkeysymtounicodetablegen.rb` from `keysymdef.h`.
 */

#ifndef _XKEYSYMTOUNICODETABLE_H_
#define _XKEYSYMTOUNICODETABLE_H_

#include <stdint.h>
#include <X11/X.h>
#include <X11/keysym.h>

#define XKEYSYMTOUNICODE_DIRECT_LO 0x20 /* XK_space, SPACE */
#define XKEYSYMTOUNICODE_DIRECT_HI 0xff /* XK_ydiaeresis, LATIN SMALL LETTER Y WITH DIAERESIS */

typedef struct _xkeysymtounicode_table_entry {
  KeySym keysym;
  uint16_t codepoint;
} xkeysymtounicode_table_entry_t;

static const xkeysymtounicode_table_entry_t 
xkeysymtounicode_table[] = {
    { 0x1a1, 0x104 }, /* XK_Aogonek, LATIN CAPITAL LETTER A WITH OGONEK */
    { 0x1a2, 0x2d8 }, /* XK_breve, BREVE */
    { 0x1a3, 0x141 }, /* XK_Lstroke, LATIN CAPITAL LETTER L WITH STROKE */
    { 0x1a5, 0x13d }, /* XK_Lcaron, LATIN CAPITAL LETTER L WITH CARON */
    { 0x1a6, 0x15a }, /* XK_Sacute, LATIN CAPITAL LETTER S WITH ACUTE */
    { 0x1a9, 0x160 }, /* XK_Scaron, LATIN CAPITAL LETTER S WITH CARON */
    { 0x1aa, 0x15e }, /* XK_Scedilla, LATIN CAPITAL LETTER S WITH CEDILLA */
    { 0x1ab, 0x164 }, /* XK_Tcaron, LATIN CAPITAL LETTER T WITH CARON */
    { 0x1ac, 0x179 }, /* XK_Zacute, LATIN CAPITAL LETTER Z WITH ACUTE */
    { 0x1ae, 0x17d }, /* XK_Zcaron, LATIN CAPITAL LETTER Z WITH CARON */
    { 0x1af, 0x17b }, /* XK_Zabovedot, LATIN CAPITAL LETTER Z WITH DOT ABOVE */
    { 0x1b1, 0x105 }, /* XK_aogonek, LATIN SMALL LETTER A WITH OGONEK */
    { 0x1b2, 0x2db }, /* XK_ogonek, OGONEK */
    { 0x1b3, 0x142 }, /* XK_lstroke, LATIN SMALL LETTER L WITH STROKE */
    { 0x1b5, 0x13e }, /* XK_lcaron, LATIN SMALL LETTER L WITH CARON */
    { 0x1b6, 0x15b }, /* XK_sacute, LATIN SMALL LETTER S WITH ACUTE */
    { 0x1b7, 0x2c7 }, /* XK_caron, CARON */
    { 0x1b9, 0x161 }, /* XK_scaron, LATIN SMALL LETTER S WITH CARON */
    { 0x1ba, 0x15f }, /* XK_scedilla, LATIN SMALL LETTER S WITH CEDILLA */
    { 0x1bb, 0x165 }, /* XK_tcaron, LATIN SMALL LETTER T WITH CARON */
    { 0x1bc, 0x17a }, /* XK_zacute, LATIN SMALL LETTER Z WITH ACUTE */
    { 0x1bd, 0x2dd }, /* XK_doubleacute, DOUBLE ACUTE ACCENT */
    { 0x1be, 0x17e }, /* XK_zcaron, LATIN SMALL LETTER Z WITH CARON */
    { 0x1bf, 0x17c }, /* XK_zabovedot, LATIN SMALL LETTER Z WITH DOT ABOVE */
    { 0x1c0, 0x154 }, /* XK_Racute, LATIN CAPITAL LETTER R WITH ACUTE */
    { 0x1c3, 0x102 }, /* XK_Abreve, LATIN CAPITAL LETTER A WITH BREVE */
    { 0x1c5, 0x139 }, /* XK_Lacute, LATIN CAPITAL LETTER L WITH ACUTE */
    { 0x1c6, 0x106 }, /* XK_Cacute, LATIN CAPITAL LETTER C WITH ACUTE */
    { 0x1c8, 0x10c }, /* XK_Ccaron, LATIN CAPITAL LETTER C WITH CARON */
    { 0x1ca, 0x118 }, /* XK_Eogonek, LATIN CAPITAL LETTER E WITH OGONEK */
    { 0x1cc, 0x11a }, /* XK_Ecaron, LATIN CAPITAL LETTER E WITH CARON */
    { 0x1cf, 0x10e }, /* XK_Dcaron, LATIN CAPITAL LETTER D WITH CARON */
    { 0x1d0, 0x110 }, /* XK_Dstroke, LATIN CAPITAL LETTER D WITH STROKE */
    { 0x1d1, 0x143 }, /* XK_Nacute, LATIN CAPITAL LETTER N WITH ACUTE */
    { 0x1d2, 0x147 }, /* XK_Ncaron, LATIN CAPITAL LETTER N WITH CARON */
    { 0x1d5, 0x150 }, /* XK_Odoubleacute, LATIN CAPITAL LETTER O WITH DOUBLE ACUTE */
    { 0x1d8, 0x158 }, /* XK_Rcaron, LATIN CAPITAL LETTER R WITH CARON */
    { 0x1d9, 0x16e }, /* XK_Uring, LATIN CAPITAL LETTER U WITH RING ABOVE */
    { 0x1db, 0x170 }, /* XK_Udoubleacute, LATIN CAPITAL LETTER U WITH DOUBLE ACUTE */
    { 0x1de, 0x162 }, /* XK_Tcedilla, LATIN CAPITAL LETTER T WITH CEDILLA */
    { 0x1e0, 0x155 }, /* XK_racute, LATIN SMALL LETTER R WITH ACUTE */
    { 0x1e3, 0x103 }, /* XK_abreve, LATIN SMALL LETTER A WITH BREVE */
    { 0x1e5, 0x13a }, /* XK_lacute, LATIN SMALL LETTER L WITH ACUTE */
    { 0x1e6, 0x107 }, /* XK_cacute, LATIN SMALL LETTER C WITH ACUTE */
    { 0x1e8, 0x10d }, /* XK_ccaron, LATIN SMALL LETTER C WITH CARON */
    { 0x1ea, 0x119 }, /* XK_eogonek, LATIN SMALL LETTER E WITH OGONEK */
    { 0x1ec, 0x11b }, /* XK_ecaron, LATIN SMALL LETTER E WITH CARON */
    { 0x1ef, 0x10f }, /* XK_dcaron, LATIN SMALL LETTER D WITH CARON */
    { 0x1f0, 0x111 }, /* XK_dstroke, LATIN SMALL LETTER D WITH STROKE */
    { 0x1f1, 0x144 }, /* XK_nacute, LATIN SMALL LETTER N WITH ACUTE */
    { 0x1f2, 0x148 }, /* XK_ncaron, LATIN SMALL LETTER N WITH CARON */
    { 0x1f5, 0x151 }, /* XK_odoubleacute, LATIN SMALL LETTER O WITH DOUBLE ACUTE */
    { 0x1f8, 0x159 }, /* XK_rcaron, LATIN SMALL LETTER R WITH CARON */
    { 0x1f9, 0x16f }, /* XK_uring, LATIN SMALL LETTER U WITH RING ABOVE */
    { 0x1fb, 0x171 }, /* XK_udoubleacute, LATIN SMALL LETTER U WITH DOUBLE ACUTE */
    { 0x1fe, 0x163 }, /* XK_tcedilla, LATIN SMALL LETTER T WITH CEDILLA */
    { 0x1ff, 0x2d9 }, /* XK_abovedot, DOT ABOVE */
    { 0x2a1, 0x126 }, /* XK_Hstroke, LATIN CAPITAL LETTER H WITH STROKE */
    { 0x2a6, 0x124 }, /* XK_Hcircumflex, LATIN CAPITAL LETTER H WITH CIRCUMFLEX */
    { 0x2a9, 0x130 }, /* XK_Iabovedot, LATIN CAPITAL LETTER I WITH DOT ABOVE */
    { 0x2ab, 0x11e }, /* XK_Gbreve, LATIN CAPITAL LETTER G WITH BREVE */
    { 0x2ac, 0x134 }, /* XK_Jcircumflex, LATIN CAPITAL LETTER J WITH CIRCUMFLEX */
    { 0x2b1, 0x127 }, /* XK_hstroke, LATIN SMALL LETTER H WITH STROKE */
    { 0x2b6, 0x125 }, /* XK_hcircumflex, LATIN SMALL LETTER H WITH CIRCUMFLEX */
    { 0x2b9, 0x131 }, /* XK_idotless, LATIN SMALL LETTER DOTLESS I */
    { 0x2bb, 0x11f }, /* XK_gbreve, LATIN SMALL LETTER G WITH BREVE */
    { 0x2bc, 0x135 }, /* XK_jcircumflex, LATIN SMALL LETTER J WITH CIRCUMFLEX */
    { 0x2c5, 0x10a }, /* XK_Cabovedot, LATIN CAPITAL LETTER C WITH DOT ABOVE */
    { 0x2c6, 0x108 }, /* XK_Ccircumflex, LATIN CAPITAL LETTER C WITH CIRCUMFLEX */
    { 0x2d5, 0x120 }, /* XK_Gabovedot, LATIN CAPITAL LETTER G WITH DOT ABOVE */
    { 0x2d8, 0x11c }, /* XK_Gcircumflex, LATIN CAPITAL LETTER G WITH CIRCUMFLEX */
    { 0x2dd, 0x16c }, /* XK_Ubreve, LATIN CAPITAL LETTER U WITH BREVE */
    { 0x2de, 0x15c }, /* XK_Scircumflex, LATIN CAPITAL LETTER S WITH CIRCUMFLEX */
    { 0x2e5, 0x10b }, /* XK_cabovedot, LATIN SMALL LETTER C WITH DOT ABOVE */
    { 0x2e6, 0x109 }, /* XK_ccircumflex, LATIN SMALL LETTER C WITH CIRCUMFLEX */
    { 0x2f5, 0x121 }, /* XK_gabovedot, LATIN SMALL LETTER G WITH DOT ABOVE */
    { 0x2f8, 0x11d }, /* XK_gcircumflex, LATIN SMALL LETTER G WITH CIRCUMFLEX */
    { 0x2fd, 0x16d }, /* XK_ubreve, LATIN SMALL LETTER U WITH BREVE */
    { 0x2fe, 0x15d }, /* XK_scircumflex, LATIN SMALL LETTER S WITH CIRCUMFLEX */
    { 0x3a2, 0x138 }, /* XK_kra, LATIN SMALL LETTER KRA */
    { 0x3a3, 0x156 }, /* XK_Rcedilla, LATIN CAPITAL LETTER R WITH CEDILLA */
    { 0x3a5, 0x128 }, /* XK_Itilde, LATIN CAPITAL LETTER I WITH TILDE */
    { 0x3a6, 0x13b }, /* XK_Lcedilla, LATIN CAPITAL LETTER L WITH CEDILLA */
    { 0x3aa, 0x112 }, /* XK_Emacron, LATIN CAPITAL LETTER E WITH MACRON */
    { 0x3ab, 0x122 }, /* XK_Gcedilla, LATIN CAPITAL LETTER G WITH CEDILLA */
    { 0x3ac, 0x166 }, /* XK_Tslash, LATIN CAPITAL LETTER T WITH STROKE */
    { 0x3b3, 0x157 }, /* XK_rcedilla, LATIN SMALL LETTER R WITH CEDILLA */
    { 0x3b5, 0x129 }, /* XK_itilde, LATIN SMALL LETTER I WITH TILDE */
    { 0x3b6, 0x13c }, /* XK_lcedilla, LATIN SMALL LETTER L WITH CEDILLA */
    { 0x3ba, 0x113 }, /* XK_emacron, LATIN SMALL LETTER E WITH MACRON */
    { 0x3bb, 0x123 }, /* XK_gcedilla, LATIN SMALL LETTER G WITH CEDILLA */
    { 0x3bc, 0x167 }, /* XK_tslash, LATIN SMALL LETTER T WITH STROKE */
    { 0x3bd, 0x14a }, /* XK_ENG, LATIN CAPITAL LETTER ENG */
    { 0x3bf, 0x14b }, /* XK_eng, LATIN SMALL LETTER ENG */
    { 0x3c0, 0x100 }, /* XK_Amacron, LATIN CAPITAL LETTER A WITH MACRON */
    { 0x3c7, 0x12e }, /* XK_Iogonek, LATIN CAPITAL LETTER I WITH OGONEK */
    { 0x3cc, 0x116 }, /* XK_Eabovedot, LATIN CAPITAL LETTER E WITH DOT ABOVE */
    { 0x3cf, 0x12a }, /* XK_Imacron, LATIN CAPITAL LETTER I WITH MACRON */
    { 0x3d1, 0x145 }, /* XK_Ncedilla, LATIN CAPITAL LETTER N WITH CEDILLA */
    { 0x3d2, 0x14c }, /* XK_Omacron, LATIN CAPITAL LETTER O WITH MACRON */
    { 0x3d3, 0x136 }, /* XK_Kcedilla, LATIN CAPITAL LETTER K WITH CEDILLA */
    { 0x3d9, 0x172 }, /* XK_Uogonek, LATIN CAPITAL LETTER U WITH OGONEK */
    { 0x3dd, 0x168 }, /* XK_Utilde, LATIN CAPITAL LETTER U WITH TILDE */
    { 0x3de, 0x16a }, /* XK_Umacron, LATIN CAPITAL LETTER U WITH MACRON */
    { 0x3e0, 0x101 }, /* XK_amacron, LATIN SMALL LETTER A WITH MACRON */
    { 0x3e7, 0x12f }, /* XK_iogonek, LATIN SMALL LETTER I WITH OGONEK */
    { 0x3ec, 0x117 }, /* XK_eabovedot, LATIN SMALL LETTER E WITH DOT ABOVE */
    { 0x3ef, 0x12b }, /* XK_imacron, LATIN SMALL LETTER I WITH MACRON */
    { 0x3f1, 0x146 }, /* XK_ncedilla, LATIN SMALL LETTER N WITH CEDILLA */
    { 0x3f2, 0x14d }, /* XK_omacron, LATIN SMALL LETTER O WITH MACRON */
    { 0x3f3, 0x137 }, /* XK_kcedilla, LATIN SMALL LETTER K WITH CEDILLA */
    { 0x3f9, 0x173 }, /* XK_uogonek, LATIN SMALL LETTER U WITH OGONEK */
    { 0x3fd, 0x169 }, /* XK_utilde, LATIN SMALL LETTER U WITH TILDE */
    { 0x3fe, 0x16b }, /* XK_umacron, LATIN SMALL LETTER U WITH MACRON */
    { 0x47e, 0x203e }, /* XK_overline, OVERLINE */
    { 0x4a1, 0x3002 }, /* XK_kana_fullstop, IDEOGRAPHIC FULL STOP */
    { 0x4a2, 0x300c }, /* XK_kana_openingbracket, LEFT CORNER BRACKET */
    { 0x4a3, 0x300d }, /* XK_kana_closingbracket, RIGHT CORNER BRACKET */
    { 0x4a4, 0x3001 }, /* XK_kana_comma, IDEOGRAPHIC COMMA */
    { 0x4a5, 0x30fb }, /* XK_kana_conjunctive, KATAKANA MIDDLE DOT */
    { 0x4a6, 0x30f2 }, /* XK_kana_WO, KATAKANA LETTER WO */
    { 0x4a7, 0x30a1 }, /* XK_kana_a, KATAKANA LETTER SMALL A */
    { 0x4a8, 0x30a3 }, /* XK_kana_i, KATAKANA LETTER SMALL I */
    { 0x4a9, 0x30a5 }, /* XK_kana_u, KATAKANA LETTER SMALL U */
    { 0x4aa, 0x30a7 }, /* XK_kana_e, KATAKANA LETTER SMALL E */
    { 0x4ab, 0x30a9 }, /* XK_kana_o, KATAKANA LETTER SMALL O */
    { 0x4ac, 0x30e3 }, /* XK_kana_ya, KATAKANA LETTER SMALL YA */
    { 0x4ad, 0x30e5 }, /* XK_kana_yu, KATAKANA LETTER SMALL YU */
    { 0x4ae, 0x30e7 }, /* XK_kana_yo, KATAKANA LETTER SMALL YO */
    { 0x4af, 0x30c3 }, /* XK_kana_tsu, KATAKANA LETTER SMALL TU */
    { 0x4b0, 0x30fc }, /* XK_prolongedsound, KATAKANA-HIRAGANA PROLONGED SOUND MARK */
    { 0x4b1, 0x30a2 }, /* XK_kana_A, KATAKANA LETTER A */
    { 0x4b2, 0x30a4 }, /* XK_kana_I, KATAKANA LETTER I */
    { 0x4b3, 0x30a6 }, /* XK_kana_U, KATAKANA LETTER U */
    { 0x4b4, 0x30a8 }, /* XK_kana_E, KATAKANA LETTER E */
    { 0x4b5, 0x30aa }, /* XK_kana_O, KATAKANA LETTER O */
    { 0x4b6, 0x30ab }, /* XK_kana_KA, KATAKANA LETTER KA */
    { 0x4b7, 0x30ad }, /* XK_kana_KI, KATAKANA LETTER KI */
    { 0x4b8, 0x30af }, /* XK_kana_KU, KATAKANA LETTER KU */
    { 0x4b9, 0x30b1 }, /* XK_kana_KE, KATAKANA LETTER KE */
    { 0x4ba, 0x30b3 }, /* XK_kana_KO, KATAKANA LETTER KO */
    { 0x4bb, 0x30b5 }, /* XK_kana_SA, KATAKANA LETTER SA */
    { 0x4bc, 0x30b7 }, /* XK_kana_SHI, KATAKANA LETTER SI */
    { 0x4bd, 0x30b9 }, /* XK_kana_SU, KATAKANA LETTER SU */
    { 0x4be, 0x30bb }, /* XK_kana_SE, KATAKANA LETTER SE */
    { 0x4bf, 0x30bd }, /* XK_kana_SO, KATAKANA LETTER SO */
    { 0x4c0, 0x30bf }, /* XK_kana_TA, KATAKANA LETTER TA */
    { 0x4c1, 0x30c1 }, /* XK_kana_CHI, KATAKANA LETTER TI */
    { 0x4c2, 0x30c4 }, /* XK_kana_TSU, KATAKANA LETTER TU */
    { 0x4c3, 0x30c6 }, /* XK_kana_TE, KATAKANA LETTER TE */
    { 0x4c4, 0x30c8 }, /* XK_kana_TO, KATAKANA LETTER TO */
    { 0x4c5, 0x30ca }, /* XK_kana_NA, KATAKANA LETTER NA */
    { 0x4c6, 0x30cb }, /* XK_kana_NI, KATAKANA LETTER NI */
    { 0x4c7, 0x30cc }, /* XK_kana_NU, KATAKANA LETTER NU */
    { 0x4c8, 0x30cd }, /* XK_kana_NE, KATAKANA LETTER NE */
    { 0x4c9, 0x30ce }, /* XK_kana_NO, KATAKANA LETTER NO */
    { 0x4ca, 0x30cf }, /* XK_kana_HA, KATAKANA LETTER HA */
    { 0x4cb, 0x30d2 }, /* XK_kana_HI, KATAKANA LETTER HI */
    { 0x4cc, 0x30d5 }, /* XK_kana_FU, KATAKANA LETTER HU */
    { 0x4cd, 0x30d8 }, /* XK_kana_HE, KATAKANA LETTER HE */
    { 0x4ce, 0x30db }, /* XK_kana_HO, KATAKANA LETTER HO */
    { 0x4cf, 0x30de }, /* XK_kana_MA, KATAKANA LETTER MA */
    { 0x4d0, 0x30df }, /* XK_kana_MI, KATAKANA LETTER MI */
    { 0x4d1, 0x30e0 }, /* XK_kana_MU, KATAKANA LETTER MU */
    { 0x4d2, 0x30e1 }, /* XK_kana_ME, KATAKANA LETTER ME */
    { 0x4d3, 0x30e2 }, /* XK_kana_MO, KATAKANA LETTER MO */
    { 0x4d4, 0x30e4 }, /* XK_kana_YA, KATAKANA LETTER YA */
    { 0x4d5, 0x30e6 }, /* XK_kana_YU, KATAKANA LETTER YU */
    { 0x4d6, 0x30e8 }, /* XK_kana_YO, KATAKANA LETTER YO */
    { 0x4d7, 0x30e9 }, /* XK_kana_RA, KATAKANA LETTER RA */
    { 0x4d8, 0x30ea }, /* XK_kana_RI, KATAKANA LETTER RI */
    { 0x4d9, 0x30eb }, /* XK_kana_RU, KATAKANA LETTER RU */
    { 0x4da, 0x30ec }, /* XK_kana_RE, KATAKANA LETTER RE */
    { 0x4db, 0x30ed }, /* XK_kana_RO, KATAKANA LETTER RO */
    { 0x4dc, 0x30ef }, /* XK_kana_WA, KATAKANA LETTER WA */
    { 0x4dd, 0x30f3 }, /* XK_kana_N, KATAKANA LETTER N */
    { 0x4de, 0x309b }, /* XK_voicedsound, KATAKANA-HIRAGANA VOICED SOUND MARK */
    { 0x4df, 0x309c }, /* XK_semivoicedsound, KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK */
    { 0x5ac, 0x60c }, /* XK_Arabic_comma, ARABIC COMMA */
    { 0x5bb, 0x61b }, /* XK_Arabic_semicolon, ARABIC SEMICOLON */
    { 0x5bf, 0x61f }, /* XK_Arabic_question_mark, ARABIC QUESTION MARK */
    { 0x5c1, 0x621 }, /* XK_Arabic_hamza, ARABIC LETTER HAMZA */
    { 0x5c2, 0x622 }, /* XK_Arabic_maddaonalef, ARABIC LETTER ALEF WITH MADDA ABOVE */
    { 0x5c3, 0x623 }, /* XK_Arabic_hamzaonalef, ARABIC LETTER ALEF WITH HAMZA ABOVE */
    { 0x5c4, 0x624 }, /* XK_Arabic_hamzaonwaw, ARABIC LETTER WAW WITH HAMZA ABOVE */
    { 0x5c5, 0x625 }, /* XK_Arabic_hamzaunderalef, ARABIC LETTER ALEF WITH HAMZA BELOW */
    { 0x5c6, 0x626 }, /* XK_Arabic_hamzaonyeh, ARABIC LETTER YEH WITH HAMZA ABOVE */
    { 0x5c7, 0x627 }, /* XK_Arabic_alef, ARABIC LETTER ALEF */
    { 0x5c8, 0x628 }, /* XK_Arabic_beh, ARABIC LETTER BEH */
    { 0x5c9, 0x629 }, /* XK_Arabic_tehmarbuta, ARABIC LETTER TEH MARBUTA */
    { 0x5ca, 0x62a }, /* XK_Arabic_teh, ARABIC LETTER TEH */
    { 0x5cb, 0x62b }, /* XK_Arabic_theh, ARABIC LETTER THEH */
    { 0x5cc, 0x62c }, /* XK_Arabic_jeem, ARABIC LETTER JEEM */
    { 0x5cd, 0x62d }, /* XK_Arabic_hah, ARABIC LETTER HAH */
    { 0x5ce, 0x62e }, /* XK_Arabic_khah, ARABIC LETTER KHAH */
    { 0x5cf, 0x62f }, /* XK_Arabic_dal, ARABIC LETTER DAL */
    { 0x5d0, 0x630 }, /* XK_Arabic_thal, ARABIC LETTER THAL */
    { 0x5d1, 0x631 }, /* XK_Arabic_ra, ARABIC LETTER REH */
    { 0x5d2, 0x632 }, /* XK_Arabic_zain, ARABIC LETTER ZAIN */
    { 0x5d3, 0x633 }, /* XK_Arabic_seen, ARABIC LETTER SEEN */
    { 0x5d4, 0x634 }, /* XK_Arabic_sheen, ARABIC LETTER SHEEN */
    { 0x5d5, 0x635 }, /* XK_Arabic_sad, ARABIC LETTER SAD */
    { 0x5d6, 0x636 }, /* XK_Arabic_dad, ARABIC LETTER DAD */
    { 0x5d7, 0x637 }, /* XK_Arabic_tah, ARABIC LETTER TAH */
    { 0x5d8, 0x638 }, /* XK_Arabic_zah, ARABIC LETTER ZAH */
    { 0x5d9, 0x639 }, /* XK_Arabic_ain, ARABIC LETTER AIN */
    { 0x5da, 0x63a }, /* XK_Arabic_ghain, ARABIC LETTER GHAIN */
    { 0x5e0, 0x640 }, /* XK_Arabic_tatweel, ARABIC TATWEEL */
    { 0x5e1, 0x641 }, /* XK_Arabic_feh, ARABIC LETTER FEH */
    { 0x5e2, 0x642 }, /* XK_Arabic_qaf, ARABIC LETTER QAF */
    { 0x5e3, 0x643 }, /* XK_Arabic_kaf, ARABIC LETTER KAF */
    { 0x5e4, 0x644 }, /* XK_Arabic_lam, ARABIC LETTER LAM */
    { 0x5e5, 0x645 }, /* XK_Arabic_meem, ARABIC LETTER MEEM */
    { 0x5e6, 0x646 }, /* XK_Arabic_noon, ARABIC LETTER NOON */
    { 0x5e7, 0x647 }, /* XK_Arabic_ha, ARABIC LETTER HEH */
    { 0x5e8, 0x648 }, /* XK_Arabic_waw, ARABIC LETTER WAW */
    { 0x5e9, 0x649 }, /* XK_Arabic_alefmaksura, ARABIC LETTER ALEF MAKSURA */
    { 0x5ea, 0x64a }, /* XK_Arabic_yeh, ARABIC LETTER YEH */
    { 0x5eb, 0x64b }, /* XK_Arabic_fathatan, ARABIC FATHATAN */
    { 0x5ec, 0x64c }, /* XK_Arabic_dammatan, ARABIC DAMMATAN */
    { 0x5ed, 0x64d }, /* XK_Arabic_kasratan, ARABIC KASRATAN */
    { 0x5ee, 0x64e }, /* XK_Arabic_fatha, ARABIC FATHA */
    { 0x5ef, 0x64f }, /* XK_Arabic_damma, ARABIC DAMMA */
    { 0x5f0, 0x650 }, /* XK_Arabic_kasra, ARABIC KASRA */
    { 0x5f1, 0x651 }, /* XK_Arabic_shadda, ARABIC SHADDA */
    { 0x5f2, 0x652 }, /* XK_Arabic_sukun, ARABIC SUKUN */
    { 0x6a1, 0x452 }, /* XK_Serbian_dje, CYRILLIC SMALL LETTER DJE */
    { 0x6a2, 0x453 }, /* XK_Macedonia_gje, CYRILLIC SMALL LETTER GJE */
    { 0x6a3, 0x451 }, /* XK_Cyrillic_io, CYRILLIC SMALL LETTER IO */
    { 0x6a4, 0x454 }, /* XK_Ukrainian_ie, CYRILLIC SMALL LETTER UKRAINIAN IE */
    { 0x6a5, 0x455 }, /* XK_Macedonia_dse, CYRILLIC SMALL LETTER DZE */
    { 0x6a6, 0x456 }, /* XK_Ukrainian_i, CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I */
    { 0x6a7, 0x457 }, /* XK_Ukrainian_yi, CYRILLIC SMALL LETTER YI */
    { 0x6a8, 0x458 }, /* XK_Cyrillic_je, CYRILLIC SMALL LETTER JE */
    { 0x6a9, 0x459 }, /* XK_Cyrillic_lje, CYRILLIC SMALL LETTER LJE */
    { 0x6aa, 0x45a }, /* XK_Cyrillic_nje, CYRILLIC SMALL LETTER NJE */
    { 0x6ab, 0x45b }, /* XK_Serbian_tshe, CYRILLIC SMALL LETTER TSHE */
    { 0x6ac, 0x45c }, /* XK_Macedonia_kje, CYRILLIC SMALL LETTER KJE */
    { 0x6ad, 0x491 }, /* XK_Ukrainian_ghe_with_upturn, CYRILLIC SMALL LETTER GHE WITH UPTURN */
    { 0x6ae, 0x45e }, /* XK_Byelorussian_shortu, CYRILLIC SMALL LETTER SHORT U */
    { 0x6af, 0x45f }, /* XK_Cyrillic_dzhe, CYRILLIC SMALL LETTER DZHE */
    { 0x6b0, 0x2116 }, /* XK_numerosign, NUMERO SIGN */
    { 0x6b1, 0x402 }, /* XK_Serbian_DJE, CYRILLIC CAPITAL LETTER DJE */
    { 0x6b2, 0x403 }, /* XK_Macedonia_GJE, CYRILLIC CAPITAL LETTER GJE */
    { 0x6b3, 0x401 }, /* XK_Cyrillic_IO, CYRILLIC CAPITAL LETTER IO */
    { 0x6b4, 0x404 }, /* XK_Ukrainian_IE, CYRILLIC CAPITAL LETTER UKRAINIAN IE */
    { 0x6b5, 0x405 }, /* XK_Macedonia_DSE, CYRILLIC CAPITAL LETTER DZE */
    { 0x6b6, 0x406 }, /* XK_Ukrainian_I, CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I */
    { 0x6b7, 0x407 }, /* XK_Ukrainian_YI, CYRILLIC CAPITAL LETTER YI */
    { 0x6b8, 0x408 }, /* XK_Cyrillic_JE, CYRILLIC CAPITAL LETTER JE */
    { 0x6b9, 0x409 }, /* XK_Cyrillic_LJE, CYRILLIC CAPITAL LETTER LJE */
    { 0x6ba, 0x40a }, /* XK_Cyrillic_NJE, CYRILLIC CAPITAL LETTER NJE */
    { 0x6bb, 0x40b }, /* XK_Serbian_TSHE, CYRILLIC CAPITAL LETTER TSHE */
    { 0x6bc, 0x40c }, /* XK_Macedonia_KJE, CYRILLIC CAPITAL LETTER KJE */
    { 0x6bd, 0x490 }, /* XK_Ukrainian_GHE_WITH_UPTURN, CYRILLIC CAPITAL LETTER GHE WITH UPTURN */
    { 0x6be, 0x40e }, /* XK_Byelorussian_SHORTU, CYRILLIC CAPITAL LETTER SHORT U */
    { 0x6bf, 0x40f }, /* XK_Cyrillic_DZHE, CYRILLIC CAPITAL LETTER DZHE */
    { 0x6c0, 0x44e }, /* XK_Cyrillic_yu, CYRILLIC SMALL LETTER YU */
    { 0x6c1, 0x430 }, /* XK_Cyrillic_a, CYRILLIC SMALL LETTER A */
    { 0x6c2, 0x431 }, /* XK_Cyrillic_be, CYRILLIC SMALL LETTER BE */
    { 0x6c3, 0x446 }, /* XK_Cyrillic_tse, CYRILLIC SMALL LETTER TSE */
    { 0x6c4, 0x434 }, /* XK_Cyrillic_de, CYRILLIC SMALL LETTER DE */
    { 0x6c5, 0x435 }, /* XK_Cyrillic_ie, CYRILLIC SMALL LETTER IE */
    { 0x6c6, 0x444 }, /* XK_Cyrillic_ef, CYRILLIC SMALL LETTER EF */
    { 0x6c7, 0x433 }, /* XK_Cyrillic_ghe, CYRILLIC SMALL LETTER GHE */
    { 0x6c8, 0x445 }, /* XK_Cyrillic_ha, CYRILLIC SMALL LETTER HA */
    { 0x6c9, 0x438 }, /* XK_Cyrillic_i, CYRILLIC SMALL LETTER I */
    { 0x6ca, 0x439 }, /* XK_Cyrillic_shorti, CYRILLIC SMALL LETTER SHORT I */
    { 0x6cb, 0x43a }, /* XK_Cyrillic_ka, CYRILLIC SMALL LETTER KA */
    { 0x6cc, 0x43b }, /* XK_Cyrillic_el, CYRILLIC SMALL LETTER EL */
    { 0x6cd, 0x43c }, /* XK_Cyrillic_em, CYRILLIC SMALL LETTER EM */
    { 0x6ce, 0x43d }, /* XK_Cyrillic_en, CYRILLIC SMALL LETTER EN */
    { 0x6cf, 0x43e }, /* XK_Cyrillic_o, CYRILLIC SMALL LETTER O */
    { 0x6d0, 0x43f }, /* XK_Cyrillic_pe, CYRILLIC SMALL LETTER PE */
    { 0x6d1, 0x44f }, /* XK_Cyrillic_ya, CYRILLIC SMALL LETTER YA */
    { 0x6d2, 0x440 }, /* XK_Cyrillic_er, CYRILLIC SMALL LETTER ER */
    { 0x6d3, 0x441 }, /* XK_Cyrillic_es, CYRILLIC SMALL LETTER ES */
    { 0x6d4, 0x442 }, /* XK_Cyrillic_te, CYRILLIC SMALL LETTER TE */
    { 0x6d5, 0x443 }, /* XK_Cyrillic_u, CYRILLIC SMALL LETTER U */
    { 0x6d6, 0x436 }, /* XK_Cyrillic_zhe, CYRILLIC SMALL LETTER ZHE */
    { 0x6d7, 0x432 }, /* XK_Cyrillic_ve, CYRILLIC SMALL LETTER VE */
    { 0x6d8, 0x44c }, /* XK_Cyrillic_softsign, CYRILLIC SMALL LETTER SOFT SIGN */
    { 0x6d9, 0x44b }, /* XK_Cyrillic_yeru, CYRILLIC SMALL LETTER YERU */
    { 0x6da, 0x437 }, /* XK_Cyrillic_ze, CYRILLIC SMALL LETTER ZE */
    { 0x6db, 0x448 }, /* XK_Cyrillic_sha, CYRILLIC SMALL LETTER SHA */
    { 0x6dc, 0x44d }, /* XK_Cyrillic_e, CYRILLIC SMALL LETTER E */
    { 0x6dd, 0x449 }, /* XK_Cyrillic_shcha, CYRILLIC SMALL LETTER SHCHA */
    { 0x6de, 0x447 }, /* XK_Cyrillic_che, CYRILLIC SMALL LETTER CHE */
    { 0x6df, 0x44a }, /* XK_Cyrillic_hardsign, CYRILLIC SMALL LETTER HARD SIGN */
    { 0x6e0, 0x42e }, /* XK_Cyrillic_YU, CYRILLIC CAPITAL LETTER YU */
    { 0x6e1, 0x410 }, /* XK_Cyrillic_A, CYRILLIC CAPITAL LETTER A */
    { 0x6e2, 0x411 }, /* XK_Cyrillic_BE, CYRILLIC CAPITAL LETTER BE */
    { 0x6e3, 0x426 }, /* XK_Cyrillic_TSE, CYRILLIC CAPITAL LETTER TSE */
    { 0x6e4, 0x414 }, /* XK_Cyrillic_DE, CYRILLIC CAPITAL LETTER DE */
    { 0x6e5, 0x415 }, /* XK_Cyrillic_IE, CYRILLIC CAPITAL LETTER IE */
    { 0x6e6, 0x424 }, /* XK_Cyrillic_EF, CYRILLIC CAPITAL LETTER EF */
    { 0x6e7, 0x413 }, /* XK_Cyrillic_GHE, CYRILLIC CAPITAL LETTER GHE */
    { 0x6e8, 0x425 }, /* XK_Cyrillic_HA, CYRILLIC CAPITAL LETTER HA */
    { 0x6e9, 0x418 }, /* XK_Cyrillic_I, CYRILLIC CAPITAL LETTER I */
    { 0x6ea, 0x419 }, /* XK_Cyrillic_SHORTI, CYRILLIC CAPITAL LETTER SHORT I */
    { 0x6eb, 0x41a }, /* XK_Cyrillic_KA, CYRILLIC CAPITAL LETTER KA */
    { 0x6ec, 0x41b }, /* XK_Cyrillic_EL, CYRILLIC CAPITAL LETTER EL */
    { 0x6ed, 0x41c }, /* XK_Cyrillic_EM, CYRILLIC CAPITAL LETTER EM */
    { 0x6ee, 0x41d }, /* XK_Cyrillic_EN, CYRILLIC CAPITAL LETTER EN */
    { 0x6ef, 0x41e }, /* XK_Cyrillic_O, CYRILLIC CAPITAL LETTER O */
    { 0x6f0, 0x41f }, /* XK_Cyrillic_PE, CYRILLIC CAPITAL LETTER PE */
    { 0x6f1, 0x42f }, /* XK_Cyrillic_YA, CYRILLIC CAPITAL LETTER YA */
    { 0x6f2, 0x420 }, /* XK_Cyrillic_ER, CYRILLIC CAPITAL LETTER ER */
    { 0x6f3, 0x421 }, /* XK_Cyrillic_ES, CYRILLIC CAPITAL LETTER ES */
    { 0x6f4, 0x422 }, /* XK_Cyrillic_TE, CYRILLIC CAPITAL LETTER TE */
    { 0x6f5, 0x423 }, /* XK_Cyrillic_U, CYRILLIC CAPITAL LETTER U */
    { 0x6f6, 0x416 }, /* XK_Cyrillic_ZHE, CYRILLIC CAPITAL LETTER ZHE */
    { 0x6f7, 0x412 }, /* XK_Cyrillic_VE, CYRILLIC CAPITAL LETTER VE */
    { 0x6f8, 0x42c }, /* XK_Cyrillic_SOFTSIGN, CYRILLIC CAPITAL LETTER SOFT SIGN */
    { 0x6f9, 0x42b }, /* XK_Cyrillic_YERU, CYRILLIC CAPITAL LETTER YERU */
    { 0x6fa, 0x417 }, /* XK_Cyrillic_ZE, CYRILLIC CAPITAL LETTER ZE */
    { 0x6fb, 0x428 }, /* XK_Cyrillic_SHA, CYRILLIC CAPITAL LETTER SHA */
    { 0x6fc, 0x42d }, /* XK_Cyrillic_E, CYRILLIC CAPITAL LETTER E */
    { 0x6fd, 0x429 }, /* XK_Cyrillic_SHCHA, CYRILLIC CAPITAL LETTER SHCHA */
    { 0x6fe, 0x427 }, /* XK_Cyrillic_CHE, CYRILLIC CAPITAL LETTER CHE */
    { 0x6ff, 0x42a }, /* XK_Cyrillic_HARDSIGN, CYRILLIC CAPITAL LETTER HARD SIGN */
    { 0x7a1, 0x386 }, /* XK_Greek_ALPHAaccent, GREEK CAPITAL LETTER ALPHA WITH TONOS */
    { 0x7a2, 0x388 }, /* XK_Greek_EPSILONaccent, GREEK CAPITAL LETTER EPSILON WITH TONOS */
    { 0x7a3, 0x389 }, /* XK_Greek_ETAaccent, GREEK CAPITAL LETTER ETA WITH TONOS */
    { 0x7a4, 0x38a }, /* XK_Greek_IOTAaccent, GREEK CAPITAL LETTER IOTA WITH TONOS */
    { 0x7a5, 0x3aa }, /* XK_Greek_IOTAdieresis, GREEK CAPITAL LETTER IOTA WITH DIALYTIKA */
    { 0x7a7, 0x38c }, /* XK_Greek_OMICRONaccent, GREEK CAPITAL LETTER OMICRON WITH TONOS */
    { 0x7a8, 0x38e }, /* XK_Greek_UPSILONaccent, GREEK CAPITAL LETTER UPSILON WITH TONOS */
    { 0x7a9, 0x3ab }, /* XK_Greek_UPSILONdieresis, GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA */
    { 0x7ab, 0x38f }, /* XK_Greek_OMEGAaccent, GREEK CAPITAL LETTER OMEGA WITH TONOS */
    { 0x7ae, 0x385 }, /* XK_Greek_accentdieresis, GREEK DIALYTIKA TONOS */
    { 0x7af, 0x2015 }, /* XK_Greek_horizbar, HORIZONTAL BAR */
    { 0x7b1, 0x3ac }, /* XK_Greek_alphaaccent, GREEK SMALL LETTER ALPHA WITH TONOS */
    { 0x7b2, 0x3ad }, /* XK_Greek_epsilonaccent, GREEK SMALL LETTER EPSILON WITH TONOS */
    { 0x7b3, 0x3ae }, /* XK_Greek_etaaccent, GREEK SMALL LETTER ETA WITH TONOS */
    { 0x7b4, 0x3af }, /* XK_Greek_iotaaccent, GREEK SMALL LETTER IOTA WITH TONOS */
    { 0x7b5, 0x3ca }, /* XK_Greek_iotadieresis, GREEK SMALL LETTER IOTA WITH DIALYTIKA */
    { 0x7b6, 0x390 }, /* XK_Greek_iotaaccentdieresis, GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS */
    { 0x7b7, 0x3cc }, /* XK_Greek_omicronaccent, GREEK SMALL LETTER OMICRON WITH TONOS */
    { 0x7b8, 0x3cd }, /* XK_Greek_upsilonaccent, GREEK SMALL LETTER UPSILON WITH TONOS */
    { 0x7b9, 0x3cb }, /* XK_Greek_upsilondieresis, GREEK SMALL LETTER UPSILON WITH DIALYTIKA */
    { 0x7ba, 0x3b0 }, /* XK_Greek_upsilonaccentdieresis, GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS */
    { 0x7bb, 0x3ce }, /* XK_Greek_omegaaccent, GREEK SMALL LETTER OMEGA WITH TONOS */
    { 0x7c1, 0x391 }, /* XK_Greek_ALPHA, GREEK CAPITAL LETTER ALPHA */
    { 0x7c2, 0x392 }, /* XK_Greek_BETA, GREEK CAPITAL LETTER BETA */
    { 0x7c3, 0x393 }, /* XK_Greek_GAMMA, GREEK CAPITAL LETTER GAMMA */
    { 0x7c4, 0x394 }, /* XK_Greek_DELTA, GREEK CAPITAL LETTER DELTA */
    { 0x7c5, 0x395 }, /* XK_Greek_EPSILON, GREEK CAPITAL LETTER EPSILON */
    { 0x7c6, 0x396 }, /* XK_Greek_ZETA, GREEK CAPITAL LETTER ZETA */
    { 0x7c7, 0x397 }, /* XK_Greek_ETA, GREEK CAPITAL LETTER ETA */
    { 0x7c8, 0x398 }, /* XK_Greek_THETA, GREEK CAPITAL LETTER THETA */
    { 0x7c9, 0x399 }, /* XK_Greek_IOTA, GREEK CAPITAL LETTER IOTA */
    { 0x7ca, 0x39a }, /* XK_Greek_KAPPA, GREEK CAPITAL LETTER KAPPA */
    { 0x7cb, 0x39b }, /* XK_Greek_LAMDA, GREEK CAPITAL LETTER LAMDA */
    { 0x7cb, 0x39b }, /* XK_Greek_LAMBDA, GREEK CAPITAL LETTER LAMDA */
    { 0x7cc, 0x39c }, /* XK_Greek_MU, GREEK CAPITAL LETTER MU */
    { 0x7cd, 0x39d }, /* XK_Greek_NU, GREEK CAPITAL LETTER NU */
    { 0x7ce, 0x39e }, /* XK_Greek_XI, GREEK CAPITAL LETTER XI */
    { 0x7cf, 0x39f }, /* XK_Greek_OMICRON, GREEK CAPITAL LETTER OMICRON */
    { 0x7d0, 0x3a0 }, /* XK_Greek_PI, GREEK CAPITAL LETTER PI */
    { 0x7d1, 0x3a1 }, /* XK_Greek_RHO, GREEK CAPITAL LETTER RHO */
    { 0x7d2, 0x3a3 }, /* XK_Greek_SIGMA, GREEK CAPITAL LETTER SIGMA */
    { 0x7d4, 0x3a4 }, /* XK_Greek_TAU, GREEK CAPITAL LETTER TAU */
    { 0x7d5, 0x3a5 }, /* XK_Greek_UPSILON, GREEK CAPITAL LETTER UPSILON */
    { 0x7d6, 0x3a6 }, /* XK_Greek_PHI, GREEK CAPITAL LETTER PHI */
    { 0x7d7, 0x3a7 }, /* XK_Greek_CHI, GREEK CAPITAL LETTER CHI */
    { 0x7d8, 0x3a8 }, /* XK_Greek_PSI, GREEK CAPITAL LETTER PSI */
    { 0x7d9, 0x3a9 }, /* XK_Greek_OMEGA, GREEK CAPITAL LETTER OMEGA */
    { 0x7e1, 0x3b1 }, /* XK_Greek_alpha, GREEK SMALL LETTER ALPHA */
    { 0x7e2, 0x3b2 }, /* XK_Greek_beta, GREEK SMALL LETTER BETA */
    { 0x7e3, 0x3b3 }, /* XK_Greek_gamma, GREEK SMALL LETTER GAMMA */
    { 0x7e4, 0x3b4 }, /* XK_Greek_delta, GREEK SMALL LETTER DELTA */
    { 0x7e5, 0x3b5 }, /* XK_Greek_epsilon, GREEK SMALL LETTER EPSILON */
    { 0x7e6, 0x3b6 }, /* XK_Greek_zeta, GREEK SMALL LETTER ZETA */
    { 0x7e7, 0x3b7 }, /* XK_Greek_eta, GREEK SMALL LETTER ETA */
    { 0x7e8, 0x3b8 }, /* XK_Greek_theta, GREEK SMALL LETTER THETA */
    { 0x7e9, 0x3b9 }, /* XK_Greek_iota, GREEK SMALL LETTER IOTA */
    { 0x7ea, 0x3ba }, /* XK_Greek_kappa, GREEK SMALL LETTER KAPPA */
    { 0x7eb, 0x3bb }, /* XK_Greek_lamda, GREEK SMALL LETTER LAMDA */
    { 0x7eb, 0x3bb }, /* XK_Greek_lambda, GREEK SMALL LETTER LAMDA */
    { 0x7ec, 0x3bc }, /* XK_Greek_mu, GREEK SMALL LETTER MU */
    { 0x7ed, 0x3bd }, /* XK_Greek_nu, GREEK SMALL LETTER NU */
    { 0x7ee, 0x3be }, /* XK_Greek_xi, GREEK SMALL LETTER XI */
    { 0x7ef, 0x3bf }, /* XK_Greek_omicron, GREEK SMALL LETTER OMICRON */
    { 0x7f0, 0x3c0 }, /* XK_Greek_pi, GREEK SMALL LETTER PI */
    { 0x7f1, 0x3c1 }, /* XK_Greek_rho, GREEK SMALL LETTER RHO */
    { 0x7f2, 0x3c3 }, /* XK_Greek_sigma, GREEK SMALL LETTER SIGMA */
    { 0x7f3, 0x3c2 }, /* XK_Greek_finalsmallsigma, GREEK SMALL LETTER FINAL SIGMA */
    { 0x7f4, 0x3c4 }, /* XK_Greek_tau, GREEK SMALL LETTER TAU */
    { 0x7f5, 0x3c5 }, /* XK_Greek_upsilon, GREEK SMALL LETTER UPSILON */
    { 0x7f6, 0x3c6 }, /* XK_Greek_phi, GREEK SMALL LETTER PHI */
    { 0x7f7, 0x3c7 }, /* XK_Greek_chi, GREEK SMALL LETTER CHI */
    { 0x7f8, 0x3c8 }, /* XK_Greek_psi, GREEK SMALL LETTER PSI */
    { 0x7f9, 0x3c9 }, /* XK_Greek_omega, GREEK SMALL LETTER OMEGA */
    { 0x8a1, 0x23b7 }, /* XK_leftradical, RADICAL SYMBOL BOTTOM */
    { 0x8a4, 0x2320 }, /* XK_topintegral, TOP HALF INTEGRAL */
    { 0x8a5, 0x2321 }, /* XK_botintegral, BOTTOM HALF INTEGRAL */
    { 0x8a7, 0x23a1 }, /* XK_topleftsqbracket, LEFT SQUARE BRACKET UPPER CORNER */
    { 0x8a8, 0x23a3 }, /* XK_botleftsqbracket, LEFT SQUARE BRACKET LOWER CORNER */
    { 0x8a9, 0x23a4 }, /* XK_toprightsqbracket, RIGHT SQUARE BRACKET UPPER CORNER */
    { 0x8aa, 0x23a6 }, /* XK_botrightsqbracket, RIGHT SQUARE BRACKET LOWER CORNER */
    { 0x8ab, 0x239b }, /* XK_topleftparens, LEFT PARENTHESIS UPPER HOOK */
    { 0x8ac, 0x239d }, /* XK_botleftparens, LEFT PARENTHESIS LOWER HOOK */
    { 0x8ad, 0x239e }, /* XK_toprightparens, RIGHT PARENTHESIS UPPER HOOK */
    { 0x8ae, 0x23a0 }, /* XK_botrightparens, RIGHT PARENTHESIS LOWER HOOK */
    { 0x8af, 0x23a8 }, /* XK_leftmiddlecurlybrace, LEFT CURLY BRACKET MIDDLE PIECE */
    { 0x8b0, 0x23ac }, /* XK_rightmiddlecurlybrace, RIGHT CURLY BRACKET MIDDLE PIECE */
    { 0x8bc, 0x2264 }, /* XK_lessthanequal, LESS-THAN OR EQUAL TO */
    { 0x8bd, 0x2260 }, /* XK_notequal, NOT EQUAL TO */
    { 0x8be, 0x2265 }, /* XK_greaterthanequal, GREATER-THAN OR EQUAL TO */
    { 0x8bf, 0x222b }, /* XK_integral, INTEGRAL */
    { 0x8c0, 0x2234 }, /* XK_therefore, THEREFORE */
    { 0x8c1, 0x221d }, /* XK_variation, PROPORTIONAL TO */
    { 0x8c2, 0x221e }, /* XK_infinity, INFINITY */
    { 0x8c5, 0x2207 }, /* XK_nabla, NABLA */
    { 0x8c8, 0x223c }, /* XK_approximate, TILDE OPERATOR */
    { 0x8c9, 0x2243 }, /* XK_similarequal, ASYMPTOTICALLY EQUAL TO */
    { 0x8cd, 0x21d4 }, /* XK_ifonlyif, LEFT RIGHT DOUBLE ARROW */
    { 0x8ce, 0x21d2 }, /* XK_implies, RIGHTWARDS DOUBLE ARROW */
    { 0x8cf, 0x2261 }, /* XK_identical, IDENTICAL TO */
    { 0x8d6, 0x221a }, /* XK_radical, SQUARE ROOT */
    { 0x8da, 0x2282 }, /* XK_includedin, SUBSET OF */
    { 0x8db, 0x2283 }, /* XK_includes, SUPERSET OF */
    { 0x8dc, 0x2229 }, /* XK_intersection, INTERSECTION */
    { 0x8dd, 0x222a }, /* XK_union, UNION */
    { 0x8de, 0x2227 }, /* XK_logicaland, LOGICAL AND */
    { 0x8df, 0x2228 }, /* XK_logicalor, LOGICAL OR */
    { 0x8ef, 0x2202 }, /* XK_partialderivative, PARTIAL DIFFERENTIAL */
    { 0x8f6, 0x192 }, /* XK_function, LATIN SMALL LETTER F WITH HOOK */
    { 0x8fb, 0x2190 }, /* XK_leftarrow, LEFTWARDS ARROW */
    { 0x8fc, 0x2191 }, /* XK_uparrow, UPWARDS ARROW */
    { 0x8fd, 0x2192 }, /* XK_rightarrow, RIGHTWARDS ARROW */
    { 0x8fe, 0x2193 }, /* XK_downarrow, DOWNWARDS ARROW */
    { 0x9e0, 0x25c6 }, /* XK_soliddiamond, BLACK DIAMOND */
    { 0x9e1, 0x2592 }, /* XK_checkerboard, MEDIUM SHADE */
    { 0x9e2, 0x2409 }, /* XK_ht, SYMBOL FOR HORIZONTAL TABULATION */
    { 0x9e3, 0x240c }, /* XK_ff, SYMBOL FOR FORM FEED */
    { 0x9e4, 0x240d }, /* XK_cr, SYMBOL FOR CARRIAGE RETURN */
    { 0x9e5, 0x240a }, /* XK_lf, SYMBOL FOR LINE FEED */
    { 0x9e8, 0x2424 }, /* XK_nl, SYMBOL FOR NEWLINE */
    { 0x9e9, 0x240b }, /* XK_vt, SYMBOL FOR VERTICAL TABULATION */
    { 0x9ea, 0x2518 }, /* XK_lowrightcorner, BOX DRAWINGS LIGHT UP AND LEFT */
    { 0x9eb, 0x2510 }, /* XK_uprightcorner, BOX DRAWINGS LIGHT DOWN AND LEFT */
    { 0x9ec, 0x250c }, /* XK_upleftcorner, BOX DRAWINGS LIGHT DOWN AND RIGHT */
    { 0x9ed, 0x2514 }, /* XK_lowleftcorner, BOX DRAWINGS LIGHT UP AND RIGHT */
    { 0x9ee, 0x253c }, /* XK_crossinglines, BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL */
    { 0x9f4, 0x251c }, /* XK_leftt, BOX DRAWINGS LIGHT VERTICAL AND RIGHT */
    { 0x9f5, 0x2524 }, /* XK_rightt, BOX DRAWINGS LIGHT VERTICAL AND LEFT */
    { 0x9f6, 0x2534 }, /* XK_bott, BOX DRAWINGS LIGHT UP AND HORIZONTAL */
    { 0x9f7, 0x252c }, /* XK_topt, BOX DRAWINGS LIGHT DOWN AND HORIZONTAL */
    { 0x9f8, 0x2502 }, /* XK_vertbar, BOX DRAWINGS LIGHT VERTICAL */
    { 0xaa1, 0x2003 }, /* XK_emspace, EM SPACE */
    { 0xaa2, 0x2002 }, /* XK_enspace, EN SPACE */
    { 0xaa5, 0x2007 }, /* XK_digitspace, FIGURE SPACE */
    { 0xaa6, 0x2008 }, /* XK_punctspace, PUNCTUATION SPACE */
    { 0xaa7, 0x2009 }, /* XK_thinspace, THIN SPACE */
    { 0xaa8, 0x200a }, /* XK_hairspace, HAIR SPACE */
    { 0xaa9, 0x2014 }, /* XK_emdash, EM DASH */
    { 0xaaa, 0x2013 }, /* XK_endash, EN DASH */
    { 0xaae, 0x2026 }, /* XK_ellipsis, HORIZONTAL ELLIPSIS */
    { 0xaaf, 0x2025 }, /* XK_doubbaselinedot, TWO DOT LEADER */
    { 0xab0, 0x2153 }, /* XK_onethird, VULGAR FRACTION ONE THIRD */
    { 0xab1, 0x2154 }, /* XK_twothirds, VULGAR FRACTION TWO THIRDS */
    { 0xab2, 0x2155 }, /* XK_onefifth, VULGAR FRACTION ONE FIFTH */
    { 0xab3, 0x2156 }, /* XK_twofifths, VULGAR FRACTION TWO FIFTHS */
    { 0xab4, 0x2157 }, /* XK_threefifths, VULGAR FRACTION THREE FIFTHS */
    { 0xab5, 0x2158 }, /* XK_fourfifths, VULGAR FRACTION FOUR FIFTHS */
    { 0xab6, 0x2159 }, /* XK_onesixth, VULGAR FRACTION ONE SIXTH */
    { 0xab7, 0x215a }, /* XK_fivesixths, VULGAR FRACTION FIVE SIXTHS */
    { 0xab8, 0x2105 }, /* XK_careof, CARE OF */
    { 0xabb, 0x2012 }, /* XK_figdash, FIGURE DASH */
    { 0xac3, 0x215b }, /* XK_oneeighth, VULGAR FRACTION ONE EIGHTH */
    { 0xac4, 0x215c }, /* XK_threeeighths, VULGAR FRACTION THREE EIGHTHS */
    { 0xac5, 0x215d }, /* XK_fiveeighths, VULGAR FRACTION FIVE EIGHTHS */
    { 0xac6, 0x215e }, /* XK_seveneighths, VULGAR FRACTION SEVEN EIGHTHS */
    { 0xac9, 0x2122 }, /* XK_trademark, TRADE MARK SIGN */
    { 0xad0, 0x2018 }, /* XK_leftsinglequotemark, LEFT SINGLE QUOTATION MARK */
    { 0xad1, 0x2019 }, /* XK_rightsinglequotemark, RIGHT SINGLE QUOTATION MARK */
    { 0xad2, 0x201c }, /* XK_leftdoublequotemark, LEFT DOUBLE QUOTATION MARK */
    { 0xad3, 0x201d }, /* XK_rightdoublequotemark, RIGHT DOUBLE QUOTATION MARK */
    { 0xad4, 0x211e }, /* XK_prescription, PRESCRIPTION TAKE */
    { 0xad5, 0x2030 }, /* XK_permille, PER MILLE SIGN */
    { 0xad6, 0x2032 }, /* XK_minutes, PRIME */
    { 0xad7, 0x2033 }, /* XK_seconds, DOUBLE PRIME */
    { 0xad9, 0x271d }, /* XK_latincross, LATIN CROSS */
    { 0xaec, 0x2663 }, /* XK_club, BLACK CLUB SUIT */
    { 0xaed, 0x2666 }, /* XK_diamond, BLACK DIAMOND SUIT */
    { 0xaee, 0x2665 }, /* XK_heart, BLACK HEART SUIT */
    { 0xaf0, 0x2720 }, /* XK_maltesecross, MALTESE CROSS */
    { 0xaf1, 0x2020 }, /* XK_dagger, DAGGER */
    { 0xaf2, 0x2021 }, /* XK_doubledagger, DOUBLE DAGGER */
    { 0xaf3, 0x2713 }, /* XK_checkmark, CHECK MARK */
    { 0xaf4, 0x2717 }, /* XK_ballotcross, BALLOT X */
    { 0xaf5, 0x266f }, /* XK_musicalsharp, MUSIC SHARP SIGN */
    { 0xaf6, 0x266d }, /* XK_musicalflat, MUSIC FLAT SIGN */
    { 0xaf7, 0x2642 }, /* XK_malesymbol, MALE SIGN */
    { 0xaf8, 0x2640 }, /* XK_femalesymbol, FEMALE SIGN */
    { 0xaf9, 0x260e }, /* XK_telephone, BLACK TELEPHONE */
    { 0xafa, 0x2315 }, /* XK_telephonerecorder, TELEPHONE RECORDER */
    { 0xafb, 0x2117 }, /* XK_phonographcopyright, SOUND RECORDING COPYRIGHT */
    { 0xafc, 0x2038 }, /* XK_caret, CARET */
    { 0xafd, 0x201a }, /* XK_singlelowquotemark, SINGLE LOW-9 QUOTATION MARK */
    { 0xafe, 0x201e }, /* XK_doublelowquotemark, DOUBLE LOW-9 QUOTATION MARK */
    { 0xbc2, 0x22a4 }, /* XK_downtack, DOWN TACK */
    { 0xbc4, 0x230a }, /* XK_downstile, LEFT FLOOR */
    { 0xbca, 0x2218 }, /* XK_jot, RING OPERATOR */
    { 0xbcc, 0x2395 }, /* XK_quad, APL FUNCTIONAL SYMBOL QUAD */
    { 0xbce, 0x22a5 }, /* XK_uptack, UP TACK */
    { 0xbcf, 0x25cb }, /* XK_circle, WHITE CIRCLE */
    { 0xbd3, 0x2308 }, /* XK_upstile, LEFT CEILING */
    { 0xbdc, 0x22a3 }, /* XK_lefttack, LEFT TACK */
    { 0xbfc, 0x22a2 }, /* XK_righttack, RIGHT TACK */
    { 0xcdf, 0x2017 }, /* XK_hebrew_doublelowline, DOUBLE LOW LINE */
    { 0xce0, 0x5d0 }, /* XK_hebrew_aleph, HEBREW LETTER ALEF */
    { 0xce1, 0x5d1 }, /* XK_hebrew_bet, HEBREW LETTER BET */
    { 0xce2, 0x5d2 }, /* XK_hebrew_gimel, HEBREW LETTER GIMEL */
    { 0xce3, 0x5d3 }, /* XK_hebrew_dalet, HEBREW LETTER DALET */
    { 0xce4, 0x5d4 }, /* XK_hebrew_he, HEBREW LETTER HE */
    { 0xce5, 0x5d5 }, /* XK_hebrew_waw, HEBREW LETTER VAV */
    { 0xce6, 0x5d6 }, /* XK_hebrew_zain, HEBREW LETTER ZAYIN */
    { 0xce7, 0x5d7 }, /* XK_hebrew_chet, HEBREW LETTER HET */
    { 0xce8, 0x5d8 }, /* XK_hebrew_tet, HEBREW LETTER TET */
    { 0xce9, 0x5d9 }, /* XK_hebrew_yod, HEBREW LETTER YOD */
    { 0xcea, 0x5da }, /* XK_hebrew_finalkaph, HEBREW LETTER FINAL KAF */
    { 0xceb, 0x5db }, /* XK_hebrew_kaph, HEBREW LETTER KAF */
    { 0xcec, 0x5dc }, /* XK_hebrew_lamed, HEBREW LETTER LAMED */
    { 0xced, 0x5dd }, /* XK_hebrew_finalmem, HEBREW LETTER FINAL MEM */
    { 0xcee, 0x5de }, /* XK_hebrew_mem, HEBREW LETTER MEM */
    { 0xcef, 0x5df }, /* XK_hebrew_finalnun, HEBREW LETTER FINAL NUN */
    { 0xcf0, 0x5e0 }, /* XK_hebrew_nun, HEBREW LETTER NUN */
    { 0xcf1, 0x5e1 }, /* XK_hebrew_samech, HEBREW LETTER SAMEKH */
    { 0xcf2, 0x5e2 }, /* XK_hebrew_ayin, HEBREW LETTER AYIN */
    { 0xcf3, 0x5e3 }, /* XK_hebrew_finalpe, HEBREW LETTER FINAL PE */
    { 0xcf4, 0x5e4 }, /* XK_hebrew_pe, HEBREW LETTER PE */
    { 0xcf5, 0x5e5 }, /* XK_hebrew_finalzade, HEBREW LETTER FINAL TSADI */
    { 0xcf6, 0x5e6 }, /* XK_hebrew_zade, HEBREW LETTER TSADI */
    { 0xcf7, 0x5e7 }, /* XK_hebrew_qoph, HEBREW LETTER QOF */
    { 0xcf8, 0x5e8 }, /* XK_hebrew_resh, HEBREW LETTER RESH */
    { 0xcf9, 0x5e9 }, /* XK_hebrew_shin, HEBREW LETTER SHIN */
    { 0xcfa, 0x5ea }, /* XK_hebrew_taw, HEBREW LETTER TAV */
    { 0xda1, 0xe01 }, /* XK_Thai_kokai, THAI CHARACTER KO KAI */
    { 0xda2, 0xe02 }, /* XK_Thai_khokhai, THAI CHARACTER KHO KHAI */
    { 0xda3, 0xe03 }, /* XK_Thai_khokhuat, THAI CHARACTER KHO KHUAT */
    { 0xda4, 0xe04 }, /* XK_Thai_khokhwai, THAI CHARACTER KHO KHWAI */
    { 0xda5, 0xe05 }, /* XK_Thai_khokhon, THAI CHARACTER KHO KHON */
    { 0xda6, 0xe06 }, /* XK_Thai_khorakhang, THAI CHARACTER KHO RAKHANG */
    { 0xda7, 0xe07 }, /* XK_Thai_ngongu, THAI CHARACTER NGO NGU */
    { 0xda8, 0xe08 }, /* XK_Thai_chochan, THAI CHARACTER CHO CHAN */
    { 0xda9, 0xe09 }, /* XK_Thai_choching, THAI CHARACTER CHO CHING */
    { 0xdaa, 0xe0a }, /* XK_Thai_chochang, THAI CHARACTER CHO CHANG */
    { 0xdab, 0xe0b }, /* XK_Thai_soso, THAI CHARACTER SO SO */
    { 0xdac, 0xe0c }, /* XK_Thai_chochoe, THAI CHARACTER CHO CHOE */
    { 0xdad, 0xe0d }, /* XK_Thai_yoying, THAI CHARACTER YO YING */
    { 0xdae, 0xe0e }, /* XK_Thai_dochada, THAI CHARACTER DO CHADA */
    { 0xdaf, 0xe0f }, /* XK_Thai_topatak, THAI CHARACTER TO PATAK */
    { 0xdb0, 0xe10 }, /* XK_Thai_thothan, THAI CHARACTER THO THAN */
    { 0xdb1, 0xe11 }, /* XK_Thai_thonangmontho, THAI CHARACTER THO NANGMONTHO */
    { 0xdb2, 0xe12 }, /* XK_Thai_thophuthao, THAI CHARACTER THO PHUTHAO */
    { 0xdb3, 0xe13 }, /* XK_Thai_nonen, THAI CHARACTER NO NEN */
    { 0xdb4, 0xe14 }, /* XK_Thai_dodek, THAI CHARACTER DO DEK */
    { 0xdb5, 0xe15 }, /* XK_Thai_totao, THAI CHARACTER TO TAO */
    { 0xdb6, 0xe16 }, /* XK_Thai_thothung, THAI CHARACTER THO THUNG */
    { 0xdb7, 0xe17 }, /* XK_Thai_thothahan, THAI CHARACTER THO THAHAN */
    { 0xdb8, 0xe18 }, /* XK_Thai_thothong, THAI CHARACTER THO THONG */
    { 0xdb9, 0xe19 }, /* XK_Thai_nonu, THAI CHARACTER NO NU */
    { 0xdba, 0xe1a }, /* XK_Thai_bobaimai, THAI CHARACTER BO BAIMAI */
    { 0xdbb, 0xe1b }, /* XK_Thai_popla, THAI CHARACTER PO PLA */
    { 0xdbc, 0xe1c }, /* XK_Thai_phophung, THAI CHARACTER PHO PHUNG */
    { 0xdbd, 0xe1d }, /* XK_Thai_fofa, THAI CHARACTER FO FA */
    { 0xdbe, 0xe1e }, /* XK_Thai_phophan, THAI CHARACTER PHO PHAN */
    { 0xdbf, 0xe1f }, /* XK_Thai_fofan, THAI CHARACTER FO FAN */
    { 0xdc0, 0xe20 }, /* XK_Thai_phosamphao, THAI CHARACTER PHO SAMPHAO */
    { 0xdc1, 0xe21 }, /* XK_Thai_moma, THAI CHARACTER MO MA */
    { 0xdc2, 0xe22 }, /* XK_Thai_yoyak, THAI CHARACTER YO YAK */
    { 0xdc3, 0xe23 }, /* XK_Thai_rorua, THAI CHARACTER RO RUA */
    { 0xdc4, 0xe24 }, /* XK_Thai_ru, THAI CHARACTER RU */
    { 0xdc5, 0xe25 }, /* XK_Thai_loling, THAI CHARACTER LO LING */
    { 0xdc6, 0xe26 }, /* XK_Thai_lu, THAI CHARACTER LU */
    { 0xdc7, 0xe27 }, /* XK_Thai_wowaen, THAI CHARACTER WO WAEN */
    { 0xdc8, 0xe28 }, /* XK_Thai_sosala, THAI CHARACTER SO SALA */
    { 0xdc9, 0xe29 }, /* XK_Thai_sorusi, THAI CHARACTER SO RUSI */
    { 0xdca, 0xe2a }, /* XK_Thai_sosua, THAI CHARACTER SO SUA */
    { 0xdcb, 0xe2b }, /* XK_Thai_hohip, THAI CHARACTER HO HIP */
    { 0xdcc, 0xe2c }, /* XK_Thai_lochula, THAI CHARACTER LO CHULA */
    { 0xdcd, 0xe2d }, /* XK_Thai_oang, THAI CHARACTER O ANG */
    { 0xdce, 0xe2e }, /* XK_Thai_honokhuk, THAI CHARACTER HO NOKHUK */
    { 0xdcf, 0xe2f }, /* XK_Thai_paiyannoi, THAI CHARACTER PAIYANNOI */
    { 0xdd0, 0xe30 }, /* XK_Thai_saraa, THAI CHARACTER SARA A */
    { 0xdd1, 0xe31 }, /* XK_Thai_maihanakat, THAI CHARACTER MAI HAN-AKAT */
    { 0xdd2, 0xe32 }, /* XK_Thai_saraaa, THAI CHARACTER SARA AA */
    { 0xdd3, 0xe33 }, /* XK_Thai_saraam, THAI CHARACTER SARA AM */
    { 0xdd4, 0xe34 }, /* XK_Thai_sarai, THAI CHARACTER SARA I */
    { 0xdd5, 0xe35 }, /* XK_Thai_saraii, THAI CHARACTER SARA II */
    { 0xdd6, 0xe36 }, /* XK_Thai_saraue, THAI CHARACTER SARA UE */
    { 0xdd7, 0xe37 }, /* XK_Thai_sarauee, THAI CHARACTER SARA UEE */
    { 0xdd8, 0xe38 }, /* XK_Thai_sarau, THAI CHARACTER SARA U */
    { 0xdd9, 0xe39 }, /* XK_Thai_sarauu, THAI CHARACTER SARA UU */
    { 0xdda, 0xe3a }, /* XK_Thai_phinthu, THAI CHARACTER PHINTHU */
    { 0xddf, 0xe3f }, /* XK_Thai_baht, THAI CURRENCY SYMBOL BAHT */
    { 0xde0, 0xe40 }, /* XK_Thai_sarae, THAI CHARACTER SARA E */
    { 0xde1, 0xe41 }, /* XK_Thai_saraae, THAI CHARACTER SARA AE */
    { 0xde2, 0xe42 }, /* XK_Thai_sarao, THAI CHARACTER SARA O */
    { 0xde3, 0xe43 }, /* XK_Thai_saraaimaimuan, THAI CHARACTER SARA AI MAIMUAN */
    { 0xde4, 0xe44 }, /* XK_Thai_saraaimaimalai, THAI CHARACTER SARA AI MAIMALAI */
    { 0xde5, 0xe45 }, /* XK_Thai_lakkhangyao, THAI CHARACTER LAKKHANGYAO */
    { 0xde6, 0xe46 }, /* XK_Thai_maiyamok, THAI CHARACTER MAIYAMOK */
    { 0xde7, 0xe47 }, /* XK_Thai_maitaikhu, THAI CHARACTER MAITAIKHU */
    { 0xde8, 0xe48 }, /* XK_Thai_maiek, THAI CHARACTER MAI EK */
    { 0xde9, 0xe49 }, /* XK_Thai_maitho, THAI CHARACTER MAI THO */
    { 0xdea, 0xe4a }, /* XK_Thai_maitri, THAI CHARACTER MAI TRI */
    { 0xdeb, 0xe4b }, /* XK_Thai_maichattawa, THAI CHARACTER MAI CHATTAWA */
    { 0xdec, 0xe4c }, /* XK_Thai_thanthakhat, THAI CHARACTER THANTHAKHAT */
    { 0xded, 0xe4d }, /* XK_Thai_nikhahit, THAI CHARACTER NIKHAHIT */
    { 0xdf0, 0xe50 }, /* XK_Thai_leksun, THAI DIGIT ZERO */
    { 0xdf1, 0xe51 }, /* XK_Thai_leknung, THAI DIGIT ONE */
    { 0xdf2, 0xe52 }, /* XK_Thai_leksong, THAI DIGIT TWO */
    { 0xdf3, 0xe53 }, /* XK_Thai_leksam, THAI DIGIT THREE */
    { 0xdf4, 0xe54 }, /* XK_Thai_leksi, THAI DIGIT FOUR */
    { 0xdf5, 0xe55 }, /* XK_Thai_lekha, THAI DIGIT FIVE */
    { 0xdf6, 0xe56 }, /* XK_Thai_lekhok, THAI DIGIT SIX */
    { 0xdf7, 0xe57 }, /* XK_Thai_lekchet, THAI DIGIT SEVEN */
    { 0xdf8, 0xe58 }, /* XK_Thai_lekpaet, THAI DIGIT EIGHT */
    { 0xdf9, 0xe59 }, /* XK_Thai_lekkao, THAI DIGIT NINE */
    { 0x13bc, 0x152 }, /* XK_OE, LATIN CAPITAL LIGATURE OE */
    { 0x13bd, 0x153 }, /* XK_oe, LATIN SMALL LIGATURE OE */
    { 0x13be, 0x178 }, /* XK_Ydiaeresis, LATIN CAPITAL LETTER Y WITH DIAERESIS */
    { 0x20ac, 0x20ac }, /* XK_EuroSign, EURO SIGN */
    { 0x100012c, 0x12c }, /* XK_Ibreve, LATIN CAPITAL LETTER I WITH BREVE */
    { 0x100012d, 0x12d }, /* XK_ibreve, LATIN SMALL LETTER I WITH BREVE */
    { 0x1000174, 0x174 }, /* XK_Wcircumflex, LATIN CAPITAL LETTER W WITH CIRCUMFLEX */
    { 0x1000175, 0x175 }, /* XK_wcircumflex, LATIN SMALL LETTER W WITH CIRCUMFLEX */
    { 0x1000176, 0x176 }, /* XK_Ycircumflex, LATIN CAPITAL LETTER Y WITH CIRCUMFLEX */
    { 0x1000177, 0x177 }, /* XK_ycircumflex, LATIN SMALL LETTER Y WITH CIRCUMFLEX */
    { 0x100018f, 0x18f }, /* XK_SCHWA, LATIN CAPITAL LETTER SCHWA */
    { 0x100019f, 0x19f }, /* XK_Obarred, LATIN CAPITAL LETTER O WITH MIDDLE TILDE */
    { 0x10001a0, 0x1a0 }, /* XK_Ohorn, LATIN CAPITAL LETTER O WITH HORN */
    { 0x10001a1, 0x1a1 }, /* XK_ohorn, LATIN SMALL LETTER O WITH HORN */
    { 0x10001af, 0x1af }, /* XK_Uhorn, LATIN CAPITAL LETTER U WITH HORN */
    { 0x10001b0, 0x1b0 }, /* XK_uhorn, LATIN SMALL LETTER U WITH HORN */
    { 0x10001b5, 0x1b5 }, /* XK_Zstroke, LATIN CAPITAL LETTER Z WITH STROKE */
    { 0x10001b6, 0x1b6 }, /* XK_zstroke, LATIN SMALL LETTER Z WITH STROKE */
    { 0x10001b7, 0x1b7 }, /* XK_EZH, LATIN CAPITAL LETTER EZH */
    { 0x10001d1, 0x1d2 }, /* XK_Ocaron, LATIN CAPITAL LETTER O WITH CARON */
    { 0x10001d2, 0x1d2 }, /* XK_ocaron, LATIN SMALL LETTER O WITH CARON */
    { 0x10001e6, 0x1e6 }, /* XK_Gcaron, LATIN CAPITAL LETTER G WITH CARON */
    { 0x10001e7, 0x1e7 }, /* XK_gcaron, LATIN SMALL LETTER G WITH CARON */
    { 0x1000259, 0x259 }, /* XK_schwa, LATIN SMALL LETTER SCHWA */
    { 0x1000275, 0x275 }, /* XK_obarred, LATIN SMALL LETTER BARRED O */
    { 0x1000292, 0x292 }, /* XK_ezh, LATIN SMALL LETTER EZH */
    { 0x1000492, 0x492 }, /* XK_Cyrillic_GHE_bar, CYRILLIC CAPITAL LETTER GHE WITH STROKE */
    { 0x1000493, 0x493 }, /* XK_Cyrillic_ghe_bar, CYRILLIC SMALL LETTER GHE WITH STROKE */
    { 0x1000496, 0x496 }, /* XK_Cyrillic_ZHE_descender, CYRILLIC CAPITAL LETTER ZHE WITH DESCENDER */
    { 0x1000497, 0x497 }, /* XK_Cyrillic_zhe_descender, CYRILLIC SMALL LETTER ZHE WITH DESCENDER */
    { 0x100049a, 0x49a }, /* XK_Cyrillic_KA_descender, CYRILLIC CAPITAL LETTER KA WITH DESCENDER */
    { 0x100049b, 0x49b }, /* XK_Cyrillic_ka_descender, CYRILLIC SMALL LETTER KA WITH DESCENDER */
    { 0x100049c, 0x49c }, /* XK_Cyrillic_KA_vertstroke, CYRILLIC CAPITAL LETTER KA WITH VERTICAL STROKE */
    { 0x100049d, 0x49d }, /* XK_Cyrillic_ka_vertstroke, CYRILLIC SMALL LETTER KA WITH VERTICAL STROKE */
    { 0x10004a2, 0x4a2 }, /* XK_Cyrillic_EN_descender, CYRILLIC CAPITAL LETTER EN WITH DESCENDER */
    { 0x10004a3, 0x4a3 }, /* XK_Cyrillic_en_descender, CYRILLIC SMALL LETTER EN WITH DESCENDER */
    { 0x10004ae, 0x4ae }, /* XK_Cyrillic_U_straight, CYRILLIC CAPITAL LETTER STRAIGHT U */
    { 0x10004af, 0x4af }, /* XK_Cyrillic_u_straight, CYRILLIC SMALL LETTER STRAIGHT U */
    { 0x10004b0, 0x4b0 }, /* XK_Cyrillic_U_straight_bar, CYRILLIC CAPITAL LETTER STRAIGHT U WITH STROKE */
    { 0x10004b1, 0x4b1 }, /* XK_Cyrillic_u_straight_bar, CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE */
    { 0x10004b2, 0x4b2 }, /* XK_Cyrillic_HA_descender, CYRILLIC CAPITAL LETTER HA WITH DESCENDER */
    { 0x10004b3, 0x4b3 }, /* XK_Cyrillic_ha_descender, CYRILLIC SMALL LETTER HA WITH DESCENDER */
    { 0x10004b6, 0x4b6 }, /* XK_Cyrillic_CHE_descender, CYRILLIC CAPITAL LETTER CHE WITH DESCENDER */
    { 0x10004b7, 0x4b7 }, /* XK_Cyrillic_che_descender, CYRILLIC SMALL LETTER CHE WITH DESCENDER */
    { 0x10004b8, 0x4b8 }, /* XK_Cyrillic_CHE_vertstroke, CYRILLIC CAPITAL LETTER CHE WITH VERTICAL STROKE */
    { 0x10004b9, 0x4b9 }, /* XK_Cyrillic_che_vertstroke, CYRILLIC SMALL LETTER CHE WITH VERTICAL STROKE */
    { 0x10004ba, 0x4ba }, /* XK_Cyrillic_SHHA, CYRILLIC CAPITAL LETTER SHHA */
    { 0x10004bb, 0x4bb }, /* XK_Cyrillic_shha, CYRILLIC SMALL LETTER SHHA */
    { 0x10004d8, 0x4d8 }, /* XK_Cyrillic_SCHWA, CYRILLIC CAPITAL LETTER SCHWA */
    { 0x10004d9, 0x4d9 }, /* XK_Cyrillic_schwa, CYRILLIC SMALL LETTER SCHWA */
    { 0x10004e2, 0x4e2 }, /* XK_Cyrillic_I_macron, CYRILLIC CAPITAL LETTER I WITH MACRON */
    { 0x10004e3, 0x4e3 }, /* XK_Cyrillic_i_macron, CYRILLIC SMALL LETTER I WITH MACRON */
    { 0x10004e8, 0x4e8 }, /* XK_Cyrillic_O_bar, CYRILLIC CAPITAL LETTER BARRED O */
    { 0x10004e9, 0x4e9 }, /* XK_Cyrillic_o_bar, CYRILLIC SMALL LETTER BARRED O */
    { 0x10004ee, 0x4ee }, /* XK_Cyrillic_U_macron, CYRILLIC CAPITAL LETTER U WITH MACRON */
    { 0x10004ef, 0x4ef }, /* XK_Cyrillic_u_macron, CYRILLIC SMALL LETTER U WITH MACRON */
    { 0x1000531, 0x531 }, /* XK_Armenian_AYB, ARMENIAN CAPITAL LETTER AYB */
    { 0x1000532, 0x532 }, /* XK_Armenian_BEN, ARMENIAN CAPITAL LETTER BEN */
    { 0x1000533, 0x533 }, /* XK_Armenian_GIM, ARMENIAN CAPITAL LETTER GIM */
    { 0x1000534, 0x534 }, /* XK_Armenian_DA, ARMENIAN CAPITAL LETTER DA */
    { 0x1000535, 0x535 }, /* XK_Armenian_YECH, ARMENIAN CAPITAL LETTER ECH */
    { 0x1000536, 0x536 }, /* XK_Armenian_ZA, ARMENIAN CAPITAL LETTER ZA */
    { 0x1000537, 0x537 }, /* XK_Armenian_E, ARMENIAN CAPITAL LETTER EH */
    { 0x1000538, 0x538 }, /* XK_Armenian_AT, ARMENIAN CAPITAL LETTER ET */
    { 0x1000539, 0x539 }, /* XK_Armenian_TO, ARMENIAN CAPITAL LETTER TO */
    { 0x100053a, 0x53a }, /* XK_Armenian_ZHE, ARMENIAN CAPITAL LETTER ZHE */
    { 0x100053b, 0x53b }, /* XK_Armenian_INI, ARMENIAN CAPITAL LETTER INI */
    { 0x100053c, 0x53c }, /* XK_Armenian_LYUN, ARMENIAN CAPITAL LETTER LIWN */
    { 0x100053d, 0x53d }, /* XK_Armenian_KHE, ARMENIAN CAPITAL LETTER XEH */
    { 0x100053e, 0x53e }, /* XK_Armenian_TSA, ARMENIAN CAPITAL LETTER CA */
    { 0x100053f, 0x53f }, /* XK_Armenian_KEN, ARMENIAN CAPITAL LETTER KEN */
    { 0x1000540, 0x540 }, /* XK_Armenian_HO, ARMENIAN CAPITAL LETTER HO */
    { 0x1000541, 0x541 }, /* XK_Armenian_DZA, ARMENIAN CAPITAL LETTER JA */
    { 0x1000542, 0x542 }, /* XK_Armenian_GHAT, ARMENIAN CAPITAL LETTER GHAD */
    { 0x1000543, 0x543 }, /* XK_Armenian_TCHE, ARMENIAN CAPITAL LETTER CHEH */
    { 0x1000544, 0x544 }, /* XK_Armenian_MEN, ARMENIAN CAPITAL LETTER MEN */
    { 0x1000545, 0x545 }, /* XK_Armenian_HI, ARMENIAN CAPITAL LETTER YI */
    { 0x1000546, 0x546 }, /* XK_Armenian_NU, ARMENIAN CAPITAL LETTER NOW */
    { 0x1000547, 0x547 }, /* XK_Armenian_SHA, ARMENIAN CAPITAL LETTER SHA */
    { 0x1000548, 0x548 }, /* XK_Armenian_VO, ARMENIAN CAPITAL LETTER VO */
    { 0x1000549, 0x549 }, /* XK_Armenian_CHA, ARMENIAN CAPITAL LETTER CHA */
    { 0x100054a, 0x54a }, /* XK_Armenian_PE, ARMENIAN CAPITAL LETTER PEH */
    { 0x100054b, 0x54b }, /* XK_Armenian_JE, ARMENIAN CAPITAL LETTER JHEH */
    { 0x100054c, 0x54c }, /* XK_Armenian_RA, ARMENIAN CAPITAL LETTER RA */
    { 0x100054d, 0x54d }, /* XK_Armenian_SE, ARMENIAN CAPITAL LETTER SEH */
    { 0x100054e, 0x54e }, /* XK_Armenian_VEV, ARMENIAN CAPITAL LETTER VEW */
    { 0x100054f, 0x54f }, /* XK_Armenian_TYUN, ARMENIAN CAPITAL LETTER TIWN */
    { 0x1000550, 0x550 }, /* XK_Armenian_RE, ARMENIAN CAPITAL LETTER REH */
    { 0x1000551, 0x551 }, /* XK_Armenian_TSO, ARMENIAN CAPITAL LETTER CO */
    { 0x1000552, 0x552 }, /* XK_Armenian_VYUN, ARMENIAN CAPITAL LETTER YIWN */
    { 0x1000553, 0x553 }, /* XK_Armenian_PYUR, ARMENIAN CAPITAL LETTER PIWR */
    { 0x1000554, 0x554 }, /* XK_Armenian_KE, ARMENIAN CAPITAL LETTER KEH */
    { 0x1000555, 0x555 }, /* XK_Armenian_O, ARMENIAN CAPITAL LETTER OH */
    { 0x1000556, 0x556 }, /* XK_Armenian_FE, ARMENIAN CAPITAL LETTER FEH */
    { 0x100055a, 0x55a }, /* XK_Armenian_apostrophe, ARMENIAN APOSTROPHE */
    { 0x100055b, 0x55b }, /* XK_Armenian_accent, ARMENIAN EMPHASIS MARK */
    { 0x100055b, 0x55b }, /* XK_Armenian_shesht, ARMENIAN EMPHASIS MARK */
    { 0x100055c, 0x55c }, /* XK_Armenian_exclam, ARMENIAN EXCLAMATION MARK */
    { 0x100055c, 0x55c }, /* XK_Armenian_amanak, ARMENIAN EXCLAMATION MARK */
    { 0x100055d, 0x55d }, /* XK_Armenian_separation_mark, ARMENIAN COMMA */
    { 0x100055d, 0x55d }, /* XK_Armenian_but, ARMENIAN COMMA */
    { 0x100055e, 0x55e }, /* XK_Armenian_question, ARMENIAN QUESTION MARK */
    { 0x100055e, 0x55e }, /* XK_Armenian_paruyk, ARMENIAN QUESTION MARK */
    { 0x1000561, 0x561 }, /* XK_Armenian_ayb, ARMENIAN SMALL LETTER AYB */
    { 0x1000562, 0x562 }, /* XK_Armenian_ben, ARMENIAN SMALL LETTER BEN */
    { 0x1000563, 0x563 }, /* XK_Armenian_gim, ARMENIAN SMALL LETTER GIM */
    { 0x1000564, 0x564 }, /* XK_Armenian_da, ARMENIAN SMALL LETTER DA */
    { 0x1000565, 0x565 }, /* XK_Armenian_yech, ARMENIAN SMALL LETTER ECH */
    { 0x1000566, 0x566 }, /* XK_Armenian_za, ARMENIAN SMALL LETTER ZA */
    { 0x1000567, 0x567 }, /* XK_Armenian_e, ARMENIAN SMALL LETTER EH */
    { 0x1000568, 0x568 }, /* XK_Armenian_at, ARMENIAN SMALL LETTER ET */
    { 0x1000569, 0x569 }, /* XK_Armenian_to, ARMENIAN SMALL LETTER TO */
    { 0x100056a, 0x56a }, /* XK_Armenian_zhe, ARMENIAN SMALL LETTER ZHE */
    { 0x100056b, 0x56b }, /* XK_Armenian_ini, ARMENIAN SMALL LETTER INI */
    { 0x100056c, 0x56c }, /* XK_Armenian_lyun, ARMENIAN SMALL LETTER LIWN */
    { 0x100056d, 0x56d }, /* XK_Armenian_khe, ARMENIAN SMALL LETTER XEH */
    { 0x100056e, 0x56e }, /* XK_Armenian_tsa, ARMENIAN SMALL LETTER CA */
    { 0x100056f, 0x56f }, /* XK_Armenian_ken, ARMENIAN SMALL LETTER KEN */
    { 0x1000570, 0x570 }, /* XK_Armenian_ho, ARMENIAN SMALL LETTER HO */
    { 0x1000571, 0x571 }, /* XK_Armenian_dza, ARMENIAN SMALL LETTER JA */
    { 0x1000572, 0x572 }, /* XK_Armenian_ghat, ARMENIAN SMALL LETTER GHAD */
    { 0x1000573, 0x573 }, /* XK_Armenian_tche, ARMENIAN SMALL LETTER CHEH */
    { 0x1000574, 0x574 }, /* XK_Armenian_men, ARMENIAN SMALL LETTER MEN */
    { 0x1000575, 0x575 }, /* XK_Armenian_hi, ARMENIAN SMALL LETTER YI */
    { 0x1000576, 0x576 }, /* XK_Armenian_nu, ARMENIAN SMALL LETTER NOW */
    { 0x1000577, 0x577 }, /* XK_Armenian_sha, ARMENIAN SMALL LETTER SHA */
    { 0x1000578, 0x578 }, /* XK_Armenian_vo, ARMENIAN SMALL LETTER VO */
    { 0x1000579, 0x579 }, /* XK_Armenian_cha, ARMENIAN SMALL LETTER CHA */
    { 0x100057a, 0x57a }, /* XK_Armenian_pe, ARMENIAN SMALL LETTER PEH */
    { 0x100057b, 0x57b }, /* XK_Armenian_je, ARMENIAN SMALL LETTER JHEH */
    { 0x100057c, 0x57c }, /* XK_Armenian_ra, ARMENIAN SMALL LETTER RA */
    { 0x100057d, 0x57d }, /* XK_Armenian_se, ARMENIAN SMALL LETTER SEH */
    { 0x100057e, 0x57e }, /* XK_Armenian_vev, ARMENIAN SMALL LETTER VEW */
    { 0x100057f, 0x57f }, /* XK_Armenian_tyun, ARMENIAN SMALL LETTER TIWN */
    { 0x1000580, 0x580 }, /* XK_Armenian_re, ARMENIAN SMALL LETTER REH */
    { 0x1000581, 0x581 }, /* XK_Armenian_tso, ARMENIAN SMALL LETTER CO */
    { 0x1000582, 0x582 }, /* XK_Armenian_vyun, ARMENIAN SMALL LETTER YIWN */
    { 0x1000583, 0x583 }, /* XK_Armenian_pyur, ARMENIAN SMALL LETTER PIWR */
    { 0x1000584, 0x584 }, /* XK_Armenian_ke, ARMENIAN SMALL LETTER KEH */
    { 0x1000585, 0x585 }, /* XK_Armenian_o, ARMENIAN SMALL LETTER OH */
    { 0x1000586, 0x586 }, /* XK_Armenian_fe, ARMENIAN SMALL LETTER FEH */
    { 0x1000587, 0x587 }, /* XK_Armenian_ligature_ew, ARMENIAN SMALL LIGATURE ECH YIWN */
    { 0x1000589, 0x589 }, /* XK_Armenian_full_stop, ARMENIAN FULL STOP */
    { 0x1000589, 0x589 }, /* XK_Armenian_verjaket, ARMENIAN FULL STOP */
    { 0x100058a, 0x58a }, /* XK_Armenian_hyphen, ARMENIAN HYPHEN */
    { 0x100058a, 0x58a }, /* XK_Armenian_yentamna, ARMENIAN HYPHEN */
    { 0x1000653, 0x653 }, /* XK_Arabic_madda_above, ARABIC MADDAH ABOVE */
    { 0x1000654, 0x654 }, /* XK_Arabic_hamza_above, ARABIC HAMZA ABOVE */
    { 0x1000655, 0x655 }, /* XK_Arabic_hamza_below, ARABIC HAMZA BELOW */
    { 0x100066a, 0x66a }, /* XK_Arabic_percent, ARABIC PERCENT SIGN */
    { 0x1000670, 0x670 }, /* XK_Arabic_superscript_alef, ARABIC LETTER SUPERSCRIPT ALEF */
    { 0x1000679, 0x679 }, /* XK_Arabic_tteh, ARABIC LETTER TTEH */
    { 0x100067e, 0x67e }, /* XK_Arabic_peh, ARABIC LETTER PEH */
    { 0x1000686, 0x686 }, /* XK_Arabic_tcheh, ARABIC LETTER TCHEH */
    { 0x1000688, 0x688 }, /* XK_Arabic_ddal, ARABIC LETTER DDAL */
    { 0x1000691, 0x691 }, /* XK_Arabic_rreh, ARABIC LETTER RREH */
    { 0x1000698, 0x698 }, /* XK_Arabic_jeh, ARABIC LETTER JEH */
    { 0x10006a4, 0x6a4 }, /* XK_Arabic_veh, ARABIC LETTER VEH */
    { 0x10006a9, 0x6a9 }, /* XK_Arabic_keheh, ARABIC LETTER KEHEH */
    { 0x10006af, 0x6af }, /* XK_Arabic_gaf, ARABIC LETTER GAF */
    { 0x10006ba, 0x6ba }, /* XK_Arabic_noon_ghunna, ARABIC LETTER NOON GHUNNA */
    { 0x10006be, 0x6be }, /* XK_Arabic_heh_doachashmee, ARABIC LETTER HEH DOACHASHMEE */
    { 0x10006c1, 0x6c1 }, /* XK_Arabic_heh_goal, ARABIC LETTER HEH GOAL */
    { 0x10006cc, 0x6cc }, /* XK_Farsi_yeh, ARABIC LETTER FARSI YEH */
    { 0x10006cc, 0x6cc }, /* XK_Arabic_farsi_yeh, ARABIC LETTER FARSI YEH */
    { 0x10006d2, 0x6d2 }, /* XK_Arabic_yeh_baree, ARABIC LETTER YEH BARREE */
    { 0x10006d4, 0x6d4 }, /* XK_Arabic_fullstop, ARABIC FULL STOP */
    { 0x1000d82, 0xd82 }, /* XK_Sinh_ng, SINHALA ANUSVARAYA */
    { 0x1000d85, 0xd85 }, /* XK_Sinh_a, SINHALA AYANNA */
    { 0x1000d86, 0xd86 }, /* XK_Sinh_aa, SINHALA AAYANNA */
    { 0x1000d87, 0xd87 }, /* XK_Sinh_ae, SINHALA AEYANNA */
    { 0x1000d88, 0xd88 }, /* XK_Sinh_aee, SINHALA AEEYANNA */
    { 0x1000d89, 0xd89 }, /* XK_Sinh_i, SINHALA IYANNA */
    { 0x1000d8a, 0xd8a }, /* XK_Sinh_ii, SINHALA IIYANNA */
    { 0x1000d8b, 0xd8b }, /* XK_Sinh_u, SINHALA UYANNA */
    { 0x1000d8c, 0xd8c }, /* XK_Sinh_uu, SINHALA UUYANNA */
    { 0x1000d8d, 0xd8d }, /* XK_Sinh_ri, SINHALA IRUYANNA */
    { 0x1000d8e, 0xd8e }, /* XK_Sinh_rii, SINHALA IRUUYANNA */
    { 0x1000d8f, 0xd8f }, /* XK_Sinh_lu, SINHALA ILUYANNA */
    { 0x1000d90, 0xd90 }, /* XK_Sinh_luu, SINHALA ILUUYANNA */
    { 0x1000d91, 0xd91 }, /* XK_Sinh_e, SINHALA EYANNA */
    { 0x1000d92, 0xd92 }, /* XK_Sinh_ee, SINHALA EEYANNA */
    { 0x1000d93, 0xd93 }, /* XK_Sinh_ai, SINHALA AIYANNA */
    { 0x1000d94, 0xd94 }, /* XK_Sinh_o, SINHALA OYANNA */
    { 0x1000d95, 0xd95 }, /* XK_Sinh_oo, SINHALA OOYANNA */
    { 0x1000d96, 0xd96 }, /* XK_Sinh_au, SINHALA AUYANNA */
    { 0x1000d9a, 0xd9a }, /* XK_Sinh_ka, SINHALA KAYANNA */
    { 0x1000d9b, 0xd9b }, /* XK_Sinh_kha, SINHALA MAHA. KAYANNA */
    { 0x1000d9c, 0xd9c }, /* XK_Sinh_ga, SINHALA GAYANNA */
    { 0x1000d9d, 0xd9d }, /* XK_Sinh_gha, SINHALA MAHA. GAYANNA */
    { 0x1000d9f, 0xd9f }, /* XK_Sinh_nga, SINHALA SANYAKA GAYANNA */
    { 0x1000da0, 0xda0 }, /* XK_Sinh_ca, SINHALA CAYANNA */
    { 0x1000da1, 0xda1 }, /* XK_Sinh_cha, SINHALA MAHA. CAYANNA */
    { 0x1000da2, 0xda2 }, /* XK_Sinh_ja, SINHALA JAYANNA */
    { 0x1000da3, 0xda3 }, /* XK_Sinh_jha, SINHALA MAHA. JAYANNA */
    { 0x1000da4, 0xda4 }, /* XK_Sinh_nya, SINHALA TAALUJA NAASIKYAYA */
    { 0x1000da5, 0xda5 }, /* XK_Sinh_jnya, SINHALA TAALUJA SANYOOGA NAASIKYAYA */
    { 0x1000da6, 0xda6 }, /* XK_Sinh_nja, SINHALA SANYAKA JAYANNA */
    { 0x1000da7, 0xda7 }, /* XK_Sinh_tta, SINHALA TTAYANNA */
    { 0x1000da8, 0xda8 }, /* XK_Sinh_ttha, SINHALA MAHA. TTAYANNA */
    { 0x1000da9, 0xda9 }, /* XK_Sinh_dda, SINHALA DDAYANNA */
    { 0x1000daa, 0xdaa }, /* XK_Sinh_ddha, SINHALA MAHA. DDAYANNA */
    { 0x1000dab, 0xdab }, /* XK_Sinh_nna, SINHALA MUURDHAJA NAYANNA */
    { 0x1000dac, 0xdac }, /* XK_Sinh_ndda, SINHALA SANYAKA DDAYANNA */
    { 0x1000dad, 0xdad }, /* XK_Sinh_tha, SINHALA TAYANNA */
    { 0x1000dae, 0xdae }, /* XK_Sinh_thha, SINHALA MAHA. TAYANNA */
    { 0x1000daf, 0xdaf }, /* XK_Sinh_dha, SINHALA DAYANNA */
    { 0x1000db0, 0xdb0 }, /* XK_Sinh_dhha, SINHALA MAHA. DAYANNA */
    { 0x1000db1, 0xdb1 }, /* XK_Sinh_na, SINHALA DANTAJA NAYANNA */
    { 0x1000db3, 0xdb3 }, /* XK_Sinh_ndha, SINHALA SANYAKA DAYANNA */
    { 0x1000db4, 0xdb4 }, /* XK_Sinh_pa, SINHALA PAYANNA */
    { 0x1000db5, 0xdb5 }, /* XK_Sinh_pha, SINHALA MAHA. PAYANNA */
    { 0x1000db6, 0xdb6 }, /* XK_Sinh_ba, SINHALA BAYANNA */
    { 0x1000db7, 0xdb7 }, /* XK_Sinh_bha, SINHALA MAHA. BAYANNA */
    { 0x1000db8, 0xdb8 }, /* XK_Sinh_ma, SINHALA MAYANNA */
    { 0x1000db9, 0xdb9 }, /* XK_Sinh_mba, SINHALA AMBA BAYANNA */
    { 0x1000dba, 0xdba }, /* XK_Sinh_ya, SINHALA YAYANNA */
    { 0x1000dbb, 0xdbb }, /* XK_Sinh_ra, SINHALA RAYANNA */
    { 0x1000dbd, 0xdbd }, /* XK_Sinh_la, SINHALA DANTAJA LAYANNA */
    { 0x1000dc0, 0xdc0 }, /* XK_Sinh_va, SINHALA VAYANNA */
    { 0x1000dc1, 0xdc1 }, /* XK_Sinh_sha, SINHALA TAALUJA SAYANNA */
    { 0x1000dc2, 0xdc2 }, /* XK_Sinh_ssha, SINHALA MUURDHAJA SAYANNA */
    { 0x1000dc3, 0xdc3 }, /* XK_Sinh_sa, SINHALA DANTAJA SAYANNA */
    { 0x1000dc4, 0xdc4 }, /* XK_Sinh_ha, SINHALA HAYANNA */
    { 0x1000dc5, 0xdc5 }, /* XK_Sinh_lla, SINHALA MUURDHAJA LAYANNA */
    { 0x1000dc6, 0xdc6 }, /* XK_Sinh_fa, SINHALA FAYANNA */
    { 0x1000dca, 0xdca }, /* XK_Sinh_al, SINHALA AL-LAKUNA */
    { 0x1000df4, 0xdf4 }, /* XK_Sinh_kunddaliya, SINHALA KUNDDALIYA */
    { 0x10010d0, 0x10d0 }, /* XK_Georgian_an, GEORGIAN LETTER AN */
    { 0x10010d1, 0x10d1 }, /* XK_Georgian_ban, GEORGIAN LETTER BAN */
    { 0x10010d2, 0x10d2 }, /* XK_Georgian_gan, GEORGIAN LETTER GAN */
    { 0x10010d3, 0x10d3 }, /* XK_Georgian_don, GEORGIAN LETTER DON */
    { 0x10010d4, 0x10d4 }, /* XK_Georgian_en, GEORGIAN LETTER EN */
    { 0x10010d5, 0x10d5 }, /* XK_Georgian_vin, GEORGIAN LETTER VIN */
    { 0x10010d6, 0x10d6 }, /* XK_Georgian_zen, GEORGIAN LETTER ZEN */
    { 0x10010d7, 0x10d7 }, /* XK_Georgian_tan, GEORGIAN LETTER TAN */
    { 0x10010d8, 0x10d8 }, /* XK_Georgian_in, GEORGIAN LETTER IN */
    { 0x10010d9, 0x10d9 }, /* XK_Georgian_kan, GEORGIAN LETTER KAN */
    { 0x10010da, 0x10da }, /* XK_Georgian_las, GEORGIAN LETTER LAS */
    { 0x10010db, 0x10db }, /* XK_Georgian_man, GEORGIAN LETTER MAN */
    { 0x10010dc, 0x10dc }, /* XK_Georgian_nar, GEORGIAN LETTER NAR */
    { 0x10010dd, 0x10dd }, /* XK_Georgian_on, GEORGIAN LETTER ON */
    { 0x10010de, 0x10de }, /* XK_Georgian_par, GEORGIAN LETTER PAR */
    { 0x10010df, 0x10df }, /* XK_Georgian_zhar, GEORGIAN LETTER ZHAR */
    { 0x10010e0, 0x10e0 }, /* XK_Georgian_rae, GEORGIAN LETTER RAE */
    { 0x10010e1, 0x10e1 }, /* XK_Georgian_san, GEORGIAN LETTER SAN */
    { 0x10010e2, 0x10e2 }, /* XK_Georgian_tar, GEORGIAN LETTER TAR */
    { 0x10010e3, 0x10e3 }, /* XK_Georgian_un, GEORGIAN LETTER UN */
    { 0x10010e4, 0x10e4 }, /* XK_Georgian_phar, GEORGIAN LETTER PHAR */
    { 0x10010e5, 0x10e5 }, /* XK_Georgian_khar, GEORGIAN LETTER KHAR */
    { 0x10010e6, 0x10e6 }, /* XK_Georgian_ghan, GEORGIAN LETTER GHAN */
    { 0x10010e7, 0x10e7 }, /* XK_Georgian_qar, GEORGIAN LETTER QAR */
    { 0x10010e8, 0x10e8 }, /* XK_Georgian_shin, GEORGIAN LETTER SHIN */
    { 0x10010e9, 0x10e9 }, /* XK_Georgian_chin, GEORGIAN LETTER CHIN */
    { 0x10010ea, 0x10ea }, /* XK_Georgian_can, GEORGIAN LETTER CAN */
    { 0x10010eb, 0x10eb }, /* XK_Georgian_jil, GEORGIAN LETTER JIL */
    { 0x10010ec, 0x10ec }, /* XK_Georgian_cil, GEORGIAN LETTER CIL */
    { 0x10010ed, 0x10ed }, /* XK_Georgian_char, GEORGIAN LETTER CHAR */
    { 0x10010ee, 0x10ee }, /* XK_Georgian_xan, GEORGIAN LETTER XAN */
    { 0x10010ef, 0x10ef }, /* XK_Georgian_jhan, GEORGIAN LETTER JHAN */
    { 0x10010f0, 0x10f0 }, /* XK_Georgian_hae, GEORGIAN LETTER HAE */
    { 0x10010f1, 0x10f1 }, /* XK_Georgian_he, GEORGIAN LETTER HE */
    { 0x10010f2, 0x10f2 }, /* XK_Georgian_hie, GEORGIAN LETTER HIE */
    { 0x10010f3, 0x10f3 }, /* XK_Georgian_we, GEORGIAN LETTER WE */
    { 0x10010f4, 0x10f4 }, /* XK_Georgian_har, GEORGIAN LETTER HAR */
    { 0x10010f5, 0x10f5 }, /* XK_Georgian_hoe, GEORGIAN LETTER HOE */
    { 0x10010f6, 0x10f6 }, /* XK_Georgian_fi, GEORGIAN LETTER FI */
    { 0x1001e02, 0x1e02 }, /* XK_Babovedot, LATIN CAPITAL LETTER B WITH DOT ABOVE */
    { 0x1001e03, 0x1e03 }, /* XK_babovedot, LATIN SMALL LETTER B WITH DOT ABOVE */
    { 0x1001e0a, 0x1e0a }, /* XK_Dabovedot, LATIN CAPITAL LETTER D WITH DOT ABOVE */
    { 0x1001e0b, 0x1e0b }, /* XK_dabovedot, LATIN SMALL LETTER D WITH DOT ABOVE */
    { 0x1001e1e, 0x1e1e }, /* XK_Fabovedot, LATIN CAPITAL LETTER F WITH DOT ABOVE */
    { 0x1001e1f, 0x1e1f }, /* XK_fabovedot, LATIN SMALL LETTER F WITH DOT ABOVE */
    { 0x1001e36, 0x1e36 }, /* XK_Lbelowdot, LATIN CAPITAL LETTER L WITH DOT BELOW */
    { 0x1001e37, 0x1e37 }, /* XK_lbelowdot, LATIN SMALL LETTER L WITH DOT BELOW */
    { 0x1001e40, 0x1e40 }, /* XK_Mabovedot, LATIN CAPITAL LETTER M WITH DOT ABOVE */
    { 0x1001e41, 0x1e41 }, /* XK_mabovedot, LATIN SMALL LETTER M WITH DOT ABOVE */
    { 0x1001e56, 0x1e56 }, /* XK_Pabovedot, LATIN CAPITAL LETTER P WITH DOT ABOVE */
    { 0x1001e57, 0x1e57 }, /* XK_pabovedot, LATIN SMALL LETTER P WITH DOT ABOVE */
    { 0x1001e60, 0x1e60 }, /* XK_Sabovedot, LATIN CAPITAL LETTER S WITH DOT ABOVE */
    { 0x1001e61, 0x1e61 }, /* XK_sabovedot, LATIN SMALL LETTER S WITH DOT ABOVE */
    { 0x1001e6a, 0x1e6a }, /* XK_Tabovedot, LATIN CAPITAL LETTER T WITH DOT ABOVE */
    { 0x1001e6b, 0x1e6b }, /* XK_tabovedot, LATIN SMALL LETTER T WITH DOT ABOVE */
    { 0x1001e80, 0x1e80 }, /* XK_Wgrave, LATIN CAPITAL LETTER W WITH GRAVE */
    { 0x1001e81, 0x1e81 }, /* XK_wgrave, LATIN SMALL LETTER W WITH GRAVE */
    { 0x1001e82, 0x1e82 }, /* XK_Wacute, LATIN CAPITAL LETTER W WITH ACUTE */
    { 0x1001e83, 0x1e83 }, /* XK_wacute, LATIN SMALL LETTER W WITH ACUTE */
    { 0x1001e84, 0x1e84 }, /* XK_Wdiaeresis, LATIN CAPITAL LETTER W WITH DIAERESIS */
    { 0x1001e85, 0x1e85 }, /* XK_wdiaeresis, LATIN SMALL LETTER W WITH DIAERESIS */
    { 0x1001e8a, 0x1e8a }, /* XK_Xabovedot, LATIN CAPITAL LETTER X WITH DOT ABOVE */
    { 0x1001e8b, 0x1e8b }, /* XK_xabovedot, LATIN SMALL LETTER X WITH DOT ABOVE */
    { 0x1001ea0, 0x1ea0 }, /* XK_Abelowdot, LATIN CAPITAL LETTER A WITH DOT BELOW */
    { 0x1001ea1, 0x1ea1 }, /* XK_abelowdot, LATIN SMALL LETTER A WITH DOT BELOW */
    { 0x1001ea2, 0x1ea2 }, /* XK_Ahook, LATIN CAPITAL LETTER A WITH HOOK ABOVE */
    { 0x1001ea3, 0x1ea3 }, /* XK_ahook, LATIN SMALL LETTER A WITH HOOK ABOVE */
    { 0x1001ea4, 0x1ea4 }, /* XK_Acircumflexacute, LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE */
    { 0x1001ea5, 0x1ea5 }, /* XK_acircumflexacute, LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE */
    { 0x1001ea6, 0x1ea6 }, /* XK_Acircumflexgrave, LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE */
    { 0x1001ea7, 0x1ea7 }, /* XK_acircumflexgrave, LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE */
    { 0x1001ea8, 0x1ea8 }, /* XK_Acircumflexhook, LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE */
    { 0x1001ea9, 0x1ea9 }, /* XK_acircumflexhook, LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE */
    { 0x1001eaa, 0x1eaa }, /* XK_Acircumflextilde, LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE */
    { 0x1001eab, 0x1eab }, /* XK_acircumflextilde, LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE */
    { 0x1001eac, 0x1eac }, /* XK_Acircumflexbelowdot, LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW */
    { 0x1001ead, 0x1ead }, /* XK_acircumflexbelowdot, LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW */
    { 0x1001eae, 0x1eae }, /* XK_Abreveacute, LATIN CAPITAL LETTER A WITH BREVE AND ACUTE */
    { 0x1001eaf, 0x1eaf }, /* XK_abreveacute, LATIN SMALL LETTER A WITH BREVE AND ACUTE */
    { 0x1001eb0, 0x1eb0 }, /* XK_Abrevegrave, LATIN CAPITAL LETTER A WITH BREVE AND GRAVE */
    { 0x1001eb1, 0x1eb1 }, /* XK_abrevegrave, LATIN SMALL LETTER A WITH BREVE AND GRAVE */
    { 0x1001eb2, 0x1eb2 }, /* XK_Abrevehook, LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE */
    { 0x1001eb3, 0x1eb3 }, /* XK_abrevehook, LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE */
    { 0x1001eb4, 0x1eb4 }, /* XK_Abrevetilde, LATIN CAPITAL LETTER A WITH BREVE AND TILDE */
    { 0x1001eb5, 0x1eb5 }, /* XK_abrevetilde, LATIN SMALL LETTER A WITH BREVE AND TILDE */
    { 0x1001eb6, 0x1eb6 }, /* XK_Abrevebelowdot, LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW */
    { 0x1001eb7, 0x1eb7 }, /* XK_abrevebelowdot, LATIN SMALL LETTER A WITH BREVE AND DOT BELOW */
    { 0x1001eb8, 0x1eb8 }, /* XK_Ebelowdot, LATIN CAPITAL LETTER E WITH DOT BELOW */
    { 0x1001eb9, 0x1eb9 }, /* XK_ebelowdot, LATIN SMALL LETTER E WITH DOT BELOW */
    { 0x1001eba, 0x1eba }, /* XK_Ehook, LATIN CAPITAL LETTER E WITH HOOK ABOVE */
    { 0x1001ebb, 0x1ebb }, /* XK_ehook, LATIN SMALL LETTER E WITH HOOK ABOVE */
    { 0x1001ebc, 0x1ebc }, /* XK_Etilde, LATIN CAPITAL LETTER E WITH TILDE */
    { 0x1001ebd, 0x1ebd }, /* XK_etilde, LATIN SMALL LETTER E WITH TILDE */
    { 0x1001ebe, 0x1ebe }, /* XK_Ecircumflexacute, LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE */
    { 0x1001ebf, 0x1ebf }, /* XK_ecircumflexacute, LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE */
    { 0x1001ec0, 0x1ec0 }, /* XK_Ecircumflexgrave, LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE */
    { 0x1001ec1, 0x1ec1 }, /* XK_ecircumflexgrave, LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE */
    { 0x1001ec2, 0x1ec2 }, /* XK_Ecircumflexhook, LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE */
    { 0x1001ec3, 0x1ec3 }, /* XK_ecircumflexhook, LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE */
    { 0x1001ec4, 0x1ec4 }, /* XK_Ecircumflextilde, LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE */
    { 0x1001ec5, 0x1ec5 }, /* XK_ecircumflextilde, LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE */
    { 0x1001ec6, 0x1ec6 }, /* XK_Ecircumflexbelowdot, LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW */
    { 0x1001ec7, 0x1ec7 }, /* XK_ecircumflexbelowdot, LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW */
    { 0x1001ec8, 0x1ec8 }, /* XK_Ihook, LATIN CAPITAL LETTER I WITH HOOK ABOVE */
    { 0x1001ec9, 0x1ec9 }, /* XK_ihook, LATIN SMALL LETTER I WITH HOOK ABOVE */
    { 0x1001eca, 0x1eca }, /* XK_Ibelowdot, LATIN CAPITAL LETTER I WITH DOT BELOW */
    { 0x1001ecb, 0x1ecb }, /* XK_ibelowdot, LATIN SMALL LETTER I WITH DOT BELOW */
    { 0x1001ecc, 0x1ecc }, /* XK_Obelowdot, LATIN CAPITAL LETTER O WITH DOT BELOW */
    { 0x1001ecd, 0x1ecd }, /* XK_obelowdot, LATIN SMALL LETTER O WITH DOT BELOW */
    { 0x1001ece, 0x1ece }, /* XK_Ohook, LATIN CAPITAL LETTER O WITH HOOK ABOVE */
    { 0x1001ecf, 0x1ecf }, /* XK_ohook, LATIN SMALL LETTER O WITH HOOK ABOVE */
    { 0x1001ed0, 0x1ed0 }, /* XK_Ocircumflexacute, LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE */
    { 0x1001ed1, 0x1ed1 }, /* XK_ocircumflexacute, LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE */
    { 0x1001ed2, 0x1ed2 }, /* XK_Ocircumflexgrave, LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE */
    { 0x1001ed3, 0x1ed3 }, /* XK_ocircumflexgrave, LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE */
    { 0x1001ed4, 0x1ed4 }, /* XK_Ocircumflexhook, LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE */
    { 0x1001ed5, 0x1ed5 }, /* XK_ocircumflexhook, LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE */
    { 0x1001ed6, 0x1ed6 }, /* XK_Ocircumflextilde, LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE */
    { 0x1001ed7, 0x1ed7 }, /* XK_ocircumflextilde, LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE */
    { 0x1001ed8, 0x1ed8 }, /* XK_Ocircumflexbelowdot, LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW */
    { 0x1001ed9, 0x1ed9 }, /* XK_ocircumflexbelowdot, LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW */
    { 0x1001eda, 0x1eda }, /* XK_Ohornacute, LATIN CAPITAL LETTER O WITH HORN AND ACUTE */
    { 0x1001edb, 0x1edb }, /* XK_ohornacute, LATIN SMALL LETTER O WITH HORN AND ACUTE */
    { 0x1001edc, 0x1edc }, /* XK_Ohorngrave, LATIN CAPITAL LETTER O WITH HORN AND GRAVE */
    { 0x1001edd, 0x1edd }, /* XK_ohorngrave, LATIN SMALL LETTER O WITH HORN AND GRAVE */
    { 0x1001ede, 0x1ede }, /* XK_Ohornhook, LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE */
    { 0x1001edf, 0x1edf }, /* XK_ohornhook, LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE */
    { 0x1001ee0, 0x1ee0 }, /* XK_Ohorntilde, LATIN CAPITAL LETTER O WITH HORN AND TILDE */
    { 0x1001ee1, 0x1ee1 }, /* XK_ohorntilde, LATIN SMALL LETTER O WITH HORN AND TILDE */
    { 0x1001ee2, 0x1ee2 }, /* XK_Ohornbelowdot, LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW */
    { 0x1001ee3, 0x1ee3 }, /* XK_ohornbelowdot, LATIN SMALL LETTER O WITH HORN AND DOT BELOW */
    { 0x1001ee4, 0x1ee4 }, /* XK_Ubelowdot, LATIN CAPITAL LETTER U WITH DOT BELOW */
    { 0x1001ee5, 0x1ee5 }, /* XK_ubelowdot, LATIN SMALL LETTER U WITH DOT BELOW */
    { 0x1001ee6, 0x1ee6 }, /* XK_Uhook, LATIN CAPITAL LETTER U WITH HOOK ABOVE */
    { 0x1001ee7, 0x1ee7 }, /* XK_uhook, LATIN SMALL LETTER U WITH HOOK ABOVE */
    { 0x1001ee8, 0x1ee8 }, /* XK_Uhornacute, LATIN CAPITAL LETTER U WITH HORN AND ACUTE */
    { 0x1001ee9, 0x1ee9 }, /* XK_uhornacute, LATIN SMALL LETTER U WITH HORN AND ACUTE */
    { 0x1001eea, 0x1eea }, /* XK_Uhorngrave, LATIN CAPITAL LETTER U WITH HORN AND GRAVE */
    { 0x1001eeb, 0x1eeb }, /* XK_uhorngrave, LATIN SMALL LETTER U WITH HORN AND GRAVE */
    { 0x1001eec, 0x1eec }, /* XK_Uhornhook, LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE */
    { 0x1001eed, 0x1eed }, /* XK_uhornhook, LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE */
    { 0x1001eee, 0x1eee }, /* XK_Uhorntilde, LATIN CAPITAL LETTER U WITH HORN AND TILDE */
    { 0x1001eef, 0x1eef }, /* XK_uhorntilde, LATIN SMALL LETTER U WITH HORN AND TILDE */
    { 0x1001ef0, 0x1ef0 }, /* XK_Uhornbelowdot, LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW */
    { 0x1001ef1, 0x1ef1 }, /* XK_uhornbelowdot, LATIN SMALL LETTER U WITH HORN AND DOT BELOW */
    { 0x1001ef2, 0x1ef2 }, /* XK_Ygrave, LATIN CAPITAL LETTER Y WITH GRAVE */
    { 0x1001ef3, 0x1ef3 }, /* XK_ygrave, LATIN SMALL LETTER Y WITH GRAVE */
    { 0x1001ef4, 0x1ef4 }, /* XK_Ybelowdot, LATIN CAPITAL LETTER Y WITH DOT BELOW */
    { 0x1001ef5, 0x1ef5 }, /* XK_ybelowdot, LATIN SMALL LETTER Y WITH DOT BELOW */
    { 0x1001ef6, 0x1ef6 }, /* XK_Yhook, LATIN CAPITAL LETTER Y WITH HOOK ABOVE */
    { 0x1001ef7, 0x1ef7 }, /* XK_yhook, LATIN SMALL LETTER Y WITH HOOK ABOVE */
    { 0x1001ef8, 0x1ef8 }, /* XK_Ytilde, LATIN CAPITAL LETTER Y WITH TILDE */
    { 0x1001ef9, 0x1ef9 }, /* XK_ytilde, LATIN SMALL LETTER Y WITH TILDE */
    { 0x1002070, 0x2070 }, /* XK_zerosuperior, SUPERSCRIPT ZERO */
    { 0x1002074, 0x2074 }, /* XK_foursuperior, SUPERSCRIPT FOUR */
    { 0x1002075, 0x2075 }, /* XK_fivesuperior, SUPERSCRIPT FIVE */
    { 0x1002076, 0x2076 }, /* XK_sixsuperior, SUPERSCRIPT SIX */
    { 0x1002077, 0x2077 }, /* XK_sevensuperior, SUPERSCRIPT SEVEN */
    { 0x1002078, 0x2078 }, /* XK_eightsuperior, SUPERSCRIPT EIGHT */
    { 0x1002079, 0x2079 }, /* XK_ninesuperior, SUPERSCRIPT NINE */
    { 0x1002080, 0x2080 }, /* XK_zerosubscript, SUBSCRIPT ZERO */
    { 0x1002081, 0x2081 }, /* XK_onesubscript, SUBSCRIPT ONE */
    { 0x1002082, 0x2082 }, /* XK_twosubscript, SUBSCRIPT TWO */
    { 0x1002083, 0x2083 }, /* XK_threesubscript, SUBSCRIPT THREE */
    { 0x1002084, 0x2084 }, /* XK_foursubscript, SUBSCRIPT FOUR */
    { 0x1002085, 0x2085 }, /* XK_fivesubscript, SUBSCRIPT FIVE */
    { 0x1002086, 0x2086 }, /* XK_sixsubscript, SUBSCRIPT SIX */
    { 0x1002087, 0x2087 }, /* XK_sevensubscript, SUBSCRIPT SEVEN */
    { 0x1002088, 0x2088 }, /* XK_eightsubscript, SUBSCRIPT EIGHT */
    { 0x1002089, 0x2089 }, /* XK_ninesubscript, SUBSCRIPT NINE */
    { 0x10020a0, 0x20a0 }, /* XK_EcuSign, EURO-CURRENCY SIGN */
    { 0x10020a1, 0x20a1 }, /* XK_ColonSign, COLON SIGN */
    { 0x10020a2, 0x20a2 }, /* XK_CruzeiroSign, CRUZEIRO SIGN */
    { 0x10020a3, 0x20a3 }, /* XK_FFrancSign, FRENCH FRANC SIGN */
    { 0x10020a4, 0x20a4 }, /* XK_LiraSign, LIRA SIGN */
    { 0x10020a5, 0x20a5 }, /* XK_MillSign, MILL SIGN */
    { 0x10020a6, 0x20a6 }, /* XK_NairaSign, NAIRA SIGN */
    { 0x10020a7, 0x20a7 }, /* XK_PesetaSign, PESETA SIGN */
    { 0x10020a8, 0x20a8 }, /* XK_RupeeSign, RUPEE SIGN */
    { 0x10020a9, 0x20a9 }, /* XK_WonSign, WON SIGN */
    { 0x10020aa, 0x20aa }, /* XK_NewSheqelSign, NEW SHEQEL SIGN */
    { 0x10020ab, 0x20ab }, /* XK_DongSign, DONG SIGN */
    { 0x1002202, 0x2202 }, /* XK_partdifferential, PARTIAL DIFFERENTIAL */
    { 0x1002205, 0x2205 }, /* XK_emptyset, NULL SET */
    { 0x1002208, 0x2208 }, /* XK_elementof, ELEMENT OF */
    { 0x1002209, 0x2209 }, /* XK_notelementof, NOT AN ELEMENT OF */
    { 0x100220b, 0x220b }, /* XK_containsas, CONTAINS AS MEMBER */
    { 0x100221a, 0x221a }, /* XK_squareroot, SQUARE ROOT */
    { 0x100221b, 0x221b }, /* XK_cuberoot, CUBE ROOT */
    { 0x100221c, 0x221c }, /* XK_fourthroot, FOURTH ROOT */
    { 0x100222c, 0x222c }, /* XK_dintegral, DOUBLE INTEGRAL */
    { 0x100222d, 0x222d }, /* XK_tintegral, TRIPLE INTEGRAL */
    { 0x1002235, 0x2235 }, /* XK_because, BECAUSE */
    { 0x1002247, 0x2247 }, /* XK_notapproxeq, NOT ALMOST EQUAL TO */
    { 0x1002248, 0x2245 }, /* XK_approxeq, ALMOST EQUAL TO */
    { 0x1002262, 0x2262 }, /* XK_notidentical, NOT IDENTICAL TO */
    { 0x1002800, 0x2800 }, /* XK_braille_blank, BRAILLE PATTERN BLANK */
    { 0, 0 } /* -- terminator -- */
};

static const int 
xkeysymtounicode_table_size = 1048;

#endif // _XKEYSYMTOUNICODETABLE_H_