Module: ANSEL::CharacterMap
- Included in:
- Converter
- Defined in:
- lib/ansel/character_map.rb
Constant Summary collapse
- NON_COMBINING =
{ 'ERR' => "\xFF\xFD", # � - REPLACEMENT CHARACTER '88' => '', # NON-SORT BEGIN / START OF STRING '89' => '', # NON-SORT END / STRING TERMINATOR '8D' => '', # JOINER / ZERO WIDTH JOINER '8E' => '', # NON-JOINER / ZERO WIDTH NON-JOINER 'A1' => "\x01\x41", # Ł - UPPERCASE POLISH L / LATIN CAPITAL LETTER L WITH STROKE 'A2' => "\x00\xD8", # Ø - UPPERCASE SCANDINAVIAN O / LATIN CAPITAL LETTER O WITH STROKE 'A3' => "\x01\x10", # Đ - UPPERCASE D WITH CROSSBAR / LATIN CAPITAL LETTER D WITH STROKE 'A4' => "\x00\xDE", # Þ - UPPERCASE ICELANDIC THORN / LATIN CAPITAL LETTER THORN (Icelandic) 'A5' => "\x00\xC6", # Æ - UPPERCASE DIGRAPH AE / LATIN CAPITAL LIGATURE AE 'A6' => "\x01\x52", # Œ - UPPERCASE DIGRAPH OE / LATIN CAPITAL LIGATURE OE 'A7' => "\x02\xB9", # ʹ - SOFT SIGN, PRIME / MODIFIER LETTER PRIME 'A8' => "\x00\xB7", # · - MIDDLE DOT 'A9' => "\x26\x6D", # ♭ - MUSIC FLAT SIGN 'AA' => "\x00\xAE", # ® - PATENT MARK / REGISTERED SIGN 'AB' => "\x00\xB1", # ± - PLUS OR MINUS / PLUS-MINUS SIGN 'AC' => "\x01\xA0", # Ơ - UPPERCASE O-HOOK / LATIN CAPITAL LETTER O WITH HORN 'AD' => "\x01\xAF", # Ư - UPPERCASE U-HOOK / LATIN CAPITAL LETTER U WITH HORN 'AE' => "\x02\xBC", # ʼ - ALIF / MODIFIER LETTER APOSTROPHE 'B0' => "\x02\xBB", # ʻ - AYN / MODIFIER LETTER TURNED COMMA 'B1' => "\x01\x42", # ł - LOWERCASE POLISH L / LATIN SMALL LETTER L WITH STROKE 'B2' => "\x00\xF8", # ø - LOWERCASE SCANDINAVIAN O / LATIN SMALL LETTER O WITH STROKE 'B3' => "\x01\x11", # đ - LOWERCASE D WITH CROSSBAR / LATIN SMALL LETTER D WITH STROKE 'B4' => "\x00\xFE", # þ - LOWERCASE ICELANDIC THORN / LATIN SMALL LETTER THORN (Icelandic) 'B5' => "\x00\xE6", # æ - LOWERCASE DIGRAPH AE / LATIN SMALL LIGATURE AE 'B6' => "\x01\x53", # œ - LOWERCASE DIGRAPH OE / LATIN SMALL LIGATURE OE 'B7' => "\x02\xBA", # ʺ - HARD SIGN, DOUBLE PRIME / MODIFIER LETTER DOUBLE PRIME 'B8' => "\x01\x31", # ı - LOWERCASE TURKISH I / LATIN SMALL LETTER DOTLESS I 'B9' => "\x00\xA3", # £ - BRITISH POUND / POUND SIGN 'BA' => "\x00\xF0", # ð - LOWERCASE ETH / LATIN SMALL LETTER ETH (Icelandic) 'BC' => "\x01\xA1", # ơ - LOWERCASE O-HOOK / LATIN SMALL LETTER O WITH HORN 'BD' => "\x01\xB0", # ư - LOWERCASE U-HOOK / LATIN SMALL LETTER U WITH HORN 'C0' => "\x00\xB0", # ° - DEGREE SIGN 'C1' => "\x21\x13", # ℓ - SCRIPT SMALL L 'C2' => "\x21\x17", # ℗ - SOUND RECORDING COPYRIGHT 'C3' => "\x00\xA9", # © - COPYRIGHT SIGN 'C4' => "\x26\x6F", # ♯ - MUSIC SHARP SIGN 'C5' => "\x00\xBF", # ¿ - INVERTED QUESTION MARK 'C6' => "\x00\xA1", # ¡ - INVERTED EXCLAMATION MARK 'C7' => "\x00\xDF", # ß - ESZETT SYMBOL 'C8' => "\x20\xAC" # € - EURO SIGN }.freeze
- COMBINING =
{ 'E0+41' => "\x1E\xA2", # Ả - LATIN CAPITAL LETTER A WITH HOOK ABOVE 'E0+45' => "\x1E\xBA", # LATIN CAPITAL LETTER E WITH HOOK ABOVE 'E0+49' => "\x1E\xC8", # LATIN CAPITAL LETTER I WITH HOOK ABOVE 'E0+4F' => "\x1E\xCE", # LATIN CAPITAL LETTER O WITH HOOK ABOVE 'E0+55' => "\x1E\xE6", # LATIN CAPITAL LETTER U WITH HOOK ABOVE 'E0+59' => "\x1E\xF6", # LATIN CAPITAL LETTER Y WITH HOOK ABOVE 'E0+61' => "\x1E\xA3", # LATIN SMALL LETTER A WITH HOOK ABOVE 'E0+65' => "\x1E\xBB", # LATIN SMALL LETTER E WITH HOOK ABOVE 'E0+69' => "\x1E\xC9", # LATIN SMALL LETTER I WITH HOOK ABOVE 'E0+6F' => "\x1E\xCF", # LATIN SMALL LETTER O WITH HOOK ABOVE 'E0+75' => "\x1E\xE7", # LATIN SMALL LETTER U WITH HOOK ABOVE 'E0+79' => "\x1E\xF7", # LATIN SMALL LETTER Y WITH HOOK ABOVE 'E0+E3+41' => "\x1E\xA8", # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE 'E0+E3+45' => "\x1E\xC2", # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE 'E0+E3+4F' => "\x1E\xD4", # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE 'E0+E3+61' => "\x1E\xA9", # LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE 'E0+E3+65' => "\x1E\xC3", # LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE 'E0+E3+6F' => "\x1E\xD5", # LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE 'E0+E6+41' => "\x1E\xB2", # LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE 'E0+E6+61' => "\x1E\xB3", # LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE 'E0' => "\x03\x09", # COMBINING HOOK ABOVE 'E1+41' => "\x00\xC0", # LATIN CAPITAL LETTER A WITH GRAVE 'E1+45' => "\x00\xC8", # LATIN CAPITAL LETTER E WITH GRAVE 'E1+49' => "\x00\xCC", # LATIN CAPITAL LETTER I WITH GRAVE 'E1+4F' => "\x00\xD2", # LATIN CAPITAL LETTER O WITH GRAVE 'E1+55' => "\x00\xD9", # LATIN CAPITAL LETTER U WITH GRAVE 'E1+57' => "\x1E\x80", # LATIN CAPITAL LETTER W WITH GRAVE 'E1+59' => "\x1E\xF2", # LATIN CAPITAL LETTER Y WITH GRAVE 'E1+61' => "\x00\xE0", # LATIN SMALL LETTER A WITH GRAVE 'E1+65' => "\x00\xE8", # LATIN SMALL LETTER E WITH GRAVE 'E1+69' => "\x00\xEC", # LATIN SMALL LETTER I WITH GRAVE 'E1+6F' => "\x00\xF2", # LATIN SMALL LETTER O WITH GRAVE 'E1+75' => "\x00\xF9", # LATIN SMALL LETTER U WITH GRAVE 'E1+77' => "\x1E\x81", # LATIN SMALL LETTER W WITH GRAVE 'E1+79' => "\x1E\xF3", # LATIN SMALL LETTER Y WITH GRAVE 'E1+E3+41' => "\x1E\xA6", # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE 'E1+E3+45' => "\x1E\xC0", # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE 'E1+E3+4F' => "\x1E\xD2", # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE 'E1+E3+61' => "\x1E\xA7", # LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE 'E1+E3+65' => "\x1E\xC1", # LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE 'E1+E3+6F' => "\x1E\xD3", # LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE 'E1+E5+45' => "\x1E\x14", # LATIN CAPITAL LETTER E WITH MACRON AND GRAVE 'E1+E5+4F' => "\x1E\x50", # LATIN CAPITAL LETTER O WITH MACRON AND GRAVE 'E1+E5+65' => "\x1E\x15", # LATIN SMALL LETTER E WITH MACRON AND GRAVE 'E1+E5+6F' => "\x1E\x51", # LATIN SMALL LETTER O WITH MACRON AND GRAVE 'E1+E6+41' => "\x1E\xB0", # LATIN CAPITAL LETTER A WITH BREVE AND GRAVE 'E1+E6+61' => "\x1E\xB1", # LATIN SMALL LETTER A WITH BREVE AND GRAVE 'E1+E8+55' => "\x01\xDB", # LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE 'E1+E8+75' => "\x01\xDC", # LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE 'E1' => "\x03\x00", # COMBINING GRAVE ACCENT 'E2+41' => "\x00\xC1", # LATIN CAPITAL LETTER A WITH ACUTE 'E2+43' => "\x01\x06", # LATIN CAPITAL LETTER C WITH ACUTE 'E2+45' => "\x00\xC9", # LATIN CAPITAL LETTER E WITH ACUTE 'E2+47' => "\x01\xF4", # LATIN CAPITAL LETTER G WITH ACUTE 'E2+49' => "\x00\xCD", # LATIN CAPITAL LETTER I WITH ACUTE 'E2+4B' => "\x1E\x30", # LATIN CAPITAL LETTER K WITH ACUTE 'E2+4C' => "\x01\x39", # LATIN CAPITAL LETTER L WITH ACUTE 'E2+4D' => "\x1E\x3E", # LATIN CAPITAL LETTER M WITH ACUTE 'E2+4E' => "\x01\x43", # LATIN CAPITAL LETTER N WITH ACUTE 'E2+4F' => "\x00\xD3", # LATIN CAPITAL LETTER O WITH ACUTE 'E2+50' => "\x1E\x54", # LATIN CAPITAL LETTER P WITH ACUTE 'E2+52' => "\x01\x54", # LATIN CAPITAL LETTER R WITH ACUTE 'E2+53' => "\x01\x5A", # LATIN CAPITAL LETTER S WITH ACUTE 'E2+55' => "\x00\xDA", # LATIN CAPITAL LETTER U WITH ACUTE 'E2+57' => "\x1E\x82", # LATIN CAPITAL LETTER W WITH ACUTE 'E2+59' => "\x00\xDD", # LATIN CAPITAL LETTER Y WITH ACUTE 'E2+5A' => "\x01\x79", # LATIN CAPITAL LETTER Z WITH ACUTE 'E2+61' => "\x00\xE1", # LATIN SMALL LETTER A WITH ACUTE 'E2+63' => "\x01\x07", # LATIN SMALL LETTER C WITH ACUTE 'E2+65' => "\x00\xE9", # LATIN SMALL LETTER E WITH ACUTE 'E2+67' => "\x01\xF5", # LATIN SMALL LETTER G WITH ACUTE 'E2+69' => "\x00\xED", # LATIN SMALL LETTER I WITH ACUTE 'E2+6B' => "\x1E\x31", # LATIN SMALL LETTER K WITH ACUTE 'E2+6C' => "\x01\x3A", # LATIN SMALL LETTER L WITH ACUTE 'E2+6D' => "\x1E\x3F", # LATIN SMALL LETTER M WITH ACUTE 'E2+6E' => "\x01\x44", # LATIN SMALL LETTER N WITH ACUTE 'E2+6F' => "\x00\xF3", # LATIN SMALL LETTER O WITH ACUTE 'E2+70' => "\x1E\x55", # LATIN SMALL LETTER P WITH ACUTE 'E2+72' => "\x01\x55", # LATIN SMALL LETTER R WITH ACUTE 'E2+73' => "\x01\x5B", # LATIN SMALL LETTER S WITH ACUTE 'E2+75' => "\x00\xFA", # LATIN SMALL LETTER U WITH ACUTE 'E2+77' => "\x1E\x83", # LATIN SMALL LETTER W WITH ACUTE 'E2+79' => "\x00\xFD", # LATIN SMALL LETTER Y WITH ACUTE 'E2+7A' => "\x01\x7A", # LATIN SMALL LETTER Z WITH ACUTE 'E2+A5' => "\x01\xFC", # LATIN CAPITAL LETTER AE WITH ACUTE 'E2+B5' => "\x01\xFD", # LATIN SMALL LETTER AE WITH ACUTE 'E2+E3+41' => "\x1E\xA4", # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE 'E2+E3+45' => "\x1E\xBE", # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE 'E2+E3+4F' => "\x1E\xD0", # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE 'E2+E3+61' => "\x1E\xA5", # LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE 'E2+E3+65' => "\x1E\xBF", # LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE 'E2+E3+6F' => "\x1E\xD1", # LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE 'E2+E4+4F' => "\x1E\x4C", # LATIN CAPITAL LETTER O WITH TILDE AND ACUTE 'E2+E4+55' => "\x1E\x78", # LATIN CAPITAL LETTER U WITH TILDE AND ACUTE 'E2+E4+6F' => "\x1E\x4D", # LATIN SMALL LETTER O WITH TILDE AND ACUTE 'E2+E4+75' => "\x1E\x79", # LATIN SMALL LETTER U WITH TILDE AND ACUTE 'E2+E5+45' => "\x1E\x16", # LATIN CAPITAL LETTER E WITH MACRON AND ACUTE 'E2+E5+4F' => "\x1E\x52", # LATIN CAPITAL LETTER O WITH MACRON AND ACUTE 'E2+E5+65' => "\x1E\x17", # LATIN SMALL LETTER E WITH MACRON AND ACUTE 'E2+E5+6F' => "\x1E\x53", # LATIN SMALL LETTER O WITH MACRON AND ACUTE 'E2+E6+41' => "\x1E\xAE", # LATIN CAPITAL LETTER A WITH BREVE AND ACUTE 'E2+E6+61' => "\x1E\xAF", # LATIN SMALL LETTER A WITH BREVE AND ACUTE 'E2+E7+53' => "\x1E\x64", # LATIN CAPITAL LETTER S WITH ACUTE AND DOT ABOVE 'E2+E7+73' => "\x1E\x65", # LATIN SMALL LETTER S WITH ACUTE AND DOT ABOVE 'E2+E8+49' => "\x1E\x2E", # LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE 'E2+E8+55' => "\x01\xD7", # LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE 'E2+E8+69' => "\x1E\x2F", # LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE 'E2+E8+75' => "\x01\xD8", # LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE 'E2+EA+41' => "\x01\xFA", # LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE 'E2+EA+61' => "\x01\xFB", # LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE 'E2+F0+43' => "\x1E\x08", # LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE 'E2+F0+63' => "\x1E\x09", # LATIN SMALL LETTER C WITH CEDILLA AND ACUTE 'E2' => "\x03\x01", # COMBINING ACUTE ACCENT 'E3+41' => "\x00\xC2", # LATIN CAPITAL LETTER A WITH CIRCUMFLEX 'E3+43' => "\x01\x08", # LATIN CAPITAL LETTER C WITH CIRCUMFLEX 'E3+45' => "\x00\xCA", # LATIN CAPITAL LETTER E WITH CIRCUMFLEX 'E3+47' => "\x01\x1C", # LATIN CAPITAL LETTER G WITH CIRCUMFLEX 'E3+48' => "\x01\x24", # LATIN CAPITAL LETTER H WITH CIRCUMFLEX 'E3+49' => "\x00\xCE", # LATIN CAPITAL LETTER I WITH CIRCUMFLEX 'E3+4A' => "\x01\x34", # LATIN CAPITAL LETTER J WITH CIRCUMFLEX 'E3+4F' => "\x00\xD4", # LATIN CAPITAL LETTER O WITH CIRCUMFLEX 'E3+53' => "\x01\x5C", # LATIN CAPITAL LETTER S WITH CIRCUMFLEX 'E3+55' => "\x00\xDB", # LATIN CAPITAL LETTER U WITH CIRCUMFLEX 'E3+57' => "\x01\x74", # LATIN CAPITAL LETTER W WITH CIRCUMFLEX 'E3+59' => "\x01\x76", # LATIN CAPITAL LETTER Y WITH CIRCUMFLEX 'E3+5A' => "\x1E\x90", # LATIN CAPITAL LETTER Z WITH CIRCUMFLEX 'E3+61' => "\x00\xE2", # LATIN SMALL LETTER A WITH CIRCUMFLEX 'E3+63' => "\x01\x09", # LATIN SMALL LETTER C WITH CIRCUMFLEX 'E3+65' => "\x00\xEA", # LATIN SMALL LETTER E WITH CIRCUMFLEX 'E3+67' => "\x01\x1D", # LATIN SMALL LETTER G WITH CIRCUMFLEX 'E3+68' => "\x01\x25", # LATIN SMALL LETTER H WITH CIRCUMFLEX 'E3+69' => "\x00\xEE", # LATIN SMALL LETTER I WITH CIRCUMFLEX 'E3+6A' => "\x01\x35", # LATIN SMALL LETTER J WITH CIRCUMFLEX 'E3+6F' => "\x00\xF4", # LATIN SMALL LETTER O WITH CIRCUMFLEX 'E3+73' => "\x01\x5D", # LATIN SMALL LETTER S WITH CIRCUMFLEX 'E3+75' => "\x00\xFB", # LATIN SMALL LETTER U WITH CIRCUMFLEX 'E3+77' => "\x01\x75", # LATIN SMALL LETTER W WITH CIRCUMFLEX 'E3+79' => "\x01\x77", # LATIN SMALL LETTER Y WITH CIRCUMFLEX 'E3+7A' => "\x1E\x91", # LATIN SMALL LETTER Z WITH CIRCUMFLEX 'E3+E0+41' => "\x1E\xA8", # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE 'E3+E0+45' => "\x1E\xC2", # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE 'E3+E0+4F' => "\x1E\xD4", # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE 'E3+E0+61' => "\x1E\xA9", # LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE 'E3+E0+65' => "\x1E\xC3", # LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE 'E3+E0+6F' => "\x1E\xD5", # LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE 'E3+E1+41' => "\x1E\xA6", # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE 'E3+E1+45' => "\x1E\xC0", # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE 'E3+E1+4F' => "\x1E\xD2", # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE 'E3+E1+61' => "\x1E\xA7", # LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE 'E3+E1+65' => "\x1E\xC1", # LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE 'E3+E1+6F' => "\x1E\xD3", # LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE 'E3+E2+41' => "\x1E\xA4", # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE 'E3+E2+45' => "\x1E\xBE", # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE 'E3+E2+4F' => "\x1E\xD0", # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE 'E3+E2+61' => "\x1E\xA5", # LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE 'E3+E2+65' => "\x1E\xBF", # LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE 'E3+E2+6F' => "\x1E\xD1", # LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE 'E3+E4+41' => "\x1E\xAA", # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE 'E3+E4+45' => "\x1E\xC4", # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE 'E3+E4+4F' => "\x1E\xD6", # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE 'E3+E4+61' => "\x1E\xAB", # LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE 'E3+E4+65' => "\x1E\xC5", # LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE 'E3+E4+6F' => "\x1E\xD7", # LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE 'E3+F2+41' => "\x1E\xAC", # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW 'E3+F2+45' => "\x1E\xC6", # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW 'E3+F2+4F' => "\x1E\xD8", # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW 'E3+F2+61' => "\x1E\xAD", # LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW 'E3+F2+65' => "\x1E\xC7", # LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW 'E3+F2+6F' => "\x1E\xD9", # LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW 'E3' => "\x03\x02", # COMBINING CIRCUMFLEX ACCENT 'E4+41' => "\x00\xC3", # LATIN CAPITAL LETTER A WITH TILDE 'E4+45' => "\x1E\xBC", # LATIN CAPITAL LETTER E WITH TILDE 'E4+49' => "\x01\x28", # LATIN CAPITAL LETTER I WITH TILDE 'E4+4E' => "\x00\xD1", # LATIN CAPITAL LETTER N WITH TILDE 'E4+4F' => "\x00\xD5", # LATIN CAPITAL LETTER O WITH TILDE 'E4+55' => "\x01\x68", # LATIN CAPITAL LETTER U WITH TILDE 'E4+56' => "\x1E\x7C", # LATIN CAPITAL LETTER V WITH TILDE 'E4+59' => "\x1E\xF8", # LATIN CAPITAL LETTER Y WITH TILDE 'E4+61' => "\x00\xE3", # LATIN SMALL LETTER A WITH TILDE 'E4+65' => "\x1E\xBD", # LATIN SMALL LETTER E WITH TILDE 'E4+69' => "\x01\x29", # LATIN SMALL LETTER I WITH TILDE 'E4+6E' => "\x00\xF1", # LATIN SMALL LETTER N WITH TILDE 'E4+6F' => "\x00\xF5", # LATIN SMALL LETTER O WITH TILDE 'E4+75' => "\x01\x69", # LATIN SMALL LETTER U WITH TILDE 'E4+76' => "\x1E\x7D", # LATIN SMALL LETTER V WITH TILDE 'E4+79' => "\x1E\xF9", # LATIN SMALL LETTER Y WITH TILDE 'E4+E2+4F' => "\x1E\x4C", # LATIN CAPITAL LETTER O WITH TILDE AND ACUTE 'E4+E2+55' => "\x1E\x78", # LATIN CAPITAL LETTER U WITH TILDE AND ACUTE 'E4+E2+6F' => "\x1E\x4D", # LATIN SMALL LETTER O WITH TILDE AND ACUTE 'E4+E2+75' => "\x1E\x79", # LATIN SMALL LETTER U WITH TILDE AND ACUTE 'E4+E3+41' => "\x1E\xAA", # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE 'E4+E3+45' => "\x1E\xC4", # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE 'E4+E3+4F' => "\x1E\xD6", # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE 'E4+E3+61' => "\x1E\xAB", # LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE 'E4+E3+65' => "\x1E\xC5", # LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE 'E4+E3+6F' => "\x1E\xD7", # LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE 'E4+E6+41' => "\x1E\xB4", # LATIN CAPITAL LETTER A WITH BREVE AND TILDE 'E4+E6+61' => "\x1E\xB5", # LATIN SMALL LETTER A WITH BREVE AND TILDE 'E4+E8+4F' => "\x1E\x4E", # LATIN CAPITAL LETTER O WITH TILDE AND DIAERESIS 'E4+E8+6F' => "\x1E\x4F", # LATIN SMALL LETTER O WITH TILDE AND DIAERESIS 'E4' => "\x03\x03", # COMBINING TILDE 'E5+41' => "\x01\x00", # LATIN CAPITAL LETTER A WITH MACRON 'E5+45' => "\x01\x12", # LATIN CAPITAL LETTER E WITH MACRON 'E5+47' => "\x1E\x20", # LATIN CAPITAL LETTER G WITH MACRON 'E5+49' => "\x01\x2A", # LATIN CAPITAL LETTER I WITH MACRON 'E5+4F' => "\x01\x4C", # LATIN CAPITAL LETTER O WITH MACRON 'E5+55' => "\x01\x6A", # LATIN CAPITAL LETTER U WITH MACRON 'E5+61' => "\x01\x01", # LATIN SMALL LETTER A WITH MACRON 'E5+65' => "\x01\x13", # LATIN SMALL LETTER E WITH MACRON 'E5+67' => "\x1E\x21", # LATIN SMALL LETTER G WITH MACRON 'E5+69' => "\x01\x2B", # LATIN SMALL LETTER I WITH MACRON 'E5+6F' => "\x01\x4D", # LATIN SMALL LETTER O WITH MACRON 'E5+75' => "\x01\x6B", # LATIN SMALL LETTER U WITH MACRON 'E5+A5' => "\x01\xE2", # LATIN CAPITAL LETTER AE WITH MACRON 'E5+B5' => "\x01\xE3", # LATIN SMALL LETTER AE WITH MACRON 'E5+E1+45' => "\x1E\x14", # LATIN CAPITAL LETTER E WITH MACRON AND GRAVE 'E5+E1+4F' => "\x1E\x50", # LATIN CAPITAL LETTER O WITH MACRON AND GRAVE 'E5+E1+65' => "\x1E\x15", # LATIN SMALL LETTER E WITH MACRON AND GRAVE 'E5+E1+6F' => "\x1E\x51", # LATIN SMALL LETTER O WITH MACRON AND GRAVE 'E5+E2+45' => "\x1E\x16", # LATIN CAPITAL LETTER E WITH MACRON AND ACUTE 'E5+E2+4F' => "\x1E\x52", # LATIN CAPITAL LETTER O WITH MACRON AND ACUTE 'E5+E2+65' => "\x1E\x17", # LATIN SMALL LETTER E WITH MACRON AND ACUTE 'E5+E2+6F' => "\x1E\x53", # LATIN SMALL LETTER O WITH MACRON AND ACUTE 'E5+E7+41' => "\x01\xE0", # LATIN CAPITAL LETTER A WITH DOT ABOVE AND MACRON 'E5+E7+61' => "\x01\xE1", # LATIN SMALL LETTER A WITH DOT ABOVE AND MACRON 'E5+E8+41' => "\x01\xDE", # LATIN CAPITAL LETTER A WITH DIAERESIS AND MACRON 'E5+E8+55' => "\x1E\x7A", # LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON 'E5+E8+61' => "\x01\xDF", # LATIN SMALL LETTER A WITH DIAERESIS AND MACRON 'E5+E8+75' => "\x1E\x7B", # LATIN SMALL LETTER U WITH DIAERESIS AND MACRON 'E5+F1+4F' => "\x01\xEC", # LATIN CAPITAL LETTER O WITH OGONEK AND MACRON 'E5+F1+6F' => "\x01\xED", # LATIN SMALL LETTER O WITH OGONEK AND MACRON 'E5+F2+4C' => "\x1E\x38", # LATIN CAPITAL LETTER L WITH DOT BELOW AND MACRON 'E5+F2+52' => "\x1E\x5C", # LATIN CAPITAL LETTER R WITH DOT BELOW AND MACRON 'E5+F2+6C' => "\x1E\x39", # LATIN SMALL LETTER L WITH DOT BELOW AND MACRON 'E5+F2+72' => "\x1E\x5D", # LATIN SMALL LETTER R WITH DOT BELOW AND MACRON 'E5' => "\x03\x04", # COMBINING MACRON 'E6+41' => "\x01\x02", # LATIN CAPITAL LETTER A WITH BREVE 'E6+45' => "\x01\x14", # LATIN CAPITAL LETTER E WITH BREVE 'E6+47' => "\x01\x1E", # LATIN CAPITAL LETTER G WITH BREVE 'E6+49' => "\x01\x2C", # LATIN CAPITAL LETTER I WITH BREVE 'E6+4F' => "\x01\x4E", # LATIN CAPITAL LETTER O WITH BREVE 'E6+55' => "\x01\x6C", # LATIN CAPITAL LETTER U WITH BREVE 'E6+61' => "\x01\x03", # LATIN SMALL LETTER A WITH BREVE 'E6+65' => "\x01\x15", # LATIN SMALL LETTER E WITH BREVE 'E6+67' => "\x01\x1F", # LATIN SMALL LETTER G WITH BREVE 'E6+69' => "\x01\x2D", # LATIN SMALL LETTER I WITH BREVE 'E6+6F' => "\x01\x4F", # LATIN SMALL LETTER O WITH BREVE 'E6+75' => "\x01\x6D", # LATIN SMALL LETTER U WITH BREVE 'E6+E0+41' => "\x1E\xB2", # LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE 'E6+E0+61' => "\x1E\xB3", # LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE 'E6+E1+41' => "\x1E\xB0", # LATIN CAPITAL LETTER A WITH BREVE AND GRAVE 'E6+E1+61' => "\x1E\xB1", # LATIN SMALL LETTER A WITH BREVE AND GRAVE 'E6+E2+41' => "\x1E\xAE", # LATIN CAPITAL LETTER A WITH BREVE AND ACUTE 'E6+E2+61' => "\x1E\xAF", # LATIN SMALL LETTER A WITH BREVE AND ACUTE 'E6+E4+41' => "\x1E\xB4", # LATIN CAPITAL LETTER A WITH BREVE AND TILDE 'E6+E4+61' => "\x1E\xB5", # LATIN SMALL LETTER A WITH BREVE AND TILDE 'E6+F0+45' => "\x1E\x1C", # LATIN CAPITAL LETTER E WITH CEDILLA AND BREVE 'E6+F0+65' => "\x1E\x1D", # LATIN SMALL LETTER E WITH CEDILLA AND BREVE 'E6+F2+41' => "\x1E\xB6", # LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW 'E6+F2+61' => "\x1E\xB7", # LATIN SMALL LETTER A WITH BREVE AND DOT BELOW 'E6' => "\x03\x06", # COMBINING BREVE 'E7+42' => "\x1E\x02", # LATIN CAPITAL LETTER B WITH DOT ABOVE 'E7+43' => "\x01\x0A", # LATIN CAPITAL LETTER C WITH DOT ABOVE 'E7+44' => "\x1E\x0A", # LATIN CAPITAL LETTER D WITH DOT ABOVE 'E7+45' => "\x01\x16", # LATIN CAPITAL LETTER E WITH DOT ABOVE 'E7+46' => "\x1E\x1E", # LATIN CAPITAL LETTER F WITH DOT ABOVE 'E7+47' => "\x01\x20", # LATIN CAPITAL LETTER G WITH DOT ABOVE 'E7+48' => "\x1E\x22", # LATIN CAPITAL LETTER H WITH DOT ABOVE 'E7+49' => "\x01\x30", # LATIN CAPITAL LETTER I WITH DOT ABOVE 'E7+4D' => "\x1E\x40", # LATIN CAPITAL LETTER M WITH DOT ABOVE 'E7+4E' => "\x1E\x44", # LATIN CAPITAL LETTER N WITH DOT ABOVE 'E7+50' => "\x1E\x56", # LATIN CAPITAL LETTER P WITH DOT ABOVE 'E7+52' => "\x1E\x58", # LATIN CAPITAL LETTER R WITH DOT ABOVE 'E7+53' => "\x1E\x60", # LATIN CAPITAL LETTER S WITH DOT ABOVE 'E7+54' => "\x1E\x6A", # LATIN CAPITAL LETTER T WITH DOT ABOVE 'E7+57' => "\x1E\x86", # LATIN CAPITAL LETTER W WITH DOT ABOVE 'E7+58' => "\x1E\x8A", # LATIN CAPITAL LETTER X WITH DOT ABOVE 'E7+59' => "\x1E\x8E", # LATIN CAPITAL LETTER Y WITH DOT ABOVE 'E7+5A' => "\x01\x7B", # LATIN CAPITAL LETTER Z WITH DOT ABOVE 'E7+62' => "\x1E\x03", # LATIN SMALL LETTER B WITH DOT ABOVE 'E7+63' => "\x01\x0B", # LATIN SMALL LETTER C WITH DOT ABOVE 'E7+64' => "\x1E\x0B", # LATIN SMALL LETTER D WITH DOT ABOVE 'E7+65' => "\x01\x17", # LATIN SMALL LETTER E WITH DOT ABOVE 'E7+66' => "\x1E\x1F", # LATIN SMALL LETTER F WITH DOT ABOVE 'E7+67' => "\x01\x21", # LATIN SMALL LETTER G WITH DOT ABOVE 'E7+68' => "\x1E\x23", # LATIN SMALL LETTER H WITH DOT ABOVE 'E7+6D' => "\x1E\x41", # LATIN SMALL LETTER M WITH DOT ABOVE 'E7+6E' => "\x1E\x45", # LATIN SMALL LETTER N WITH DOT ABOVE 'E7+70' => "\x1E\x57", # LATIN SMALL LETTER P WITH DOT ABOVE 'E7+72' => "\x1E\x59", # LATIN SMALL LETTER R WITH DOT ABOVE 'E7+73' => "\x1E\x61", # LATIN SMALL LETTER S WITH DOT ABOVE 'E7+74' => "\x1E\x6B", # LATIN SMALL LETTER T WITH DOT ABOVE 'E7+77' => "\x1E\x87", # LATIN SMALL LETTER W WITH DOT ABOVE 'E7+78' => "\x1E\x8B", # LATIN SMALL LETTER X WITH DOT ABOVE 'E7+79' => "\x1E\x8F", # LATIN SMALL LETTER Y WITH DOT ABOVE 'E7+7A' => "\x01\x7C", # LATIN SMALL LETTER Z WITH DOT ABOVE 'E7+E2+53' => "\x1E\x64", # LATIN CAPITAL LETTER S WITH ACUTE AND DOT ABOVE 'E7+E2+73' => "\x1E\x65", # LATIN SMALL LETTER S WITH ACUTE AND DOT ABOVE 'E7+E5+41' => "\x01\xE0", # LATIN CAPITAL LETTER A WITH DOT ABOVE AND MACRON 'E7+E5+61' => "\x01\xE1", # LATIN SMALL LETTER A WITH DOT ABOVE AND MACRON 'E7+E9+53' => "\x1E\x66", # LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE 'E7+E9+73' => "\x1E\x67", # LATIN SMALL LETTER S WITH CARON AND DOT ABOVE 'E7+F2+53' => "\x1E\x68", # LATIN CAPITAL LETTER S WITH DOT BELOW AND DOT ABOVE 'E7+F2+73' => "\x1E\x69", # LATIN SMALL LETTER S WITH DOT BELOW AND DOT ABOVE 'E7' => "\x03\x07", # COMBINING DOT ABOVE 'E8+41' => "\x00\xC4", # LATIN CAPITAL LETTER A WITH DIAERESIS 'E8+45' => "\x00\xCB", # LATIN CAPITAL LETTER E WITH DIAERESIS 'E8+48' => "\x1E\x26", # LATIN CAPITAL LETTER H WITH DIAERESIS 'E8+49' => "\x00\xCF", # LATIN CAPITAL LETTER I WITH DIAERESIS 'E8+4F' => "\x00\xD6", # LATIN CAPITAL LETTER O WITH DIAERESIS 'E8+55' => "\x00\xDC", # LATIN CAPITAL LETTER U WITH DIAERESIS 'E8+57' => "\x1E\x84", # LATIN CAPITAL LETTER W WITH DIAERESIS 'E8+58' => "\x1E\x8C", # LATIN CAPITAL LETTER X WITH DIAERESIS 'E8+59' => "\x01\x78", # LATIN CAPITAL LETTER Y WITH DIAERESIS 'E8+61' => "\x00\xE4", # LATIN SMALL LETTER A WITH DIAERESIS 'E8+65' => "\x00\xEB", # LATIN SMALL LETTER E WITH DIAERESIS 'E8+68' => "\x1E\x27", # LATIN SMALL LETTER H WITH DIAERESIS 'E8+69' => "\x00\xEF", # LATIN SMALL LETTER I WITH DIAERESIS 'E8+6F' => "\x00\xF6", # LATIN SMALL LETTER O WITH DIAERESIS 'E8+74' => "\x1E\x97", # LATIN SMALL LETTER T WITH DIAERESIS 'E8+75' => "\x00\xFC", # LATIN SMALL LETTER U WITH DIAERESIS 'E8+77' => "\x1E\x85", # LATIN SMALL LETTER W WITH DIAERESIS 'E8+78' => "\x1E\x8D", # LATIN SMALL LETTER X WITH DIAERESIS 'E8+79' => "\x00\xFF", # LATIN SMALL LETTER Y WITH DIAERESIS 'E8+E1+55' => "\x01\xDB", # LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE 'E8+E1+75' => "\x01\xDC", # LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE 'E8+E2+49' => "\x1E\x2E", # LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE 'E8+E2+55' => "\x01\xD7", # LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE 'E8+E2+69' => "\x1E\x2F", # LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE 'E8+E2+75' => "\x01\xD8", # LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE 'E8+E4+4F' => "\x1E\x4E", # LATIN CAPITAL LETTER O WITH TILDE AND DIAERESIS 'E8+E4+6F' => "\x1E\x4F", # LATIN SMALL LETTER O WITH TILDE AND DIAERESIS 'E8+E5+41' => "\x01\xDE", # LATIN CAPITAL LETTER A WITH DIAERESIS AND MACRON 'E8+E5+55' => "\x1E\x7A", # LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON 'E8+E5+61' => "\x01\xDF", # LATIN SMALL LETTER A WITH DIAERESIS AND MACRON 'E8+E5+75' => "\x1E\x7B", # LATIN SMALL LETTER U WITH DIAERESIS AND MACRON 'E8+E9+55' => "\x01\xD9", # LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON 'E8+E9+75' => "\x01\xDA", # LATIN SMALL LETTER U WITH DIAERESIS AND CARON 'E8' => "\x03\x08", # COMBINING DIAERESIS 'E9+41' => "\x01\xCD", # LATIN CAPITAL LETTER A WITH CARON 'E9+43' => "\x01\x0C", # LATIN CAPITAL LETTER C WITH CARON 'E9+44' => "\x01\x0E", # LATIN CAPITAL LETTER D WITH CARON 'E9+45' => "\x01\x1A", # LATIN CAPITAL LETTER E WITH CARON 'E9+47' => "\x01\xE6", # LATIN CAPITAL LETTER G WITH CARON 'E9+49' => "\x01\xCF", # LATIN CAPITAL LETTER I WITH CARON 'E9+4B' => "\x01\xE8", # LATIN CAPITAL LETTER K WITH CARON 'E9+4C' => "\x01\x3D", # LATIN CAPITAL LETTER L WITH CARON 'E9+4E' => "\x01\x47", # LATIN CAPITAL LETTER N WITH CARON 'E9+4F' => "\x01\xD1", # LATIN CAPITAL LETTER O WITH CARON 'E9+52' => "\x01\x58", # LATIN CAPITAL LETTER R WITH CARON 'E9+53' => "\x01\x60", # LATIN CAPITAL LETTER S WITH CARON 'E9+54' => "\x01\x64", # LATIN CAPITAL LETTER T WITH CARON 'E9+55' => "\x01\xD3", # LATIN CAPITAL LETTER U WITH CARON 'E9+5A' => "\x01\x7D", # LATIN CAPITAL LETTER Z WITH CARON 'E9+61' => "\x01\xCE", # LATIN SMALL LETTER A WITH CARON 'E9+63' => "\x01\x0D", # LATIN SMALL LETTER C WITH CARON 'E9+64' => "\x01\x0F", # LATIN SMALL LETTER D WITH CARON 'E9+65' => "\x01\x1B", # LATIN SMALL LETTER E WITH CARON 'E9+67' => "\x01\xE7", # LATIN SMALL LETTER G WITH CARON 'E9+69' => "\x01\xD0", # LATIN SMALL LETTER I WITH CARON 'E9+6A' => "\x01\xF0", # LATIN SMALL LETTER J WITH CARON 'E9+6B' => "\x01\xE9", # LATIN SMALL LETTER K WITH CARON 'E9+6C' => "\x01\x3E", # LATIN SMALL LETTER L WITH CARON 'E9+6E' => "\x01\x48", # LATIN SMALL LETTER N WITH CARON 'E9+6F' => "\x01\xD2", # LATIN SMALL LETTER O WITH CARON 'E9+72' => "\x01\x59", # LATIN SMALL LETTER R WITH CARON 'E9+73' => "\x01\x61", # LATIN SMALL LETTER S WITH CARON 'E9+74' => "\x01\x65", # LATIN SMALL LETTER T WITH CARON 'E9+75' => "\x01\xD4", # LATIN SMALL LETTER U WITH CARON 'E9+7A' => "\x01\x7E", # LATIN SMALL LETTER Z WITH CARON 'E9+E7+53' => "\x1E\x66", # LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE 'E9+E7+73' => "\x1E\x67", # LATIN SMALL LETTER S WITH CARON AND DOT ABOVE 'E9+E8+55' => "\x01\xD9", # LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON 'E9+E8+75' => "\x01\xDA", # LATIN SMALL LETTER U WITH DIAERESIS AND CARON 'E9' => "\x03\x0C", # COMBINING CARON 'EA+41' => "\x00\xC5", # LATIN CAPITAL LETTER A WITH RING ABOVE 'EA+55' => "\x01\x6E", # LATIN CAPITAL LETTER U WITH RING ABOVE 'EA+61' => "\x00\xE5", # LATIN SMALL LETTER A WITH RING ABOVE 'EA+75' => "\x01\x6F", # LATIN SMALL LETTER U WITH RING ABOVE 'EA+77' => "\x1E\x98", # LATIN SMALL LETTER W WITH RING ABOVE 'EA+79' => "\x1E\x99", # LATIN SMALL LETTER Y WITH RING ABOVE 'EA+E2+41' => "\x01\xFA", # LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE 'EA+E2+61' => "\x01\xFB", # LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE 'EA' => "\x03\x0A", # COMBINING RING ABOVE 'EB' => "\xFE\x20", # COMBINING LIGATURE LEFT HALF 'EC' => "\xFE\x21", # COMBINING LIGATURE RIGHT HALF 'ED' => "\x03\x15", # COMBINING COMMA ABOVE RIGHT 'EE+4F' => "\x01\x50", # LATIN CAPITAL LETTER O WITH DOUBLE ACUTE 'EE+55' => "\x01\x70", # LATIN CAPITAL LETTER U WITH DOUBLE ACUTE 'EE+6F' => "\x01\x51", # LATIN SMALL LETTER O WITH DOUBLE ACUTE 'EE+75' => "\x01\x71", # LATIN SMALL LETTER U WITH DOUBLE ACUTE 'EE' => "\x03\x0B", # COMBINING DOUBLE ACUTE ACCENT 'EF' => "\x03\x10", # COMBINING CANDRABINDU 'F0+43' => "\x00\xC7", # LATIN CAPITAL LETTER C WITH CEDILLA 'F0+44' => "\x1E\x10", # LATIN CAPITAL LETTER D WITH CEDILLA 'F0+47' => "\x01\x22", # LATIN CAPITAL LETTER G WITH CEDILLA 'F0+48' => "\x1E\x28", # LATIN CAPITAL LETTER H WITH CEDILLA 'F0+4B' => "\x01\x36", # LATIN CAPITAL LETTER K WITH CEDILLA 'F0+4C' => "\x01\x3B", # LATIN CAPITAL LETTER L WITH CEDILLA 'F0+4E' => "\x01\x45", # LATIN CAPITAL LETTER N WITH CEDILLA 'F0+52' => "\x01\x56", # LATIN CAPITAL LETTER R WITH CEDILLA 'F0+53' => "\x01\x5E", # LATIN CAPITAL LETTER S WITH CEDILLA 'F0+54' => "\x01\x62", # LATIN CAPITAL LETTER T WITH CEDILLA 'F0+63' => "\x00\xE7", # LATIN SMALL LETTER C WITH CEDILLA 'F0+64' => "\x1E\x11", # LATIN SMALL LETTER D WITH CEDILLA 'F0+67' => "\x01\x23", # LATIN SMALL LETTER G WITH CEDILLA 'F0+68' => "\x1E\x29", # LATIN SMALL LETTER H WITH CEDILLA 'F0+6B' => "\x01\x37", # LATIN SMALL LETTER K WITH CEDILLA 'F0+6C' => "\x01\x3C", # LATIN SMALL LETTER L WITH CEDILLA 'F0+6E' => "\x01\x46", # LATIN SMALL LETTER N WITH CEDILLA 'F0+72' => "\x01\x57", # LATIN SMALL LETTER R WITH CEDILLA 'F0+73' => "\x01\x5F", # LATIN SMALL LETTER S WITH CEDILLA 'F0+74' => "\x01\x63", # LATIN SMALL LETTER T WITH CEDILLA 'F0+E2+43' => "\x1E\x08", # LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE 'F0+E2+63' => "\x1E\x09", # LATIN SMALL LETTER C WITH CEDILLA AND ACUTE 'F0+E6+45' => "\x1E\x1C", # LATIN CAPITAL LETTER E WITH CEDILLA AND BREVE 'F0+E6+65' => "\x1E\x1D", # LATIN SMALL LETTER E WITH CEDILLA AND BREVE 'F0' => "\x03\x27", # COMBINING CEDILLA 'F1+41' => "\x01\x04", # LATIN CAPITAL LETTER A WITH OGONEK 'F1+45' => "\x01\x18", # LATIN CAPITAL LETTER E WITH OGONEK 'F1+49' => "\x01\x2E", # LATIN CAPITAL LETTER I WITH OGONEK 'F1+4F' => "\x01\xEA", # LATIN CAPITAL LETTER O WITH OGONEK 'F1+55' => "\x01\x72", # LATIN CAPITAL LETTER U WITH OGONEK 'F1+61' => "\x01\x05", # LATIN SMALL LETTER A WITH OGONEK 'F1+65' => "\x01\x19", # LATIN SMALL LETTER E WITH OGONEK 'F1+69' => "\x01\x2F", # LATIN SMALL LETTER I WITH OGONEK 'F1+6F' => "\x01\xEB", # LATIN SMALL LETTER O WITH OGONEK 'F1+75' => "\x01\x73", # LATIN SMALL LETTER U WITH OGONEK 'F1+E5+4F' => "\x01\xEC", # LATIN CAPITAL LETTER O WITH OGONEK AND MACRON 'F1+E5+6F' => "\x01\xED", # LATIN SMALL LETTER O WITH OGONEK AND MACRON 'F1' => "\x03\x28", # COMBINING OGONEK 'F2+41' => "\x1E\xA0", # LATIN CAPITAL LETTER A WITH DOT BELOW 'F2+42' => "\x1E\x04", # LATIN CAPITAL LETTER B WITH DOT BELOW 'F2+44' => "\x1E\x0C", # LATIN CAPITAL LETTER D WITH DOT BELOW 'F2+45' => "\x1E\xB8", # LATIN CAPITAL LETTER E WITH DOT BELOW 'F2+48' => "\x1E\x24", # LATIN CAPITAL LETTER H WITH DOT BELOW 'F2+49' => "\x1E\xCA", # LATIN CAPITAL LETTER I WITH DOT BELOW 'F2+4B' => "\x1E\x32", # LATIN CAPITAL LETTER K WITH DOT BELOW 'F2+4C' => "\x1E\x36", # LATIN CAPITAL LETTER L WITH DOT BELOW 'F2+4D' => "\x1E\x42", # LATIN CAPITAL LETTER M WITH DOT BELOW 'F2+4E' => "\x1E\x46", # LATIN CAPITAL LETTER N WITH DOT BELOW 'F2+4F' => "\x1E\xCC", # LATIN CAPITAL LETTER O WITH DOT BELOW 'F2+52' => "\x1E\x5A", # LATIN CAPITAL LETTER R WITH DOT BELOW 'F2+53' => "\x1E\x62", # LATIN CAPITAL LETTER S WITH DOT BELOW 'F2+54' => "\x1E\x6C", # LATIN CAPITAL LETTER T WITH DOT BELOW 'F2+55' => "\x1E\xE4", # LATIN CAPITAL LETTER U WITH DOT BELOW 'F2+56' => "\x1E\x7E", # LATIN CAPITAL LETTER V WITH DOT BELOW 'F2+57' => "\x1E\x88", # LATIN CAPITAL LETTER W WITH DOT BELOW 'F2+59' => "\x1E\xF4", # LATIN CAPITAL LETTER Y WITH DOT BELOW 'F2+5A' => "\x1E\x92", # LATIN CAPITAL LETTER Z WITH DOT BELOW 'F2+61' => "\x1E\xA1", # LATIN SMALL LETTER A WITH DOT BELOW 'F2+62' => "\x1E\x05", # LATIN SMALL LETTER B WITH DOT BELOW 'F2+64' => "\x1E\x0D", # LATIN SMALL LETTER D WITH DOT BELOW 'F2+65' => "\x1E\xB9", # LATIN SMALL LETTER E WITH DOT BELOW 'F2+68' => "\x1E\x25", # LATIN SMALL LETTER H WITH DOT BELOW 'F2+69' => "\x1E\xCB", # LATIN SMALL LETTER I WITH DOT BELOW 'F2+6B' => "\x1E\x33", # LATIN SMALL LETTER K WITH DOT BELOW 'F2+6C' => "\x1E\x37", # LATIN SMALL LETTER L WITH DOT BELOW 'F2+6D' => "\x1E\x43", # LATIN SMALL LETTER M WITH DOT BELOW 'F2+6E' => "\x1E\x47", # LATIN SMALL LETTER N WITH DOT BELOW 'F2+6F' => "\x1E\xCD", # LATIN SMALL LETTER O WITH DOT BELOW 'F2+72' => "\x1E\x5B", # LATIN SMALL LETTER R WITH DOT BELOW 'F2+73' => "\x1E\x63", # LATIN SMALL LETTER S WITH DOT BELOW 'F2+74' => "\x1E\x6D", # LATIN SMALL LETTER T WITH DOT BELOW 'F2+75' => "\x1E\xE5", # LATIN SMALL LETTER U WITH DOT BELOW 'F2+76' => "\x1E\x7F", # LATIN SMALL LETTER V WITH DOT BELOW 'F2+77' => "\x1E\x89", # LATIN SMALL LETTER W WITH DOT BELOW 'F2+79' => "\x1E\xF5", # LATIN SMALL LETTER Y WITH DOT BELOW 'F2+7A' => "\x1E\x93", # LATIN SMALL LETTER Z WITH DOT BELOW 'F2+E3+41' => "\x1E\xAC", # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW 'F2+E3+45' => "\x1E\xC6", # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW 'F2+E3+4F' => "\x1E\xD8", # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW 'F2+E3+61' => "\x1E\xAD", # LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW 'F2+E3+65' => "\x1E\xC7", # LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW 'F2+E3+6F' => "\x1E\xD9", # LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW 'F2+E5+4C' => "\x1E\x38", # LATIN CAPITAL LETTER L WITH DOT BELOW AND MACRON 'F2+E5+52' => "\x1E\x5C", # LATIN CAPITAL LETTER R WITH DOT BELOW AND MACRON 'F2+E5+6C' => "\x1E\x39", # LATIN SMALL LETTER L WITH DOT BELOW AND MACRON 'F2+E5+72' => "\x1E\x5D", # LATIN SMALL LETTER R WITH DOT BELOW AND MACRON 'F2+E6+41' => "\x1E\xB6", # LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW 'F2+E6+61' => "\x1E\xB7", # LATIN SMALL LETTER A WITH BREVE AND DOT BELOW 'F2+E7+53' => "\x1E\x68", # LATIN CAPITAL LETTER S WITH DOT BELOW AND DOT ABOVE 'F2+E7+73' => "\x1E\x69", # LATIN SMALL LETTER S WITH DOT BELOW AND DOT ABOVE 'F2' => "\x03\x23", # COMBINING DOT BELOW 'F3+55' => "\x1E\x72", # LATIN CAPITAL LETTER U WITH DIAERESIS BELOW 'F3+75' => "\x1E\x73", # LATIN SMALL LETTER U WITH DIAERESIS BELOW 'F3' => "\x03\x24", # COMBINING DIAERESIS BELOW 'F4+41' => "\x1E\x00", # LATIN CAPITAL LETTER A WITH RING BELOW 'F4+61' => "\x1E\x01", # LATIN SMALL LETTER A WITH RING BELOW 'F4' => "\x03\x25", # COMBINING RING BELOW 'F5' => "\x03\x33", # COMBINING DOUBLE LOW LINE 'F6+42' => "\x1E\x06", # LATIN CAPITAL LETTER B WITH LINE BELOW 'F6+44' => "\x1E\x0E", # LATIN CAPITAL LETTER D WITH LINE BELOW 'F6+4B' => "\x1E\x34", # LATIN CAPITAL LETTER K WITH LINE BELOW 'F6+4C' => "\x1E\x3A", # LATIN CAPITAL LETTER L WITH LINE BELOW 'F6+4E' => "\x1E\x48", # LATIN CAPITAL LETTER N WITH LINE BELOW 'F6+52' => "\x1E\x5E", # LATIN CAPITAL LETTER R WITH LINE BELOW 'F6+54' => "\x1E\x6E", # LATIN CAPITAL LETTER T WITH LINE BELOW 'F6+5A' => "\x1E\x94", # LATIN CAPITAL LETTER Z WITH LINE BELOW 'F6+62' => "\x1E\x07", # LATIN SMALL LETTER B WITH LINE BELOW 'F6+64' => "\x1E\x0F", # LATIN SMALL LETTER D WITH LINE BELOW 'F6+68' => "\x1E\x96", # LATIN SMALL LETTER H WITH LINE BELOW 'F6+6B' => "\x1E\x35", # LATIN SMALL LETTER K WITH LINE BELOW 'F6+6C' => "\x1E\x3B", # LATIN SMALL LETTER L WITH LINE BELOW 'F6+6E' => "\x1E\x49", # LATIN SMALL LETTER N WITH LINE BELOW 'F6+72' => "\x1E\x5F", # LATIN SMALL LETTER R WITH LINE BELOW 'F6+74' => "\x1E\x6F", # LATIN SMALL LETTER T WITH LINE BELOW 'F6+7A' => "\x1E\x95", # LATIN SMALL LETTER Z WITH LINE BELOW 'F6' => "\x03\x32", # COMBINING LOW LINE 'F7' => "\x03\x26", # COMBINING COMMA BELOW 'F8' => "\x03\x21", # COMBINING OGONEK 'F9+48' => "\x1E\x2A", # LATIN CAPITAL LETTER H WITH BREVE BELOW 'F9+68' => "\x1E\x2B", # LATIN SMALL LETTER H WITH BREVE BELOW 'F9' => "\x03\x2E", # COMBINING BREVE BELOW 'FA' => "\xFE\x22", # COMBINING DOUBLE TILDE LEFT HALF 'FB' => "\xFE\x23" # COMBINING DOUBLE TILDE RIGHT HALF }.freeze
- ANSI_TO_UTF16_MAP =
NON_COMBINING.merge(COMBINING)