use utf8;
+{
+ colsize => 0x10,
+
# bmp
- 0x0000 => [0x02, 'X Cc joinr', 'control'],
- 0x0002 => [0x02, 'X L Po joinl joinr', 'comn'],
- 0x0004 => [0x04, 'X L Latin joinl', 'basic latin'],
- 0x0008 => [0x02, 'X Cc joinr', 'control'],
- 0x000A => [0x02, 'X L So joinl joinr', 'comn'],
- 0x000C => [0x04, 'X L Latin joinl', 'latin1'],
- 0x0010 => [0x08, 'X L Latin', 'latin extended-A'],
- 0x0018 => [0x08, 'X L Latin', 'latin extended-B'],
- 0x0020 => [0x05, 'X L Latin', 'latin ext-B'],
- 0x0025 => [0x06, 'X L Latin', 'IPA'],
- 0x002B => [0x05, 'X Sk', 'spacing modifier'],
- 0x0030 => [0x08, 'X Mn', 'diacritics'],
- 0x0038 => [0x08, 'X L Greek', 'greek'],
- 0x0040 => [0x10, 'X L Cyrillic', 'cyrillic'],
- 0x0050 => [0x03, 'X L Cyrillic', 'cyrillic+'],
- 0x0053 => [0x05, 'X L Armenian', 'armenian'],
- 0x0058 => [0x08, 'X L Hebrew', 'hebrew'],
- 0x0060 => [0x10, 'X L Arabic', 'arabic'],
- 0x0070 => [0x05, 'X L Aramaic', 'syriac'],
- 0x0075 => [0x03, 'X L Arabic', 'arabic+'],
- 0x0078 => [0x04, 'X L African', 'thaana'],
- 0x007C => [0x04, 'X L African', 'n\'ko'],
- 0x0080 => [0x04, 'X L Hebrew', 'samaritan'],
- 0x0084 => [0x02, 'X L Aramaic', 'manda'],
- 0x0086 => [0x01, 'X Xr L Aramaic', 'syr'],
- 0x0087 => [0x03],
- 0x008A => [0x06, 'X L Arabic', 'arabic ext-A'],
- 0x0090 => [0x08, 'X L Brahmic', 'devanagari'],
- 0x0098 => [0x08, 'X L Brahmic', 'bengali'],
- 0x00A0 => [0x08, 'X L Brahmic', 'gurmukhi'],
- 0x00A8 => [0x08, 'X L Brahmic', 'gujarati'],
- 0x00B0 => [0x08, 'X L Brahmic', 'oriya'],
- 0x00B8 => [0x08, 'X L Brahmic', 'tamil'],
- 0x00C0 => [0x08, 'X L Brahmic', 'telugu'],
- 0x00C8 => [0x08, 'X L Brahmic', 'kannada'],
- 0x00D0 => [0x08, 'X L Brahmic', 'malayalam'],
- 0x00D8 => [0x08, 'X L Brahmic', 'sinhala'],
- 0x00E0 => [0x08, 'X L Brahmic Khmer', 'thai'],
- 0x00E8 => [0x08, 'X L Brahmic Khmer', 'lao'],
- 0x00F0 => [0x10, 'X L Brahmic', 'tibetan'],
- 0x0100 => [0x0A, 'X L Brahmic', 'myanmar'],
- 0x010A => [0x06, 'X L Aramaic', 'georgian'],
- 0x0110 => [0x10, 'X L Hangul', 'hangeul jamo'],
- 0x0120 => [0x10, 'X L African', 'ethiopic'],
- 0x0130 => [0x08, 'X L African', 'ethiopic'],
- 0x0138 => [0x02, 'X L African', 'eth+'],
- 0x013A => [0x06, 'X L Syllabic', 'cherokee'],
- 0x0140 => [0x28, 'X L Syllabic', 'unified canadian aboriginal syllabics'],
- 0x0168 => [0x02, 'X L Alpha', 'ogham'],
- 0x016A => [0x06, 'X L Alpha', 'runic'],
- 0x0170 => [0x02, 'X L Brahmic', 'tagalog'],
- 0x0172 => [0x02, 'X L Brahmic', 'hanun'],
- 0x0174 => [0x02, 'X L Brahmic', 'buhid'],
- 0x0176 => [0x02, 'X L Brahmic', 'tagb', 'tagbanwa'],
- 0x0178 => [0x08, 'X L Brahmic Khmer', 'khmer'],
- 0x0180 => [0x0B, 'X L Aramaic', 'mongolian'],
- 0x018B => [0x05, 'X L Syllabic', 'canadian+'],
- 0x0190 => [0x05, 'X L Brahmic', 'limbu'],
- 0x0195 => [0x03, 'X L Brahmic', 'tai le'],
- 0x0198 => [0x06, 'X L Brahmic', 'new tai lue'],
- 0x019E => [0x02, 'X L Brahmic Khmer', 'khmer', 'khmer symbols'],
- 0x01A0 => [0x02, 'X L Brahmic', 'lontara'],
- 0x01A2 => [0x09, 'X L Brahmic', 'tai tham'],
- 0x01AB => [0x05, 'X Mn', 'diacritics+'],
- 0x01B0 => [0x08, 'X L Brahmic', 'balinese'],
- 0x01B8 => [0x04, 'X L Brahmic', 'sundanese'],
- 0x01BC => [0x04, 'X L Brahmic', 'batak'],
- 0x01C0 => [0x05, 'X L Brahmic', 'lepcha'],
- 0x01C5 => [0x03, 'X L Alpha', 'ol chiki'],
- 0x01C8 => [0x01, 'X L Cyrillic', 'cyr'],
- 0x01C9 => [0x03, 'X Xr L Aramaic', 'georg+'],
- 0x01CC => [0x01, 'X L Brahmic', 'sn'],
- 0x01CD => [0x03, 'X L Brahmic', 'vedic'],
- 0x01D0 => [0x08, 'X L Latin', 'phonetic'],
- 0x01D8 => [0x04, 'X L Latin', 'phonetic+'],
- 0x01DC => [0x04, 'X Mn', 'diacritics+'],
- 0x01E0 => [0x10, 'X L Latin', 'latin extended additional'],
- 0x01F0 => [0x10, 'X L Greek', 'greek+'],
- 0x0200 => [0x07, 'X Po', 'general punctuation'],
- 0x0207 => [0x03, 'X L Latin', 'suþscript'], # suth now means "sub and/or sup"
- 0x020A => [0x03, 'X Sc', 'currency'],
- 0x020D => [0x03, 'X Mn', 'overlay'],
- 0x0210 => [0x05, 'X So', 'letterlike'],
- 0x0215 => [0x04, 'X Latin', 'number'],
- 0x0219 => [0x07, 'X So', 'arrows'],
- 0x0220 => [0x10, 'X Sm', 'mathematical symbols'],
- 0x0230 => [0x10, 'X So', 'miscellaneous technical'],
- 0x0240 => [0x04, 'X So', 'control'],
- 0x0244 => [0x02, 'X So', 'OCR'],
- 0x0246 => [0x0A, 'X Latin', 'enclosed alphanumerics'],
- 0x0250 => [0x08, 'X So', 'box drawing'],
- 0x0258 => [0x02, 'X So', 'blocks'],
- 0x025A => [0x06, 'X So', 'geometric shapes'],
- 0x0260 => [0x10, 'X So', 'miscellaneous symbols'],
- 0x0270 => [0x0C, 'X So', 'dingbats'],
- 0x027C => [0x03, 'X Sm', 'maths-A'],
- 0x027F => [0x01, 'X So', 'arr', 'supplemental arrows-A'],
- 0x0280 => [0x10, 'X L Alpha', 'braille'],
- 0x0290 => [0x08, 'X So', 'supplemental arrows-B'],
- 0x0298 => [0x08, 'X Sm', 'mathematical symbols-B'],
- 0x02A0 => [0x10, 'X Sm', 'supplemental mathematical operators'],
- 0x02B0 => [0x10, 'X So', 'miscellaneous symbols and arrows'],
- 0x02C0 => [0x06, 'X L Cyrillic', 'glagolitic'],
- 0x02C6 => [0x02, 'X L Latin', 'latin-C'],
- 0x02C8 => [0x08, 'X L Greek', 'coptic'],
- 0x02D0 => [0x03, 'X L Aramaic', 'georgian+'],
- 0x02D3 => [0x05, 'X L Alpha', 'tifinagh'], #TODO: proto-canaanite
- 0x02D8 => [0x06, 'X L African', 'ethiopic+'],
- 0x02DE => [0x02, 'X L Cyrillic', 'cyrl-A'],
- 0x02E0 => [0x08, 'X Po', 'punctuation+'],
- 0x02E8 => [0x08, 'X L Han', 'cjk radicals'],
- 0x02F0 => [0x0E, 'X L Han', 'kangxi radicals'],
- 0x02FE => [0x01],
- 0x02FF => [0x01, 'X So Han', 'idc'],
- 0x0300 => [0x04, 'X Po Han', 'cjk misc'],
- 0x0304 => [0x06, 'X L Hiragana', 'hiragana'],
- 0x030A => [0x06, 'X L Katakana', 'katakana'],
- 0x0310 => [0x03, 'X L Bopomofo', 'bopomofo'],
- 0x0313 => [0x06, 'X L Katakana', 'hangeul compat'],
- 0x0319 => [0x01, 'X L Han', 'kbn', 'kanbun'],
- 0x031A => [0x02, 'X L Bopomofo', 'bpmf', 'bopomofo extended'],
- 0x031C => [0x03, 'X L Han', 'strokes', 'CJK strokes'],
- 0x031F => [0x01, 'X L Katakana', 'k+', 'katakana phonetic extensions'],
- 0x0320 => [0x10, 'X L Han', 'enclosed cjk characters'],
- 0x0330 => [0x10, 'X Xd L Han', 'cjk compatibility'],
- 0x0340 => [0x19C,'X L Han', 'cjk unified ideographs extension A'],
- 0x04DC => [0x04, 'X So', 'hexagrams'],
- 0x04E0 => [0x520,'X L Han', 'cjk unified ideographs'],
- 0x0A00 => [0x49, 'X L Syllabic', 'yi'],
- 0x0A49 => [0x04, 'X L Syllabic', 'yi radicals'],
- 0x0A4D => [0x03, 'X L Latin', 'lisu'],
- 0x0A50 => [0x14, 'X L Syllabic', 'vai'],
- 0x0A64 => [0x06, 'X L Cyrillic', 'cyrillic extended-B'],
- 0x0A6A => [0x06, 'X L Syllabic', 'bamum'],
- 0x0A70 => [0x02, 'X L Mn', 'tones'],
- 0x0A72 => [0x0E, 'X L Latin', 'latin extended-D'],
- 0x0A80 => [0x03, 'X L Brahmic', 'sylheti'],
- 0x0A83 => [0x01, 'X No', 'in'],
- 0x0A84 => [0x04, 'X L Brahmic', 'phags-pa'],
- 0x0A88 => [0x06, 'X L Brahmic', 'saurashtra'],
- 0x0A8E => [0x02, 'X L Brahmic', 'deva+'],
- 0x0A90 => [0x03, 'X L Brahmic', 'kayah li'],
- 0x0A93 => [0x03, 'X L Brahmic', 'rejang'],
- 0x0A96 => [0x02, 'X L Hangul', 'jamo-A'],
- 0x0A98 => [0x06, 'X L Brahmic', 'javanese'],
- 0x0A9E => [0x02, 'X L Brahmic', 'mm-B', 'myanmar extended-B'],
- 0x0AA0 => [0x06, 'X L Brahmic', 'cham'],
- 0x0AA6 => [0x02, 'X L Brahmic', 'mm-A', 'myanmar extended-A'],
- 0x0AA8 => [0x06, 'X L Brahmic Khmer', 'tai viet'],
- 0x0AAE => [0x02, 'X L Brahmic', 'mtei+', 'meetei mayek extended'],
- 0x0AB0 => [0x03, 'X L African', 'ethiopic-A'],
- 0x0AB3 => [0x04, 'X L Latin', 'latin ext-E'],
- 0x0AB7 => [0x05, 'X L Syllabic', 'cherokee+'],
- 0x0ABC => [0x04, 'X L Brahmic', 'meithei', 'meetai mayek'],
- 0x0AC0 => [0x2BB,'X L Hangul', 'hangeul syllables'],
- 0x0D7B => [0x05, 'X L Hangul', 'haungeul jamo-B'],
- 0x0D80 => [0x40, 'X Cs', 'high surrogates'],
- 0x0DC0 => [0x40, 'X Cs', 'low surrogates'],
- 0x0E00 => [0x190,'X Co', 'private use'],
- 0x0F90 => [0x20, 'X L Han', 'cjk compatibility ideographs'],
- 0x0FB0 => [0x05, 'X Xd L Alpha', 'presentation'],
- 0x0FB5 => [0x28, 'X Xd L Arabic', 'arabic presentation forms A'],
- 0x0FDD => [0x02, 'Xi', '?'],
- 0x0FDF => [0x01, 'X Xd L Arabic joinu', ''], # continue after brief intermission
- 0x0FE0 => [0x01, 'X Cc', 'var'],
- 0x0FE1 => [0x01, 'X L Pd', 'ver'],
- 0x0FE2 => [0x01, 'X L Mn', '½'],
- 0x0FE3 => [0x02, 'X Xd Pd Han', 'comp'],
- 0x0FE5 => [0x02, 'X Xd L Latin', 'small'],
- 0x0FE7 => [0x09, 'X Xd L Arabic', 'arabic presentation B'],
- 0x0FF0 => [0x0F, 'X L Latin', 'halfwidth & fullwidth forms'],
- 0x0FFF => [0x01, 'X Cc', 'sp'],
+ 0x00000 => [0x020, 'X Cc joinr', 'control'],
+ 0x00020 => [0x020, 'X L Po joinl joinr', 'comn', 'common ascii signs'],
+ 0x00040 => [0x040, 'X L Latin joinl', 'basic latin'],
+ 0x00080 => [0x020, 'X Cc joinr', 'control'],
+ 0x000A0 => [0x020, 'X L So joinl joinr', 'comn', 'common latin1 signs'],
+ 0x000C0 => [0x040, 'X L Latin joinl', 'latin1'],
+ 0x00100 => [0x080, 'X L Latin', 'latin extended-A'],
+ 0x00180 => [0x0D0, 'X L Latin', 'latin extended-B'],
+ 0x00250 => [0x060, 'X L Latin', 'IPA'],
+ 0x002B0 => [0x050, 'X Sk', 'spacing modifier'],
+ 0x00300 => [0x080, 'X Mn', 'diacritics'],
+ 0x00380 => [0x080, 'X L Greek', 'greek'],
+ 0x00400 => [0x100, 'X L Cyrillic', 'cyrillic'],
+ 0x00500 => [0x030, 'X L Cyrillic', 'cyrillic+'],
+ 0x00530 => [0x050, 'X L Armenian', 'armenian'],
+ 0x00580 => [0x080, 'X L Hebrew', 'hebrew'],
+ 0x00600 => [0x100, 'X L Arabic', 'arabic'],
+ 0x00700 => [0x050, 'X L Aramaic', 'syriac'],
+ 0x00750 => [0x030, 'X L Arabic', 'arabic+'],
+ 0x00780 => [0x040, 'X L African', 'thaana'],
+ 0x007C0 => [0x040, 'X L African', q(n'ko)],
+ 0x00800 => [0x040, 'X L Hebrew', 'samaritan'],
+ 0x00840 => [0x020, 'X L Aramaic', 'manda', 'mandaic'],
+ 0x00860 => [0x010, 'X L Aramaic', 'syr', 'syriac malayalam'],
+ 0x00870 => [0x030],
+ 0x008A0 => [0x060, 'X L Arabic', 'arabic ext-A'],
+ 0x00900 => [0x080, 'X L Brahmic', 'devanāgarī'],
+ 0x00980 => [0x080, 'X L Brahmic', 'bengali'],
+ 0x00A00 => [0x080, 'X L Brahmic', 'gurmukhi'],
+ 0x00A80 => [0x080, 'X L Brahmic', 'gujarati'],
+ 0x00B00 => [0x080, 'X L Brahmic', 'oriya'],
+ 0x00B80 => [0x080, 'X L Brahmic', 'tamil'],
+ 0x00C00 => [0x080, 'X L Brahmic', 'telugu'],
+ 0x00C80 => [0x080, 'X L Brahmic', 'kannada'],
+ 0x00D00 => [0x080, 'X L Brahmic', 'malayālam'],
+ 0x00D80 => [0x080, 'X L Brahmic', 'sinhala'],
+ 0x00E00 => [0x080, 'X L Brahmic Khmer', 'thai'],
+ 0x00E80 => [0x080, 'X L Brahmic Khmer', 'lao'],
+ 0x00F00 => [0x100, 'X L Brahmic', 'tibetan'],
+ 0x01000 => [0x0A0, 'X L Brahmic', 'myanmar'],
+ 0x010A0 => [0x060, 'X L Aramaic', 'georgian'],
+ 0x01100 => [0x100, 'X L Hangul', 'hangeul jamo'],
+ 0x01200 => [0x180, 'X L African', 'ethiopic'],
+ 0x01380 => [0x020, 'X L African', 'eth+'],
+ 0x013A0 => [0x060, 'X L Syllabic', 'cherokee'],
+ 0x01400 => [0x280, 'X L Syllabic', 'unified canadian aboriginal syllabics'],
+ 0x01680 => [0x020, 'X L Alpha', 'ogham'],
+ 0x016A0 => [0x060, 'X L Alpha', 'runic'],
+ 0x01700 => [0x020, 'X L Brahmic', 'tagalog'],
+ 0x01720 => [0x020, 'X L Brahmic', 'hanun', 'hanunóo'],
+ 0x01740 => [0x020, 'X L Brahmic', 'buhid'],
+ 0x01760 => [0x020, 'X L Brahmic', 'tagb', 'tagbanwa'],
+ 0x01780 => [0x080, 'X L Brahmic Khmer', 'khmer'],
+ 0x01800 => [0x0B0, 'X L Aramaic', 'mongolian'],
+ 0x018B0 => [0x050, 'X L Syllabic', 'canadian+'],
+ 0x01900 => [0x050, 'X L Brahmic', 'limbu'],
+ 0x01950 => [0x030, 'X L Brahmic', 'tai le'],
+ 0x01980 => [0x060, 'X L Brahmic', 'new tai lü'],
+ 0x019E0 => [0x020, 'X L Brahmic Khmer', 'khmer', 'khmer symbols'],
+ 0x01A00 => [0x020, 'X L Brahmic', 'lontara'],
+ 0x01A20 => [0x090, 'X L Brahmic', 'tai tham'],
+ 0x01AB0 => [0x050, 'X Mn', 'diacritics+', 'combining diacritical marks extended'],
+ 0x01B00 => [0x080, 'X L Brahmic', 'balinese'],
+ 0x01B80 => [0x040, 'X L Brahmic', 'sundanese'],
+ 0x01BC0 => [0x040, 'X L Brahmic', 'batak'],
+ 0x01C00 => [0x050, 'X L Brahmic', 'lepcha'],
+ 0x01C50 => [0x030, 'X L Alpha', 'ol chiki'],
+ 0x01C80 => [0x010, 'X L Cyrillic', 'cyr', 'cyrillic extended-C'],
+ 0x01C90 => [0x030, 'X Xr L Aramaic', 'georg+', 'georgian extended'],
+ 0x01CC0 => [0x010, 'X L Brahmic', 'sn', 'sundanese supplement'],
+ 0x01CD0 => [0x030, 'X L Brahmic', 'vedic', 'vedic extensions'],
+ 0x01D00 => [0x080, 'X L Latin', 'phonetic', 'phonetic extensions'],
+ 0x01D80 => [0x040, 'X L Latin', 'phonetic+', 'phonetic extensions supplement'],
+ 0x01DC0 => [0x040, 'X Mn', 'diacritics+', 'combining diacritical marks supplement'],
+ 0x01E00 => [0x100, 'X L Latin', 'latin extended additional'],
+ 0x01F00 => [0x100, 'X L Greek', 'greek+', 'greek extended'],
+ 0x02000 => [0x070, 'X Po', 'general punctuation'],
+ 0x02070 => [0x030, 'X L Latin', 'suþscript', 'superscripts and subscripts'], # suth now means "sub and/or sup"
+ 0x020A0 => [0x030, 'X Sc', 'currency'],
+ 0x020D0 => [0x030, 'X Mn', 'overlay'],
+ 0x02100 => [0x050, 'X So', 'letterlike'],
+ 0x02150 => [0x040, 'X Latin', 'number', 'number forms'],
+ 0x02190 => [0x070, 'X So', 'arrows'],
+ 0x02200 => [0x100, 'X Sm', 'mathematical symbols'],
+ 0x02300 => [0x100, 'X So', 'miscellaneous technical'],
+ 0x02400 => [0x040, 'X So', 'control', 'control pictures'],
+ 0x02440 => [0x020, 'X So', 'OCR'],
+ 0x02460 => [0x0A0, 'X Latin', 'enclosed alphanumerics'],
+ 0x02500 => [0x080, 'X So', 'box drawing'],
+ 0x02580 => [0x020, 'X So', 'blocks'],
+ 0x025A0 => [0x060, 'X So', 'geometric shapes'],
+ 0x02600 => [0x100, 'X So', 'miscellaneous symbols'],
+ 0x02700 => [0x0C0, 'X So', 'dingbats'],
+ 0x027C0 => [0x030, 'X Sm', 'maths-A', 'miscellaneous mathematical symbols-A'],
+ 0x027F0 => [0x010, 'X So', 'arr', 'supplemental arrows-A'],
+ 0x02800 => [0x100, 'X L Alpha', 'braille'],
+ 0x02900 => [0x080, 'X So', 'supplemental arrows-B'],
+ 0x02980 => [0x080, 'X Sm', 'mathematical symbols-B'],
+ 0x02A00 => [0x100, 'X Sm', 'supplemental mathematical operators'],
+ 0x02B00 => [0x100, 'X So', 'miscellaneous symbols and arrows'],
+ 0x02C00 => [0x060, 'X L Cyrillic', 'glagolitic'],
+ 0x02C60 => [0x020, 'X L Latin', 'latin-C'],
+ 0x02C80 => [0x080, 'X L Greek', 'coptic'],
+ 0x02D00 => [0x030, 'X L Aramaic', 'georgian+', 'georgian supplement'],
+ 0x02D30 => [0x050, 'X L Alpha', 'tifinagh'], #TODO: proto-canaanite
+ 0x02D80 => [0x060, 'X L African', 'ethiopic+', 'ethiopic extended'],
+ 0x02DE0 => [0x020, 'X L Cyrillic', 'cyrl-A', 'cyrillic extended-A'],
+ 0x02E00 => [0x080, 'X Po', 'punctuation+', 'supplemental punctuation'],
+ 0x02E80 => [0x080, 'X L Han', 'cjk radicals'],
+ 0x02F00 => [0x0E0, 'X L Han', 'kangxi radicals'],
+ 0x02FE0 => [0x010],
+ 0x02FF0 => [0x010, 'X So Han', 'idc', 'ideographic description characters'],
+ 0x03000 => [0x040, 'X Po Han', 'cjk misc', 'CJK symbols and punctuation'],
+ 0x03040 => [0x060, 'X L Hiragana', 'hiragana'],
+ 0x030A0 => [0x060, 'X L Katakana', 'katakana'],
+ 0x03100 => [0x030, 'X L Bopomofo', 'bopomofo'],
+ 0x03130 => [0x060, 'X L Katakana', 'hangeul compat'],
+ 0x03190 => [0x010, 'X L Han', 'kbn', 'kanbun'],
+ 0x031A0 => [0x020, 'X L Bopomofo', 'bpmf', 'bopomofo extended'],
+ 0x031C0 => [0x030, 'X L Han', 'strokes', 'CJK strokes'],
+ 0x031F0 => [0x010, 'X L Katakana', 'k+', 'katakana phonetic extensions'],
+ 0x03200 => [0x100, 'X L Han', 'enclosed cjk characters'],
+ 0x03300 => [0x100, 'X Xd L Han', 'cjk compatibility'],
+ 0x03400 => [0x19C0,'X L Han', 'cjk unified ideographs extension A'],
+ 0x04DC0 => [0x040, 'X So', 'hexagrams'],
+ 0x04E00 => [0x5200,'X L Han', 'cjk unified ideographs'],
+ 0x0A000 => [0x490, 'X L Syllabic', 'yi'],
+ 0x0A490 => [0x040, 'X L Syllabic', 'yi radicals'],
+ 0x0A4D0 => [0x030, 'X L Latin', 'lisu'],
+ 0x0A500 => [0x140, 'X L Syllabic', 'vai'],
+ 0x0A640 => [0x060, 'X L Cyrillic', 'cyrillic ext-B'],
+ 0x0A6A0 => [0x060, 'X L Syllabic', 'bamum'],
+ 0x0A700 => [0x020, 'X L Mn', 'tones', 'modifier tone letters'],
+ 0x0A720 => [0x0E0, 'X L Latin', 'latin extended-D'],
+ 0x0A800 => [0x030, 'X L Brahmic', 'sylheti', 'syloti nagri'],
+ 0x0A830 => [0x010, 'X No', 'in', 'common indic number forms'],
+ 0x0A840 => [0x040, 'X L Brahmic', 'phags-pa'],
+ 0x0A880 => [0x060, 'X L Brahmic', 'saurashtra'],
+ 0x0A8E0 => [0x020, 'X L Brahmic', 'deva+'],
+ 0x0A900 => [0x030, 'X L Brahmic', 'kayah li'],
+ 0x0A930 => [0x030, 'X L Brahmic', 'rejang'],
+ 0x0A960 => [0x020, 'X L Hangul', 'jamo-A', 'hangul jamo extended-A'],
+ 0x0A980 => [0x060, 'X L Brahmic', 'javanese'],
+ 0x0A9E0 => [0x020, 'X L Brahmic', 'mm-B', 'myanmar extended-B'],
+ 0x0AA00 => [0x060, 'X L Brahmic', 'cham'],
+ 0x0AA60 => [0x020, 'X L Brahmic', 'mm-A', 'myanmar extended-A'],
+ 0x0AA80 => [0x060, 'X L Brahmic Khmer', 'tai viet'],
+ 0x0AAE0 => [0x020, 'X L Brahmic', 'mtei+', 'meetei mayek extended'],
+ 0x0AB00 => [0x030, 'X L African', 'ethiopic-A'],
+ 0x0AB30 => [0x040, 'X L Latin', 'latin ext-E'],
+ 0x0AB70 => [0x050, 'X L Syllabic', 'cherokee+'],
+ 0x0ABC0 => [0x040, 'X L Brahmic', 'meithei', 'meetai mayek'],
+ 0x0AC00 => [0x2BB0,'X L Hangul', 'hangeul syllables'],
+ 0x0D7B0 => [0x050, 'X L Hangul', 'haungeul jamo-B'],
+ 0x0D800 => [0x400, 'X Cs', 'high surrogates'],
+ 0x0DC00 => [0x400, 'X Cs', 'low surrogates'],
+ 0x0E000 => [0x1900,'X Co', 'private use'],
+ 0x0F900 => [0x200, 'X L Han', 'cjk compatibility ideographs'],
+ 0x0FB00 => [0x050, 'X Xd L Alpha', 'presentation'],
+ 0x0FB50 => [0x280, 'X Xd L Arabic', 'arabic presentation forms A'],
+ 0x0FDD0 => [0x020, 'Xi', '?', 'non-characters'],
+ 0x0FDF0 => [0x010, 'X Xd L Arabic joinu', '', 'arabic presentation forms A'], # continue after brief intermission
+ 0x0FE00 => [0x010, 'X Cc', 'vs', 'variation selectors'],
+ 0x0FE10 => [0x010, 'X L Pd', 'ver', 'vertical forms'],
+ 0x0FE20 => [0x010, 'X L Mn', '½', 'combining half marks'],
+ 0x0FE30 => [0x020, 'X Xd Pd Han', 'comp', 'cjk compatibility forms'],
+ 0x0FE50 => [0x020, 'X Xd L Latin', 'small', 'small form variants'],
+ 0x0FE70 => [0x090, 'X Xd L Arabic', 'arabic presentation B'],
+ 0x0FF00 => [0x0F0, 'X L Latin', 'halfwidth & fullwidth forms'],
+ 0x0FFF0 => [0x010, 'X Cc', 'sp', 'specials'],
# smp
- 0x1000 => [0x08, 'X L Syllabic', 'linear B syllabary'],
- 0x1008 => [0x08, 'X L Syllabic', 'linear B ideograms'],
- 0x1010 => [0x04, 'X No', 'aegean num'],
- 0x1014 => [0x05, 'X No', 'greek numbers'],
- 0x1019 => [0x04, 'X So', 'ancient sym'],
- 0x101D => [0x03, 'X L Syllabic', 'phaistos'],
- 0x1020 => [0x04, 'X Xr L Greek', 'iberian'],
- 0x1024 => [0x04],
- 0x1028 => [0x02, 'X L Greek', 'lycian'],
- 0x102A => [0x04, 'X L Greek', 'carian'],
- 0x102E => [0x02, 'X L No', 'coptic'],
- 0x1030 => [0x03, 'X L Greek', 'italic'],
- 0x1033 => [0x02, 'X L Greek', 'gothic'],
- 0x1035 => [0x03, 'X L Cyrillic', 'permic'],
- 0x1038 => [0x02, 'X L Alpha', 'ugarit'],
- 0x103A => [0x04, 'X L Alpha', 'old persian'],
- 0x103E => [0x02, 'X Xr L Alpha', 'sh.qs'],
- 0x1040 => [0x05, 'X L Alpha', 'deseret'],
- 0x1045 => [0x03, 'X L Alpha', 'shavian'],
- 0x1048 => [0x03, 'X L Alpha', 'osmanya'],
- 0x104B => [0x05, 'X L Alpha', 'osage'],
- 0x1050 => [0x03, 'X L Alpha', 'elbasan'],
- 0x1053 => [0x04, 'X L Alpha', 'c albanian'],
- 0x1057 => [0x05, 'X Xr L Alpha', 'vithkuqi'],
- 0x105C => [0x04, 'X Xr L Alpha', 'todhri'],
- 0x1060 => [0x18, 'X L Syllabic', 'linear A'],
- 0x1078 => [0x08, 'X Xr L Syllabic', 'cypro-minoan'],
- 0x1080 => [0x04, 'X L Syllabic', 'cypriot'],
- 0x1084 => [0x02, 'X L Aramaic', 'aram'],
- 0x1086 => [0x02, 'X L Aramaic', 'palmr'],
- 0x1088 => [0x03, 'X L Aramaic', 'nabataean'],
- 0x108A => [0x01],
- 0x108C => [0x02, 'X Xr L Alpha', 'numid'],
- 0x108E => [0x02, 'X L Aramaic', 'hatr'],
- 0x1090 => [0x02, 'X L Aramaic', 'phoen'],
- 0x1092 => [0x02, 'X L Greek', 'lydian'],
- 0x1094 => [0x04],
- 0x1098 => [0x02, 'X L Alpha', 'mero h', 'meroitic hieroglyphs'],
- 0x109A => [0x06, 'X L Alpha', 'meroitic cursive'],
- 0x10A0 => [0x06, 'X L Syllabic', 'kharoshthi'],
- 0x10A6 => [0x02, 'X L Aramaic', 's arab'],
- 0x10A8 => [0x02, 'X L Aramaic', 'n arab'],
- 0x10AA => [0x02, 'X Xr L Brahmic', 'balti'],
- 0x10AC => [0x04, 'X L Aramaic', 'manichaean'],
- 0x10B0 => [0x04, 'X L Aramaic', 'avestan'],
- 0x10B4 => [0x02, 'X L Aramaic', 'parth'],
- 0x10B6 => [0x02, 'X L Aramaic', 'pahlav', 'inscriptional pahlavi'],
- 0x10B8 => [0x03, 'X L Aramaic', 'psalt pahl', 'psalter pahlavi'],
- 0x10BB => [0x03, 'X Xr L Aramaic', 'book pahl', 'book pahlavi'],
- 0x10BE => [0x02, 'X Xr L Alpha', 'babur'],
- 0x10C0 => [0x05, 'X L Aramaic', 'old turkic'],
- 0x10C5 => [0x03],
- 0x10C8 => [0x08, 'X L Aramaic', 'old hungarian'],
- 0x10D0 => [0x04, 'X Xr L Alpha', 'rohingya'],
- 0x10D4 => [0x04, 'X Xr L Alpha', 'garay'],
- 0x10D8 => [0x08, 'X Xr L Syllabic', 'byblos'],
- 0x10E0 => [0x06],
- 0x10E6 => [0x02, 'X No', 'rumi'],
- 0x10E8 => [0x06],
- 0x10EE => [0x02, 'X Xr L Aramaic', 'elym'],
- 0x10F0 => [0x03, 'X Xr L Aramaic', 'old sog'],
- 0x10F3 => [0x04, 'X Xr L Aramaic', 'sogdian'],
- 0x10F7 => [0x01],
- 0x10F8 => [0x08, 'X Xr L Aramaic', 'uyghur'],
- 0x1100 => [0x08, 'X L Brahmic', 'brahmi'],
- 0x1108 => [0x05, 'X L Brahmic', 'kaithi'],
- 0x110D => [0x03, 'X L Brahmic', 'sora som'],
- 0x1110 => [0x05, 'X L Brahmic', 'chakma'],
- 0x1115 => [0x03, 'X L Brahmic', 'mahajani'],
- 0x1118 => [0x06, 'X L Brahmic', 'sharada'],
- 0x111E => [0x02, 'X No Brahmic', 'sinhal'],
- 0x1120 => [0x05, 'X L Brahmic', 'khojki'],
- 0x1125 => [0x03, 'X Xr L Brahmic', 'landa'],
- 0x1128 => [0x03, 'X L Brahmic', 'multani'],
- 0x112B => [0x05, 'X L Brahmic', 'khudabadi'],
- 0x1130 => [0x08, 'X L Brahmic', 'grantha'],
- 0x1138 => [0x06, 'X Xr L Brahmic', 'tulu'],
- 0x113E => [0x02, 'X Xr L Brahmic', 'shar+', 'sharada extension'],
- 0x1140 => [0x08, 'X L Brahmic', 'newar'],
- 0x1148 => [0x06, 'X L Brahmic', 'tirhuta'],
- 0x114E => [0x02, 'X Xr L Alpha', 'tani'],
- 0x1150 => [0x08, 'X Xr L Brahmic', 'ranjana'],
- 0x1158 => [0x08, 'X L Brahmic', 'siddham'],
- 0x1160 => [0x06, 'X L Brahmic', 'modi'],
- 0x1166 => [0x02, 'X L Aramaic', 'mong', 'mongolian extension'],
- 0x1168 => [0x05, 'X L Brahmic', 'takri'],
- 0x116D => [0x03, 'X Xr L Brahmic', 'jenticha'],
- 0x1170 => [0x04, 'X Xr L Brahmic', 'ahom'],
- 0x1174 => [0x06, 'X Xr L Alpha', 'zou'],
- 0x117A => [0x06, 'X Xr L Brahmic', 'pyu'],
- 0x1180 => [0x05, 'X Xr L Brahmic', 'dogra'],
- 0x1185 => [0x04, 'X Xr L Brahmic', 'sirmauri'],
- 0x1189 => [0x01],
- 0x118A => [0x06, 'X L Syllabic', 'warang citi'],
- 0x1190 => [0x04, 'X Xr L Brahmic', 'tolong siki'],
- 0x1194 => [0x04, 'X Xr L Brahmic', 'tikamuli'],
- 0x1198 => [0x04, 'X Xr L Brahmic', 'khambu rai'],
- 0x119C => [0x04, 'X Xr L Brahmic', 'kirat rai'],
- 0x11A0 => [0x05, 'X Xr L Brahmic', 'zanabazar square'],
- 0x11A5 => [0x06, 'X Xr L Brahmic', 'soyombo'],
- 0x11AB => [0x01],
- 0x11AC => [0x04, 'X L Alpha', 'pau cin hau'],
- 0x11B0 => [0x05, 'X Xr L Brahmic', 'dhives akuru'],
- 0x11B5 => [0x04, 'X Xr L Brahmic', 'leke'],
- 0x11B9 => [0x06, 'X Xr L Brahmic', 'nandinagari'],
- 0x11BF => [0x01],
- 0x11C0 => [0x07, 'X L Brahmic', 'bhaiksuki'],
- 0x11C7 => [0x05, 'X L Brahmic', 'marchen'],
- 0x11CC => [0x04, 'X Xr L Brahmic', 'balti B'],
- 0x11D0 => [0x06, 'X Xr L Brahmic', 'masaram gondi'],
- 0x11D6 => [0x05, 'X Xr L Brahmic', 'gunjala gondi'],
- 0x11DB => [0x05, 'X Xr L Brahmic', 'kawi'],
- 0x11E0 => [0x07, 'X Xr L Brahmic', 'tocharian'],
- 0x11E7 => [0x06, 'X Xr L Brahmic', 'khotanese'],
- 0x11ED => [0x01],
- 0x11EE => [0x02, 'X Xr L Brahmic', 'makas', 'makasar'],
- 0x11F0 => [0x04, 'X Xr L Brahmic', 'vatteluttu'],
- 0x11F4 => [0x02],
- 0x11F6 => [0x06, 'X Xr L Brahmic', 'chola'],
- 0x11FC => [0x04, 'X Xr L Brahmic', 'tamil+'],
- 0x1200 => [0x40, 'X L Syllabic', 'cuneiform'],
- 0x1240 => [0x08, 'X No', 'cuneiform numbers'],
- 0x1248 => [0x08, 'X L Syllabic', 'early dynastic cuneiform'], #TODO: join bottom but title at top
- 0x1250 => [0x05, 'X L Syllabic', 'e. dyn. cuneiform'],
- 0x1255 => [0x0B],
- 0x1260 => [0x80, 'X Xr L Syllabic', 'proto-cuneiform'],
- 0x12E0 => [0x19, 'X Xr L Syllabic', 'indus'],
- 0x12F9 => [0x07],
- 0x1300 => [0x43, 'X L Syllabic', 'egyptian hieroglyphs'],
- 0x1343 => [0x01, 'X Xr L Syllabic', 'eg.c', 'Egyptian control characters'],
- 0x1344 => [0xFC, 'X Xr L Syllabic', 'egyptian hieroglyphs extended-A'],
- 0x1440 => [0x28, 'X L Syllabic', 'anatolian hieroglyphs'],
- 0x1468 => [0x98, 'X Xr L Syllabic', 'egyptian hieroglyphs extended-B'],
- 0x1500 => [0x04, 'X Xr L Brahmic', 'lampung'],
- 0x1504 => [0x03, 'X Xr L Brahmic', 'kerinci'],
- 0x1507 => [0x01],
- 0x1508 => [0x48, 'X Xr L Syllabic', 'mandombe'],
- 0x1550 => [0x50, 'X Xr L Syllabic', 'maya hieroglyphs'],
- 0x15A0 => [0x20],
- 0x15C0 => [0x40, 'X Xr L Syllabic', 'aztec pictograms'],
- 0x1600 => [0x08, 'X Xr L Alpha', 'cirth'],
- 0x1608 => [0x08, 'X Xr L Alpha', 'tengwar'],
- 0x1610 => [0x04, 'X Xr L Brahmic', 'khema'],
- 0x1614 => [0x04, 'X Xr L Brahmic', 'khe prih'],
- 0x1618 => [0x02],
- 0x161A => [0x06, 'X Xr L Alpha', 'moon'],
- 0x1620 => [0x50, 'X Xr L Syllabic', 'blissymbols'],
- 0x1670 => [0x0B, 'X Xr L Syllabic', 'bagam'],
- 0x167B => [0x05, 'X Xr L Syllabic', 'iban'],
- 0x1680 => [0x24, 'X L Syllabic', 'bamum supplement'],
- 0x16A4 => [0x03, 'X L Alpha', 'mro'],
- 0x16A7 => [0x06, 'X Xr L Alpha', 'mossang tangsa'],
- 0x16AD => [0x03, 'X L Alpha', 'bassa vah'],
- 0x16B0 => [0x09, 'X L Syllabic', 'pahawh hmong'],
- 0x16B9 => [0x07, 'X Xr L Syllabic', 'woleai'],
- 0x16C0 => [0x08, 'X Xr L Syllabic', 'kpelle'],
- 0x16C8 => [0x05, 'X Xr L Syllabic', 'afaka'],
- 0x16CD => [0x03, 'X Xr L Syllabic', 'lk tangsa', 'Latsam Khimhun Tangsa'],
- 0x16D0 => [0x0D],
- 0x16DD => [0x03, 'X Xr L Brahmic', 'kulitan'],
- 0x16E0 => [0x04, 'X Xr L Alpha', 'mwangwego'],
- 0x16E4 => [0x06, 'X Xr L Alpha', 'medefaidrin'],
- 0x16EA => [0x06, 'X Xr L Brahmic', 'lontara+', 'buginese'],
- 0x16F0 => [0x0A, 'X L Syllabic', 'miao'],
- 0x16FA => [0x04, 'X Xr L Brahmic', 'lontara b-b'],
- 0x16FE => [0x02, 'X So', 'ideo', 'Ideographic Symbols and Punctuation'],
- 0x1700 => [0x180,'X L Syllabic', 'tangut ideographs'],
- 0x1880 => [0x30, 'X L Syllabic', 'tangut components'],
- 0x18B0 => [0x20, 'X Xr L Han', 'khitan small'],
- 0x18D0 => [0x90, 'X Xr L Han', 'khitan ideographs'],
- 0x1960 => [0x56, 'X Xr L Han', 'jurchen'],
- 0x19B6 => [0x04, 'X Xr L Han', 'jurchen rad'],
- 0x19BA => [0x06],
- 0x19C0 => [0x20],
- 0x19E0 => [0x50, 'X Xr L Syllabic', 'pau cin hau syllabary'],
- 0x1A30 => [0x50, 'X Xr L Syllabic', 'eskaya'],
- 0x1A80 => [0x2B, 'X Xr L Syllabic', 'naxi geba'],
- 0x1AAB => [0x01],
- 0x1AAC => [0x54, 'X Xr L Syllabic', 'naxi dongba'],
- 0x1B00 => [0x10, 'X L Hiragana', 'kana supplement'],
- 0x1B10 => [0x03, 'X Xr L Hiragana', 'kana+A'],
- 0x1B13 => [0x04, 'X Xr L Syllabic', 'kaidā'],
- 0x1B17 => [0x19, 'X Xr L Han', 'nushu'],
- 0x1B30 => [0x20, 'X Xr L Han', 'shuishu'],
- 0x1B50 => [0x70, 'X Xr L Syllabic', 'proto-elamite'],
- 0x1BC0 => [0x0A, 'X L Alpha', 'duployan'],
- 0x1BCA => [0x01, 'X L Cc', 'sh', 'Shorthand Formatting'],
- 0x1BCB => [0x05, 'X Xr L Alpha', 'pitman'],
- 0x1BD0 => [0x30, 'X Xr L Alpha', 'shorthands?'],
- 0x1C00 => [0xB0, 'X Xr L Alpha', 'micmac hieroglyphs'],
- 0x1CB0 => [0x30, 'X Xr L Syllabic', 'rongorongo'],
- 0x1CE0 => [0x20],
- 0x1D00 => [0x10, 'X So', 'byzantine musical'],
- 0x1D10 => [0x10, 'X So', 'musical symbols'],
- 0x1D20 => [0x05, 'X So', 'anc greek music'],
- 0x1D25 => [0x09],
- 0x1D2E => [0x02, 'X Xr No', 'mayan', 'Mayan Numerals'],
- 0x1D30 => [0x06, 'X So', 'tai xuan jing', 'tetragrams'],
- 0x1D36 => [0x02, 'X No', 'rod'],
- 0x1D38 => [0x08, 'X Xr L Sm', 'mathematical alphanumeric+'],
- 0x1D40 => [0x40, 'X L Sm', 'mathematical alphanumeric'],
- 0x1D80 => [0x2B, 'X L Alpha', 'sutton'],
- 0x1DAB => [0x55],
- 0x1E00 => [0x03, 'X L Cyrillic', 'glagol+'],
- 0x1E03 => [0x05, 'X Xr L Brahmic', 'pallava'],
- 0x1E08 => [0x06, 'X Xr L Brahmic', 'chalukya'],
- 0x1E0E => [0x02],
- 0x1E10 => [0x0B, 'X Xr L Alpha', 'eebee hmong'],
- 0x1E1B => [0x05, 'X Xr L Alpha', 'cher vang hm.'],
- 0x1E20 => [0x06, 'X Xr L Brahmic', 'western cham'],
- 0x1E26 => [0x03, 'X Xr L Alpha', 'beria', 'zaghawa'],
- 0x1E29 => [0x07],
- 0x1E30 => [0x20, 'X Xr L Syllabic', 'loma'],
- 0x1E50 => [0x30],
- 0x1E80 => [0x0E, 'X L Syllabic', 'mende kikakui'],
- 0x1E8E => [0x02],
- 0x1E90 => [0x06, 'X L Alpha', 'adlam'],
- 0x1E96 => [0x2A],
- 0x1EC0 => [0x07, 'X Xr No', 'persian siyaq'],
- 0x1EC7 => [0x05, 'X Xr No', 'indic siyaq'],
- 0x1ECC => [0x04, 'X Xr No', 'diwani siyaq'],
- 0x1ED0 => [0x05, 'X Xr No', 'ottoman siyaq'],
- 0x1ED5 => [0x0B],
- 0x1EE0 => [0x10, 'X L Arabic', 'arabic mathematical alphabetic'], # Sm
- 0x1EF0 => [0x10],
- 0x1F00 => [0x03, 'X So', 'mahjong'],
- 0x1F03 => [0x07, 'X So', 'domino tiles'],
- 0x1F0A => [0x06, 'X So', 'playing cards'],
- 0x1F10 => [0x10, 'X L Latin', 'enclosed alphanumeric supplement'], # So
- 0x1F20 => [0x10, 'X L Han', 'enclosed ideographic supplement'], # So
- 0x1F30 => [0x30, 'X So', 'miscellaneous symbols and pictographs'],
- 0x1F60 => [0x05, 'X So', 'emoticons'],
- 0x1F65 => [0x03, 'X So', 'ornament'],
- 0x1F68 => [0x08, 'X So', 'transport'],
- 0x1F70 => [0x08, 'X So', 'alchemical'],
- 0x1F78 => [0x08, 'X So', 'geometric shapes ext'],
- 0x1F80 => [0x10, 'X So', 'supplemental arrows-C'],
- 0x1F90 => [0x10, 'X So', 'supplemental symbols and pictographs'],
- 0x1FA0 => [0x60],
+ 0x10000 => [0x080, 'X L Syllabic', 'linear B syllabary'],
+ 0x10080 => [0x080, 'X L Syllabic', 'linear B ideograms'],
+ 0x10100 => [0x040, 'X No', 'aegean num'],
+ 0x10140 => [0x050, 'X No', 'greek numbers'],
+ 0x10190 => [0x040, 'X So', 'ancient sym'],
+ 0x101D0 => [0x030, 'X L Syllabic', 'phaistos'],
+ 0x10200 => [0x040, 'X Xr L Greek', 'iberian'],
+ 0x10240 => [0x040],
+ 0x10280 => [0x020, 'X L Greek', 'lycian'],
+ 0x102A0 => [0x040, 'X L Greek', 'carian'],
+ 0x102E0 => [0x020, 'X L No', 'coptic'],
+ 0x10300 => [0x030, 'X L Greek', 'italic'],
+ 0x10330 => [0x020, 'X L Greek', 'gothic'],
+ 0x10350 => [0x030, 'X L Cyrillic', 'permic'],
+ 0x10380 => [0x020, 'X L Alpha', 'ugarit'],
+ 0x103A0 => [0x040, 'X L Alpha', 'old persian'],
+ 0x103E0 => [0x020, 'X Xr L Alpha', 'sh.qs', 'shavian quikscript extensions'],
+ 0x10400 => [0x050, 'X L Alpha', 'deseret'],
+ 0x10450 => [0x030, 'X L Alpha', 'shavian'],
+ 0x10480 => [0x030, 'X L Alpha', 'osmanya'],
+ 0x104B0 => [0x050, 'X L Alpha', 'osage'],
+ 0x10500 => [0x030, 'X L Alpha', 'elbasan'],
+ 0x10530 => [0x040, 'X L Alpha', 'c albanian', 'caucasian albanian'],
+ 0x10570 => [0x050, 'X Xr L Alpha', 'vithkuqi'],
+ 0x105C0 => [0x040, 'X Xr L Alpha', 'todhri'],
+ 0x10600 => [0x180, 'X L Syllabic', 'linear A'],
+ 0x10780 => [0x080, 'X Xr L Syllabic', 'cypro-minoan'],
+ 0x10800 => [0x040, 'X L Syllabic', 'cypriot'],
+ 0x10840 => [0x020, 'X L Aramaic', 'aram'],
+ 0x10860 => [0x020, 'X L Aramaic', 'palmr'],
+ 0x10880 => [0x030, 'X L Aramaic', 'nabataean'],
+ 0x108A0 => [0x010],
+ 0x108C0 => [0x020, 'X Xr L Alpha', 'numid', 'numidian'],
+ 0x108E0 => [0x020, 'X L Aramaic', 'hatr', 'hatran'],
+ 0x10900 => [0x020, 'X L Aramaic', 'phoen', 'phoenician'],
+ 0x10920 => [0x020, 'X L Greek', 'lydian'],
+ 0x10940 => [0x040],
+ 0x10980 => [0x020, 'X L Alpha', 'mer h', 'meroitic hieroglyphs'],
+ 0x109A0 => [0x060, 'X L Alpha', 'meroitic cursive'],
+ 0x10A00 => [0x060, 'X L Syllabic', 'kharoshthi'],
+ 0x10A60 => [0x020, 'X L Aramaic', 's arab'],
+ 0x10A80 => [0x020, 'X L Aramaic', 'n arab'],
+ 0x10AA0 => [0x020, 'X Xr L Brahmic', 'balti'],
+ 0x10AC0 => [0x040, 'X L Aramaic', 'manichaean'],
+ 0x10B00 => [0x040, 'X L Aramaic', 'avestan'],
+ 0x10B40 => [0x020, 'X L Aramaic', 'parth'],
+ 0x10B60 => [0x020, 'X L Aramaic', 'pahlav', 'inscriptional pahlavi'],
+ 0x10B80 => [0x030, 'X L Aramaic', 'psalt pahl', 'psalter pahlavi'],
+ 0x10BB0 => [0x030, 'X Xr L Aramaic', 'book pahl', 'book pahlavi'],
+ 0x10BE0 => [0x020, 'X Xr L Alpha', 'babur', 'khatt-i baburi'],
+ 0x10C00 => [0x050, 'X L Aramaic', 'old turkic'],
+ 0x10C50 => [0x030],
+ 0x10C80 => [0x080, 'X L Aramaic', 'old hungarian'],
+ 0x10D00 => [0x040, 'X Xr L Alpha', 'rohingya'],
+ 0x10D40 => [0x040, 'X Xr L Alpha', 'garay'],
+ 0x10D80 => [0x080, 'X Xr L Syllabic', 'byblos'],
+ 0x10E00 => [0x060],
+ 0x10E60 => [0x020, 'X No', 'rumi', 'rumi numeral symbols'],
+ 0x10E80 => [0x040],
+ 0x10EC0 => [0x020, 'X Xr L Aramaic', 'elym', 'elymaic'],
+ 0x10EE0 => [0x020, 'X Xr L Aramaic', 'khwar', 'khwarezmian'],
+ 0x10F00 => [0x030, 'X Xr L Aramaic', 'old sogd', 'old sogdian'],
+ 0x10F30 => [0x040, 'X Xr L Aramaic', 'sogdian'],
+ 0x10F70 => [0x010],
+ 0x10F80 => [0x080, 'X Xr L Aramaic', 'uyghur'],
+ 0x11000 => [0x080, 'X L Brahmic', 'brahmi'],
+ 0x11080 => [0x050, 'X L Brahmic', 'kaithi'],
+ 0x110D0 => [0x030, 'X L Brahmic', 'sora som'],
+ 0x11100 => [0x050, 'X L Brahmic', 'chakma'],
+ 0x11150 => [0x030, 'X L Brahmic', 'mahajani'],
+ 0x11180 => [0x060, 'X L Brahmic', 'sharada'],
+ 0x111E0 => [0x020, 'X No Brahmic', 'sinhal'],
+ 0x11200 => [0x050, 'X L Brahmic', 'khojki'],
+ 0x11250 => [0x030, 'X Xr L Brahmic', 'landa'],
+ 0x11280 => [0x030, 'X L Brahmic', 'multani'],
+ 0x112B0 => [0x050, 'X L Brahmic', 'khudabadi'],
+ 0x11300 => [0x080, 'X L Brahmic', 'grantha'],
+ 0x11380 => [0x080, 'X Xr L Brahmic', 'tigalari'], # tulu
+ 0x11400 => [0x080, 'X L Brahmic', 'newar'],
+ 0x11480 => [0x060, 'X L Brahmic', 'tirhuta'],
+ 0x114E0 => [0x020, 'X Xr L Alpha', 'tani'],
+ 0x11500 => [0x080, 'X Xr L Brahmic', 'ranjana'],
+ 0x11580 => [0x080, 'X L Brahmic', 'siddham'],
+ 0x11600 => [0x060, 'X L Brahmic', 'modi'],
+ 0x11660 => [0x020, 'X L Aramaic', 'mong', 'mongolian extension'],
+ 0x11680 => [0x050, 'X L Brahmic', 'takri'],
+ 0x116D0 => [0x030, 'X Xr L Brahmic', 'jenticha'],
+ 0x11700 => [0x040, 'X L Brahmic', 'ahom'],
+ 0x11740 => [0x060, 'X Xr L Alpha', 'zou'],
+ 0x117A0 => [0x060, 'X Xr L Brahmic', 'pyu'],
+ 0x11800 => [0x050, 'X Xr L Brahmic', 'dogra'],
+ 0x11850 => [0x040, 'X Xr L Brahmic', 'sirmauri'],
+ 0x11890 => [0x010],
+ 0x118A0 => [0x060, 'X L Syllabic', 'warang citi'],
+ 0x11900 => [0x060, 'X Xr L Brahmic', 'dives akuru'],
+ 0x11960 => [0x040, 'X Xr L Brahmic', 'vatteluttu'],
+ 0x119A0 => [0x060, 'X Xr L Brahmic', 'nandinagari'],
+ 0x11A00 => [0x050, 'X L Brahmic', 'zanabazar square'],
+ 0x11A50 => [0x060, 'X L Brahmic', 'soyombo'],
+ 0x11AB0 => [0x010],
+ 0x11AC0 => [0x040, 'X L Alpha', 'pau cin hau'],
+ 0x11B00 => [0x050, 'X Xr L Brahmic', 'devanāgarī ext-A'],
+ 0x11B50 => [0x020, 'X Xr L Brahmic', 'shar+', 'sharada extension'],
+ 0x11B70 => [0x010],
+ 0x11B80 => [0x040, 'X Xr L Brahmic', 'tolong siki'],
+ 0x11BC0 => [0x040, 'X Xr L Brahmic', 'khambu rai'],
+ 0x11C00 => [0x070, 'X L Brahmic', 'bhaiksuki'],
+ 0x11C70 => [0x050, 'X L Brahmic', 'marchen'],
+ 0x11CC0 => [0x040, 'X Xr L Brahmic', 'balti B'],
+ 0x11D00 => [0x060, 'X L Brahmic', 'masaram gondi'],
+ 0x11D60 => [0x050, 'X Xr L Brahmic', 'gunjala gondi'],
+ 0x11DB0 => [0x050, 'X Xr L Brahmic', 'kawi'],
+ 0x11E00 => [0x070, 'X Xr L Brahmic', 'tocharian'],
+ 0x11E70 => [0x060, 'X Xr L Brahmic', 'khotanese'],
+ 0x11ED0 => [0x010],
+ 0x11EE0 => [0x020, 'X Xr L Brahmic', 'makas', 'makasar'],
+ 0x11F00 => [0x040, 'X Xr L Brahmic', 'leke'],
+ 0x11F40 => [0x020],
+ 0x11F60 => [0x060, 'X Xr L Brahmic', 'chola'],
+ 0x11FC0 => [0x040, 'X Xr L Brahmic', 'tamil+'],
+ 0x12000 => [0x400, 'X L Syllabic', 'cuneiform'],
+ 0x12400 => [0x080, 'X No', 'cuneiform numbers'],
+ 0x12480 => [0x0D0, 'X L Syllabic', 'early dynastic cuneiform'],
+ 0x12550 => [0x030],
+ 0x12580 => [0x100, 'X Xr L Syllabic', 'proto-cuneiform'],
+ 0x12680 => [0x050, 'X Xr No', 'proto-cun numb'],
+ 0x126D0 => [0x730],
+ 0x12E00 => [0x190, 'X Xr L Syllabic', 'indus'],
+ 0x12F90 => [0x070],
+ 0x13000 => [0x430, 'X L Syllabic', 'egyptian hieroglyphs'],
+ 0x13430 => [0x010, 'X Xr L Syllabic', 'eg.c', 'Egyptian control characters'],
+ 0x13440 => [0xFC0, 'X Xr L Syllabic', 'egyptian hieroglyphs extended-A'],
+ 0x14400 => [0x280, 'X L Syllabic', 'anatolian hieroglyphs'],
+ 0x14680 => [0x980, 'X Xr L Syllabic', 'egyptian hieroglyphs extended-B'],
+ 0x15000 => [0x040, 'X Xr L Brahmic', 'lampung'],
+ 0x15040 => [0x030, 'X Xr L Brahmic', 'kerinci'],
+ 0x15070 => [0x010],
+ 0x15080 => [0x480, 'X Xr L Syllabic', 'mandombe'],
+ 0x15500 => [0x500, 'X Xr L Syllabic', 'maya hieroglyphs'],
+ 0x15A00 => [0x200],
+ 0x15C00 => [0x400, 'X Xr L Syllabic', 'aztec pictograms'],
+ 0x16000 => [0x080, 'X Xr L Alpha', 'cirth'],
+ 0x16080 => [0x080, 'X Xr L Alpha', 'tengwar'],
+ 0x16100 => [0x040, 'X Xr L Brahmic', 'khema'],
+ 0x16140 => [0x040, 'X Xr L Brahmic', 'khe prih'],
+ 0x16180 => [0x020],
+ 0x161A0 => [0x060, 'X Xr L Alpha', 'moon'],
+ 0x16200 => [0x500, 'X Xr L Syllabic', 'blissymbols'],
+ 0x16700 => [0x0B0, 'X Xr L Syllabic', 'bagam'],
+ 0x167B0 => [0x050, 'X Xr L Syllabic', 'iban'],
+ 0x16800 => [0x240, 'X L Syllabic', 'bamum supplement'],
+ 0x16A40 => [0x030, 'X L Alpha', 'mro'],
+ 0x16A70 => [0x060, 'X Xr L Alpha', 'mossang tangsa'],
+ 0x16AD0 => [0x030, 'X L Alpha', 'bassa vah'],
+ 0x16B00 => [0x090, 'X L Syllabic', 'pahawh hmong'],
+ 0x16B90 => [0x070, 'X Xr L Syllabic', 'woleai'],
+ 0x16C00 => [0x080, 'X Xr L Syllabic', 'kpelle'],
+ 0x16C80 => [0x050, 'X Xr L Syllabic', 'afaka'],
+ 0x16CD0 => [0x030, 'X Xr L Syllabic', 'lk tangsa', 'Latsam Khimhun Tangsa'],
+ 0x16D00 => [0x040, 'X Xr L Syllabic', 'tikamuli'],
+ 0x16D40 => [0x040, 'X Xr L Brahmic', 'kirat rai'],
+ 0x16D80 => [0x050],
+ 0x16DD0 => [0x030, 'X Xr L Brahmic', 'kulitan'],
+ 0x16E00 => [0x040, 'X Xr L Alpha', 'mwangwego'],
+ 0x16E40 => [0x060, 'X Xr L Alpha', 'medefaidrin'],
+ 0x16EA0 => [0x060, 'X Xr L Brahmic', 'lontara+', 'buginese'],
+ 0x16F00 => [0x0A0, 'X L Syllabic', 'miao'],
+ 0x16FA0 => [0x040, 'X Xr L Brahmic', 'lontara b-b'],
+ 0x16FE0 => [0x020, 'X So', 'ideo', 'Ideographic Symbols and Punctuation'],
+ 0x17000 => [0x1800,'X L Syllabic', 'tangut ideographs'],
+ 0x18800 => [0x300, 'X L Syllabic', 'tangut components'],
+ 0x18B00 => [0x200, 'X Xr L Han', 'khitan small'],
+ 0x18D00 => [0x900, 'X Xr L Han', 'khitan ideographs'],
+ 0x19600 => [0x560, 'X Xr L Han', 'jurchen'],
+ 0x19B60 => [0x040, 'X Xr L Han', 'jurchen rad'],
+ 0x19BA0 => [0x060],
+ 0x19C00 => [0x200],
+ 0x19E00 => [0x500, 'X Xr L Syllabic', 'pau cin hau syllabary'],
+ 0x1A300 => [0x460, 'X Xr L Syllabic', 'eskaya'],
+ 0x1A760 => [0x020],
+ 0x1A780 => [0x080, 'X Xr L Syllabic', 'kaidā'],
+ 0x1A800 => [0x500, 'X Xr L Syllabic', 'naxi dongba'],
+ 0x1AD00 => [0x300, 'X Xr L Syllabic', 'naxi geba'],
+ 0x1B000 => [0x100, 'X L Hiragana', 'kana supplement'],
+ 0x1B100 => [0x030, 'X L Hiragana', 'kana+A', 'hentaigana'],
+ 0x1B130 => [0x040, 'X Xr L Hiragana', 'small kana+'],
+ 0x1B170 => [0x190, 'X L Han', 'nüshu'],
+ 0x1B300 => [0x230, 'X Xr L Han', 'shuishu'],
+ 0x1B530 => [0x700, 'X Xr L Syllabic', 'proto-elamite'],
+ 0x1BC00 => [0x0A0, 'X L Alpha', 'duployan'],
+ 0x1BCA0 => [0x010, 'X L Cc', 'sh', 'Shorthand Formatting'],
+ 0x1BCB0 => [0x050, 'X Xr L Alpha', 'pitman'],
+ 0x1BD00 => [0x300, 'X Xr L Alpha', 'shorthands?'],
+ 0x1C000 => [0xB00, 'X Xr L Syllabic', 'micmac hieroglyphs'],
+ 0x1CB00 => [0x300, 'X Xr L Syllabic', 'rongorongo'],
+ 0x1CE00 => [0x200],
+ 0x1D000 => [0x100, 'X So', 'byzantine musical'],
+ 0x1D100 => [0x100, 'X So', 'musical symbols'],
+ 0x1D200 => [0x050, 'X So', 'anc greek music'],
+ 0x1D250 => [0x030],
+ 0x1D280 => [0x030, 'X Xr So', 'lute'], # pípa
+ 0x1D2B0 => [0x020, 'X Xr So', 'flute'], # súzìpǔ
+ 0x1D2D0 => [0x010],
+ 0x1D2E0 => [0x020, 'X Xr No', 'mayan', 'Mayan Numerals'],
+ 0x1D300 => [0x060, 'X So', 'tai xuan jing', 'tetragrams'],
+ 0x1D360 => [0x020, 'X No', 'rod'],
+ 0x1D380 => [0x080, 'X Xr L Sm', 'math alphanumeric+'],
+ 0x1D400 => [0x400, 'X L Sm', 'mathematical alphanumeric'],
+ 0x1D800 => [0x2B0, 'X L Alpha', 'sutton'],
+ 0x1DAB0 => [0x550],
+ 0x1E000 => [0x030, 'X L Cyrillic', 'glagol+'],
+ 0x1E030 => [0x050, 'X Xr L Brahmic', 'pallava'],
+ 0x1E080 => [0x060, 'X Xr L Brahmic', 'chalukya'],
+ 0x1E0E0 => [0x020],
+ 0x1E100 => [0x050, 'X Xr L Alpha', 'chervang hmong', 'nyiakeng puachue hmong'],
+ 0x1E150 => [0x0B0, 'X Xr L Alpha', 'eebee hmong'],
+ 0x1E200 => [0x060, 'X Xr L Brahmic', 'western cham'],
+ 0x1E260 => [0x030, 'X Xr L Alpha', 'beria', 'zaghawa'],
+ 0x1E290 => [0x030],
+ 0x1E2C0 => [0x040, 'X Xr L Alpha', 'wancho'],
+ 0x1E300 => [0x120, 'X Xr L Syllabic', 'loma'],
+ 0x1E420 => [0x0E0],
+ 0x1E500 => [0x030, 'X Xr L Brahmic', 'pungchen'],
+ 0x1E530 => [0x030, 'X Xr L Brahmic', 'pungchuŋ', 'pungchung'],
+ 0x1E560 => [0x040, 'X Xr L Brahmic', 'marchung'],
+ 0x1E5A0 => [0x030, 'X Xr L Brahmic', 'brusha'],
+ 0x1E5D0 => [0x230],
+ 0x1E800 => [0x0E0, 'X L Syllabic', 'mende kikakui'],
+ 0x1E8E0 => [0x020],
+ 0x1E900 => [0x060, 'X L Alpha', 'adlam'],
+ 0x1E960 => [0x2A0],
+ 0x1EC00 => [0x070, 'X Xr No', 'persian siyaq'],
+ 0x1EC70 => [0x050, 'X Xr No', 'indic siyaq'],
+ 0x1ECC0 => [0x040, 'X Xr No', 'diwani siyaq'],
+ 0x1ED00 => [0x050, 'X Xr No', 'ottoman siyaq'],
+ 0x1ED50 => [0x0B0],
+ 0x1EE00 => [0x100, 'X L Arabic', 'arabic mathematical alphabetic'], # Sm
+ 0x1EF00 => [0x100],
+ 0x1F000 => [0x030, 'X So', 'mahjong'],
+ 0x1F030 => [0x070, 'X So', 'domino tiles'],
+ 0x1F0A0 => [0x060, 'X So', 'playing cards'],
+ 0x1F100 => [0x100, 'X L Latin', 'enclosed alphanumeric supplement'], # So
+ 0x1F200 => [0x100, 'X L Han', 'enclosed ideographic supplement'], # So
+ 0x1F300 => [0x300, 'X So', 'miscellaneous symbols and pictographs'],
+ 0x1F600 => [0x050, 'X So', 'emoticons'],
+ 0x1F650 => [0x030, 'X So', 'ornament'],
+ 0x1F680 => [0x080, 'X So', 'transport'],
+ 0x1F700 => [0x080, 'X So', 'alchemical'],
+ 0x1F780 => [0x080, 'X So', 'geometric shapes ext'],
+ 0x1F800 => [0x100, 'X So', 'supplemental arrows-C'],
+ 0x1F900 => [0x100, 'X So', 'supplemental symbols and pictographs'],
+ 0x1FA00 => [0x070, 'X Xr So', 'chess'],
+ 0x1FA70 => [0x010],
+ 0x1FA80 => [0x060, 'X Xr So', 'flag identification'],
+ 0x1FAE0 => [0x020],
+ 0x1FB00 => [0x100, 'X Xr So', 'legacy computing graphics'],
+ 0x1FC00 => [0x400],
};