# This file is automatically generated by build-idnadata.py scripts = { 'Arabic': frozenset( list(range(0x600,0x605)) + list(range(0x606,0x60c)) + list(range(0x60d,0x61b)) + [0x61e] + list(range(0x620,0x640)) + list(range(0x641,0x64b)) + list(range(0x656,0x660)) + list(range(0x66a,0x670)) + list(range(0x671,0x6dd)) + list(range(0x6de,0x700)) + list(range(0x750,0x780)) + list(range(0x8a0,0x8b3)) + list(range(0x8e4,0x900)) + list(range(0xfb50,0xfbc2)) + list(range(0xfbd3,0xfd3e)) + list(range(0xfd50,0xfd90)) + list(range(0xfd92,0xfdc8)) + list(range(0xfdf0,0xfdfe)) + list(range(0xfe70,0xfe75)) + list(range(0xfe76,0xfefd)) + list(range(0x10e60,0x10e7f)) + list(range(0x1ee00,0x1ee04)) + list(range(0x1ee05,0x1ee20)) + list(range(0x1ee21,0x1ee23)) + [0x1ee24] + [0x1ee27] + list(range(0x1ee29,0x1ee33)) + list(range(0x1ee34,0x1ee38)) + [0x1ee39] + [0x1ee3b] + [0x1ee42] + [0x1ee47] + [0x1ee49] + [0x1ee4b] + list(range(0x1ee4d,0x1ee50)) + list(range(0x1ee51,0x1ee53)) + [0x1ee54] + [0x1ee57] + [0x1ee59] + [0x1ee5b] + [0x1ee5d] + [0x1ee5f] + list(range(0x1ee61,0x1ee63)) + [0x1ee64] + list(range(0x1ee67,0x1ee6b)) + list(range(0x1ee6c,0x1ee73)) + list(range(0x1ee74,0x1ee78)) + list(range(0x1ee79,0x1ee7d)) + [0x1ee7e] + list(range(0x1ee80,0x1ee8a)) + list(range(0x1ee8b,0x1ee9c)) + list(range(0x1eea1,0x1eea4)) + list(range(0x1eea5,0x1eeaa)) + list(range(0x1eeab,0x1eebc)) + list(range(0x1eef0,0x1eef2)) ), 'Armenian': frozenset( list(range(0x531,0x557)) + list(range(0x559,0x560)) + list(range(0x561,0x588)) + [0x58a] + list(range(0x58d,0x590)) + list(range(0xfb13,0xfb18)) ), 'Avestan': frozenset( list(range(0x10b00,0x10b36)) + list(range(0x10b39,0x10b40)) ), 'Balinese': frozenset( list(range(0x1b00,0x1b4c)) + list(range(0x1b50,0x1b7d)) ), 'Bamum': frozenset( list(range(0xa6a0,0xa6f8)) + list(range(0x16800,0x16a39)) ), 'Bassa_Vah': frozenset( list(range(0x16ad0,0x16aee)) + list(range(0x16af0,0x16af6)) ), 'Batak': frozenset( list(range(0x1bc0,0x1bf4)) + list(range(0x1bfc,0x1c00)) ), 'Bengali': frozenset( list(range(0x980,0x984)) + list(range(0x985,0x98d)) + list(range(0x98f,0x991)) + list(range(0x993,0x9a9)) + list(range(0x9aa,0x9b1)) + [0x9b2] + list(range(0x9b6,0x9ba)) + list(range(0x9bc,0x9c5)) + list(range(0x9c7,0x9c9)) + list(range(0x9cb,0x9cf)) + [0x9d7] + list(range(0x9dc,0x9de)) + list(range(0x9df,0x9e4)) + list(range(0x9e6,0x9fc)) ), 'Bopomofo': frozenset( list(range(0x2ea,0x2ec)) + list(range(0x3105,0x312e)) + list(range(0x31a0,0x31bb)) ), 'Brahmi': frozenset( list(range(0x11000,0x1104e)) + list(range(0x11052,0x11070)) + [0x1107f] ), 'Braille': frozenset( list(range(0x2800,0x2900)) ), 'Buginese': frozenset( list(range(0x1a00,0x1a1c)) + list(range(0x1a1e,0x1a20)) ), 'Buhid': frozenset( list(range(0x1740,0x1754)) ), 'Canadian_Aboriginal': frozenset( list(range(0x1400,0x1680)) + list(range(0x18b0,0x18f6)) ), 'Carian': frozenset( list(range(0x102a0,0x102d1)) ), 'Caucasian_Albanian': frozenset( list(range(0x10530,0x10564)) + [0x1056f] ), 'Chakma': frozenset( list(range(0x11100,0x11135)) + list(range(0x11136,0x11144)) ), 'Cham': frozenset( list(range(0xaa00,0xaa37)) + list(range(0xaa40,0xaa4e)) + list(range(0xaa50,0xaa5a)) + list(range(0xaa5c,0xaa60)) ), 'Cherokee': frozenset( list(range(0x13a0,0x13f5)) ), 'Common': frozenset( list(range(0x0,0x41)) + list(range(0x5b,0x61)) + list(range(0x7b,0xaa)) + list(range(0xab,0xba)) + list(range(0xbb,0xc0)) + [0xd7] + [0xf7] + list(range(0x2b9,0x2e0)) + list(range(0x2e5,0x2ea)) + list(range(0x2ec,0x300)) + [0x374] + [0x37e] + [0x385] + [0x387] + [0x589] + [0x605] + [0x60c] + list(range(0x61b,0x61d)) + [0x61f] + [0x640] + list(range(0x660,0x66a)) + [0x6dd] + list(range(0x964,0x966)) + [0xe3f] + list(range(0xfd5,0xfd9)) + [0x10fb] + list(range(0x16eb,0x16ee)) + list(range(0x1735,0x1737)) + list(range(0x1802,0x1804)) + [0x1805] + [0x1cd3] + [0x1ce1] + list(range(0x1ce9,0x1ced)) + list(range(0x1cee,0x1cf4)) + list(range(0x1cf5,0x1cf7)) + list(range(0x2000,0x200c)) + list(range(0x200e,0x2065)) + list(range(0x2066,0x2071)) + list(range(0x2074,0x207f)) + list(range(0x2080,0x208f)) + list(range(0x20a0,0x20be)) + list(range(0x2100,0x2126)) + list(range(0x2127,0x212a)) + list(range(0x212c,0x2132)) + list(range(0x2133,0x214e)) + list(range(0x214f,0x2160)) + [0x2189] + list(range(0x2190,0x23fb)) + list(range(0x2400,0x2427)) + list(range(0x2440,0x244b)) + list(range(0x2460,0x2800)) + list(range(0x2900,0x2b74)) + list(range(0x2b76,0x2b96)) + list(range(0x2b98,0x2bba)) + list(range(0x2bbd,0x2bc9)) + list(range(0x2bca,0x2bd2)) + list(range(0x2e00,0x2e43)) + list(range(0x2ff0,0x2ffc)) + list(range(0x3000,0x3005)) + [0x3006] + list(range(0x3008,0x3021)) + list(range(0x3030,0x3038)) + list(range(0x303c,0x3040)) + list(range(0x309b,0x309d)) + [0x30a0] + list(range(0x30fb,0x30fd)) + list(range(0x3190,0x31a0)) + list(range(0x31c0,0x31e4)) + list(range(0x3220,0x3260)) + list(range(0x327f,0x32d0)) + list(range(0x3358,0x3400)) + list(range(0x4dc0,0x4e00)) + list(range(0xa700,0xa722)) + list(range(0xa788,0xa78b)) + list(range(0xa830,0xa83a)) + [0xa92e] + [0xa9cf] + [0xab5b] + list(range(0xfd3e,0xfd40)) + list(range(0xfe10,0xfe1a)) + list(range(0xfe30,0xfe53)) + list(range(0xfe54,0xfe67)) + list(range(0xfe68,0xfe6c)) + [0xfeff] + list(range(0xff01,0xff21)) + list(range(0xff3b,0xff41)) + list(range(0xff5b,0xff66)) + [0xff70] + list(range(0xff9e,0xffa0)) + list(range(0xffe0,0xffe7)) + list(range(0xffe8,0xffef)) + list(range(0xfff9,0xfffe)) + list(range(0x10100,0x10103)) + list(range(0x10107,0x10134)) + list(range(0x10137,0x10140)) + list(range(0x10190,0x1019c)) + list(range(0x101d0,0x101fd)) + list(range(0x102e1,0x102fc)) + list(range(0x1bca0,0x1bca4)) + list(range(0x1d000,0x1d0f6)) + list(range(0x1d100,0x1d127)) + list(range(0x1d129,0x1d167)) + list(range(0x1d16a,0x1d17b)) + list(range(0x1d183,0x1d185)) + list(range(0x1d18c,0x1d1aa)) + list(range(0x1d1ae,0x1d1de)) + list(range(0x1d300,0x1d357)) + list(range(0x1d360,0x1d372)) + list(range(0x1d400,0x1d455)) + list(range(0x1d456,0x1d49d)) + list(range(0x1d49e,0x1d4a0)) + [0x1d4a2] + list(range(0x1d4a5,0x1d4a7)) + list(range(0x1d4a9,0x1d4ad)) + list(range(0x1d4ae,0x1d4ba)) + [0x1d4bb] + list(range(0x1d4bd,0x1d4c4)) + list(range(0x1d4c5,0x1d506)) + list(range(0x1d507,0x1d50b)) + list(range(0x1d50d,0x1d515)) + list(range(0x1d516,0x1d51d)) + list(range(0x1d51e,0x1d53a)) + list(range(0x1d53b,0x1d53f)) + list(range(0x1d540,0x1d545)) + [0x1d546] + list(range(0x1d54a,0x1d551)) + list(range(0x1d552,0x1d6a6)) + list(range(0x1d6a8,0x1d7cc)) + list(range(0x1d7ce,0x1d800)) + list(range(0x1f000,0x1f02c)) + list(range(0x1f030,0x1f094)) + list(range(0x1f0a0,0x1f0af)) + list(range(0x1f0b1,0x1f0c0)) + list(range(0x1f0c1,0x1f0d0)) + list(range(0x1f0d1,0x1f0f6)) + list(range(0x1f100,0x1f10d)) + list(range(0x1f110,0x1f12f)) + list(range(0x1f130,0x1f16c)) + list(range(0x1f170,0x1f19b)) + list(range(0x1f1e6,0x1f200)) + list(range(0x1f201,0x1f203)) + list(range(0x1f210,0x1f23b)) + list(range(0x1f240,0x1f249)) + list(range(0x1f250,0x1f252)) + list(range(0x1f300,0x1f32d)) + list(range(0x1f330,0x1f37e)) + list(range(0x1f380,0x1f3cf)) + list(range(0x1f3d4,0x1f3f8)) + list(range(0x1f400,0x1f4ff)) + list(range(0x1f500,0x1f54b)) + list(range(0x1f550,0x1f57a)) + list(range(0x1f57b,0x1f5a4)) + list(range(0x1f5a5,0x1f643)) + list(range(0x1f645,0x1f6d0)) + list(range(0x1f6e0,0x1f6ed)) + list(range(0x1f6f0,0x1f6f4)) + list(range(0x1f700,0x1f774)) + list(range(0x1f780,0x1f7d5)) + list(range(0x1f800,0x1f80c)) + list(range(0x1f810,0x1f848)) + list(range(0x1f850,0x1f85a)) + list(range(0x1f860,0x1f888)) + list(range(0x1f890,0x1f8ae)) + [0xe0001] + list(range(0xe0020,0xe0080)) ), 'Coptic': frozenset( list(range(0x3e2,0x3f0)) + list(range(0x2c80,0x2cf4)) + list(range(0x2cf9,0x2d00)) ), 'Cuneiform': frozenset( list(range(0x12000,0x12399)) + list(range(0x12400,0x1246f)) + list(range(0x12470,0x12475)) ), 'Cypriot': frozenset( list(range(0x10800,0x10806)) + [0x10808] + list(range(0x1080a,0x10836)) + list(range(0x10837,0x10839)) + [0x1083c] + [0x1083f] ), 'Cyrillic': frozenset( list(range(0x400,0x485)) + list(range(0x487,0x530)) + [0x1d2b] + [0x1d78] + list(range(0x2de0,0x2e00)) + list(range(0xa640,0xa69e)) + [0xa69f] ), 'Deseret': frozenset( list(range(0x10400,0x10450)) ), 'Devanagari': frozenset( list(range(0x900,0x951)) + list(range(0x953,0x964)) + list(range(0x966,0x980)) + list(range(0xa8e0,0xa8fc)) ), 'Duployan': frozenset( list(range(0x1bc00,0x1bc6b)) + list(range(0x1bc70,0x1bc7d)) + list(range(0x1bc80,0x1bc89)) + list(range(0x1bc90,0x1bc9a)) + list(range(0x1bc9c,0x1bca0)) ), 'Egyptian_Hieroglyphs': frozenset( list(range(0x13000,0x1342f)) ), 'Elbasan': frozenset( list(range(0x10500,0x10528)) ), 'Ethiopic': frozenset( list(range(0x1200,0x1249)) + list(range(0x124a,0x124e)) + list(range(0x1250,0x1257)) + [0x1258] + list(range(0x125a,0x125e)) + list(range(0x1260,0x1289)) + list(range(0x128a,0x128e)) + list(range(0x1290,0x12b1)) + list(range(0x12b2,0x12b6)) + list(range(0x12b8,0x12bf)) + [0x12c0] + list(range(0x12c2,0x12c6)) + list(range(0x12c8,0x12d7)) + list(range(0x12d8,0x1311)) + list(range(0x1312,0x1316)) + list(range(0x1318,0x135b)) + list(range(0x135d,0x137d)) + list(range(0x1380,0x139a)) + list(range(0x2d80,0x2d97)) + list(range(0x2da0,0x2da7)) + list(range(0x2da8,0x2daf)) + list(range(0x2db0,0x2db7)) + list(range(0x2db8,0x2dbf)) + list(range(0x2dc0,0x2dc7)) + list(range(0x2dc8,0x2dcf)) + list(range(0x2dd0,0x2dd7)) + list(range(0x2dd8,0x2ddf)) + list(range(0xab01,0xab07)) + list(range(0xab09,0xab0f)) + list(range(0xab11,0xab17)) + list(range(0xab20,0xab27)) + list(range(0xab28,0xab2f)) ), 'Georgian': frozenset( list(range(0x10a0,0x10c6)) + [0x10c7] + [0x10cd] + list(range(0x10d0,0x10fb)) + list(range(0x10fc,0x1100)) + list(range(0x2d00,0x2d26)) + [0x2d27] + [0x2d2d] ), 'Glagolitic': frozenset( list(range(0x2c00,0x2c2f)) + list(range(0x2c30,0x2c5f)) ), 'Gothic': frozenset( list(range(0x10330,0x1034b)) ), 'Grantha': frozenset( list(range(0x11301,0x11304)) + list(range(0x11305,0x1130d)) + list(range(0x1130f,0x11311)) + list(range(0x11313,0x11329)) + list(range(0x1132a,0x11331)) + list(range(0x11332,0x11334)) + list(range(0x11335,0x1133a)) + list(range(0x1133c,0x11345)) + list(range(0x11347,0x11349)) + list(range(0x1134b,0x1134e)) + [0x11357] + list(range(0x1135d,0x11364)) + list(range(0x11366,0x1136d)) + list(range(0x11370,0x11375)) ), 'Greek': frozenset( list(range(0x370,0x374)) + list(range(0x375,0x378)) + list(range(0x37a,0x37e)) + [0x37f] + [0x384] + [0x386] + list(range(0x388,0x38b)) + [0x38c] + list(range(0x38e,0x3a2)) + list(range(0x3a3,0x3e2)) + list(range(0x3f0,0x400)) + list(range(0x1d26,0x1d2b)) + list(range(0x1d5d,0x1d62)) + list(range(0x1d66,0x1d6b)) + [0x1dbf] + list(range(0x1f00,0x1f16)) + list(range(0x1f18,0x1f1e)) + list(range(0x1f20,0x1f46)) + list(range(0x1f48,0x1f4e)) + list(range(0x1f50,0x1f58)) + [0x1f59] + [0x1f5b] + [0x1f5d] + list(range(0x1f5f,0x1f7e)) + list(range(0x1f80,0x1fb5)) + list(range(0x1fb6,0x1fc5)) + list(range(0x1fc6,0x1fd4)) + list(range(0x1fd6,0x1fdc)) + list(range(0x1fdd,0x1ff0)) + list(range(0x1ff2,0x1ff5)) + list(range(0x1ff6,0x1fff)) + [0x2126] + [0xab65] + list(range(0x10140,0x1018d)) + [0x101a0] + list(range(0x1d200,0x1d246)) ), 'Gujarati': frozenset( list(range(0xa81,0xa84)) + list(range(0xa85,0xa8e)) + list(range(0xa8f,0xa92)) + list(range(0xa93,0xaa9)) + list(range(0xaaa,0xab1)) + list(range(0xab2,0xab4)) + list(range(0xab5,0xaba)) + list(range(0xabc,0xac6)) + list(range(0xac7,0xaca)) + list(range(0xacb,0xace)) + [0xad0] + list(range(0xae0,0xae4)) + list(range(0xae6,0xaf2)) ), 'Gurmukhi': frozenset( list(range(0xa01,0xa04)) + list(range(0xa05,0xa0b)) + list(range(0xa0f,0xa11)) + list(range(0xa13,0xa29)) + list(range(0xa2a,0xa31)) + list(range(0xa32,0xa34)) + list(range(0xa35,0xa37)) + list(range(0xa38,0xa3a)) + [0xa3c] + list(range(0xa3e,0xa43)) + list(range(0xa47,0xa49)) + list(range(0xa4b,0xa4e)) + [0xa51] + list(range(0xa59,0xa5d)) + [0xa5e] + list(range(0xa66,0xa76)) ), 'Han': frozenset( list(range(0x2e80,0x2e9a)) + list(range(0x2e9b,0x2ef4)) + list(range(0x2f00,0x2fd6)) + [0x3005] + [0x3007] + list(range(0x3021,0x302a)) + list(range(0x3038,0x303c)) + list(range(0x3400,0x4db6)) + list(range(0x4e00,0x9fcd)) + list(range(0xf900,0xfa6e)) + list(range(0xfa70,0xfada)) + list(range(0x20000,0x2a6d7)) + list(range(0x2a700,0x2b735)) + list(range(0x2b740,0x2b81e)) + list(range(0x2f800,0x2fa1e)) ), 'Hangul': frozenset( list(range(0x1100,0x1200)) + list(range(0x302e,0x3030)) + list(range(0x3131,0x318f)) + list(range(0x3200,0x321f)) + list(range(0x3260,0x327f)) + list(range(0xa960,0xa97d)) + list(range(0xac00,0xd7a4)) + list(range(0xd7b0,0xd7c7)) + list(range(0xd7cb,0xd7fc)) + list(range(0xffa0,0xffbf)) + list(range(0xffc2,0xffc8)) + list(range(0xffca,0xffd0)) + list(range(0xffd2,0xffd8)) + list(range(0xffda,0xffdd)) ), 'Hanunoo': frozenset( list(range(0x1720,0x1735)) ), 'Hebrew': frozenset( list(range(0x591,0x5c8)) + list(range(0x5d0,0x5eb)) + list(range(0x5f0,0x5f5)) + list(range(0xfb1d,0xfb37)) + list(range(0xfb38,0xfb3d)) + [0xfb3e] + list(range(0xfb40,0xfb42)) + list(range(0xfb43,0xfb45)) + list(range(0xfb46,0xfb50)) ), 'Hiragana': frozenset( list(range(0x3041,0x3097)) + list(range(0x309d,0x30a0)) + [0x1b001] + [0x1f200] ), 'Imperial_Aramaic': frozenset( list(range(0x10840,0x10856)) + list(range(0x10857,0x10860)) ), 'Inherited': frozenset( list(range(0x300,0x370)) + list(range(0x485,0x487)) + list(range(0x64b,0x656)) + [0x670] + list(range(0x951,0x953)) + list(range(0x1ab0,0x1abf)) + list(range(0x1cd0,0x1cd3)) + list(range(0x1cd4,0x1ce1)) + list(range(0x1ce2,0x1ce9)) + [0x1ced] + [0x1cf4] + list(range(0x1cf8,0x1cfa)) + list(range(0x1dc0,0x1df6)) + list(range(0x1dfc,0x1e00)) + list(range(0x200c,0x200e)) + list(range(0x20d0,0x20f1)) + list(range(0x302a,0x302e)) + list(range(0x3099,0x309b)) + list(range(0xfe00,0xfe10)) + list(range(0xfe20,0xfe2e)) + [0x101fd] + [0x102e0] + list(range(0x1d167,0x1d16a)) + list(range(0x1d17b,0x1d183)) + list(range(0x1d185,0x1d18c)) + list(range(0x1d1aa,0x1d1ae)) + list(range(0xe0100,0xe01f0)) ), 'Inscriptional_Pahlavi': frozenset( list(range(0x10b60,0x10b73)) + list(range(0x10b78,0x10b80)) ), 'Inscriptional_Parthian': frozenset( list(range(0x10b40,0x10b56)) + list(range(0x10b58,0x10b60)) ), 'Javanese': frozenset( list(range(0xa980,0xa9ce)) + list(range(0xa9d0,0xa9da)) + list(range(0xa9de,0xa9e0)) ), 'Kaithi': frozenset( list(range(0x11080,0x110c2)) ), 'Kannada': frozenset( list(range(0xc81,0xc84)) + list(range(0xc85,0xc8d)) + list(range(0xc8e,0xc91)) + list(range(0xc92,0xca9)) + list(range(0xcaa,0xcb4)) + list(range(0xcb5,0xcba)) + list(range(0xcbc,0xcc5)) + list(range(0xcc6,0xcc9)) + list(range(0xcca,0xcce)) + list(range(0xcd5,0xcd7)) + [0xcde] + list(range(0xce0,0xce4)) + list(range(0xce6,0xcf0)) + list(range(0xcf1,0xcf3)) ), 'Katakana': frozenset( list(range(0x30a1,0x30fb)) + list(range(0x30fd,0x3100)) + list(range(0x31f0,0x3200)) + list(range(0x32d0,0x32ff)) + list(range(0x3300,0x3358)) + list(range(0xff66,0xff70)) + list(range(0xff71,0xff9e)) + [0x1b000] ), 'Kayah_Li': frozenset( list(range(0xa900,0xa92e)) + [0xa92f] ), 'Kharoshthi': frozenset( list(range(0x10a00,0x10a04)) + list(range(0x10a05,0x10a07)) + list(range(0x10a0c,0x10a14)) + list(range(0x10a15,0x10a18)) + list(range(0x10a19,0x10a34)) + list(range(0x10a38,0x10a3b)) + list(range(0x10a3f,0x10a48)) + list(range(0x10a50,0x10a59)) ), 'Khmer': frozenset( list(range(0x1780,0x17de)) + list(range(0x17e0,0x17ea)) + list(range(0x17f0,0x17fa)) + list(range(0x19e0,0x1a00)) ), 'Khojki': frozenset( list(range(0x11200,0x11212)) + list(range(0x11213,0x1123e)) ), 'Khudawadi': frozenset( list(range(0x112b0,0x112eb)) + list(range(0x112f0,0x112fa)) ), 'Lao': frozenset( list(range(0xe81,0xe83)) + [0xe84] + list(range(0xe87,0xe89)) + [0xe8a] + [0xe8d] + list(range(0xe94,0xe98)) + list(range(0xe99,0xea0)) + list(range(0xea1,0xea4)) + [0xea5] + [0xea7] + list(range(0xeaa,0xeac)) + list(range(0xead,0xeba)) + list(range(0xebb,0xebe)) + list(range(0xec0,0xec5)) + [0xec6] + list(range(0xec8,0xece)) + list(range(0xed0,0xeda)) + list(range(0xedc,0xee0)) ), 'Latin': frozenset( list(range(0x41,0x5b)) + list(range(0x61,0x7b)) + [0xaa] + [0xba] + list(range(0xc0,0xd7)) + list(range(0xd8,0xf7)) + list(range(0xf8,0x2b9)) + list(range(0x2e0,0x2e5)) + list(range(0x1d00,0x1d26)) + list(range(0x1d2c,0x1d5d)) + list(range(0x1d62,0x1d66)) + list(range(0x1d6b,0x1d78)) + list(range(0x1d79,0x1dbf)) + list(range(0x1e00,0x1f00)) + [0x2071] + [0x207f] + list(range(0x2090,0x209d)) + list(range(0x212a,0x212c)) + [0x2132] + [0x214e] + list(range(0x2160,0x2189)) + list(range(0x2c60,0x2c80)) + list(range(0xa722,0xa788)) + list(range(0xa78b,0xa78f)) + list(range(0xa790,0xa7ae)) + list(range(0xa7b0,0xa7b2)) + list(range(0xa7f7,0xa800)) + list(range(0xab30,0xab5b)) + list(range(0xab5c,0xab60)) + [0xab64] + list(range(0xfb00,0xfb07)) + list(range(0xff21,0xff3b)) + list(range(0xff41,0xff5b)) ), 'Lepcha': frozenset( list(range(0x1c00,0x1c38)) + list(range(0x1c3b,0x1c4a)) + list(range(0x1c4d,0x1c50)) ), 'Limbu': frozenset( list(range(0x1900,0x191f)) + list(range(0x1920,0x192c)) + list(range(0x1930,0x193c)) + [0x1940] + list(range(0x1944,0x1950)) ), 'Linear_A': frozenset( list(range(0x10600,0x10737)) + list(range(0x10740,0x10756)) + list(range(0x10760,0x10768)) ), 'Linear_B': frozenset( list(range(0x10000,0x1000c)) + list(range(0x1000d,0x10027)) + list(range(0x10028,0x1003b)) + list(range(0x1003c,0x1003e)) + list(range(0x1003f,0x1004e)) + list(range(0x10050,0x1005e)) + list(range(0x10080,0x100fb)) ), 'Lisu': frozenset( list(range(0xa4d0,0xa500)) ), 'Lycian': frozenset( list(range(0x10280,0x1029d)) ), 'Lydian': frozenset( list(range(0x10920,0x1093a)) + [0x1093f] ), 'Mahajani': frozenset( list(range(0x11150,0x11177)) ), 'Malayalam': frozenset( list(range(0xd01,0xd04)) + list(range(0xd05,0xd0d)) + list(range(0xd0e,0xd11)) + list(range(0xd12,0xd3b)) + list(range(0xd3d,0xd45)) + list(range(0xd46,0xd49)) + list(range(0xd4a,0xd4f)) + [0xd57] + list(range(0xd60,0xd64)) + list(range(0xd66,0xd76)) + list(range(0xd79,0xd80)) ), 'Mandaic': frozenset( list(range(0x840,0x85c)) + [0x85e] ), 'Manichaean': frozenset( list(range(0x10ac0,0x10ae7)) + list(range(0x10aeb,0x10af7)) ), 'Meetei_Mayek': frozenset( list(range(0xaae0,0xaaf7)) + list(range(0xabc0,0xabee)) + list(range(0xabf0,0xabfa)) ), 'Mende_Kikakui': frozenset( list(range(0x1e800,0x1e8c5)) + list(range(0x1e8c7,0x1e8d7)) ), 'Meroitic_Cursive': frozenset( list(range(0x109a0,0x109b8)) + list(range(0x109be,0x109c0)) ), 'Meroitic_Hieroglyphs': frozenset( list(range(0x10980,0x109a0)) ), 'Miao': frozenset( list(range(0x16f00,0x16f45)) + list(range(0x16f50,0x16f7f)) + list(range(0x16f8f,0x16fa0)) ), 'Modi': frozenset( list(range(0x11600,0x11645)) + list(range(0x11650,0x1165a)) ), 'Mongolian': frozenset( list(range(0x1800,0x1802)) + [0x1804] + list(range(0x1806,0x180f)) + list(range(0x1810,0x181a)) + list(range(0x1820,0x1878)) + list(range(0x1880,0x18ab)) ), 'Mro': frozenset( list(range(0x16a40,0x16a5f)) + list(range(0x16a60,0x16a6a)) + list(range(0x16a6e,0x16a70)) ), 'Myanmar': frozenset( list(range(0x1000,0x10a0)) + list(range(0xa9e0,0xa9ff)) + list(range(0xaa60,0xaa80)) ), 'Nabataean': frozenset( list(range(0x10880,0x1089f)) + list(range(0x108a7,0x108b0)) ), 'New_Tai_Lue': frozenset( list(range(0x1980,0x19ac)) + list(range(0x19b0,0x19ca)) + list(range(0x19d0,0x19db)) + list(range(0x19de,0x19e0)) ), 'Nko': frozenset( list(range(0x7c0,0x7fb)) ), 'Ogham': frozenset( list(range(0x1680,0x169d)) ), 'Ol_Chiki': frozenset( list(range(0x1c50,0x1c80)) ), 'Old_Italic': frozenset( list(range(0x10300,0x10324)) ), 'Old_North_Arabian': frozenset( list(range(0x10a80,0x10aa0)) ), 'Old_Permic': frozenset( list(range(0x10350,0x1037b)) ), 'Old_Persian': frozenset( list(range(0x103a0,0x103c4)) + list(range(0x103c8,0x103d6)) ), 'Old_South_Arabian': frozenset( list(range(0x10a60,0x10a80)) ), 'Old_Turkic': frozenset( list(range(0x10c00,0x10c49)) ), 'Oriya': frozenset( list(range(0xb01,0xb04)) + list(range(0xb05,0xb0d)) + list(range(0xb0f,0xb11)) + list(range(0xb13,0xb29)) + list(range(0xb2a,0xb31)) + list(range(0xb32,0xb34)) + list(range(0xb35,0xb3a)) + list(range(0xb3c,0xb45)) + list(range(0xb47,0xb49)) + list(range(0xb4b,0xb4e)) + list(range(0xb56,0xb58)) + list(range(0xb5c,0xb5e)) + list(range(0xb5f,0xb64)) + list(range(0xb66,0xb78)) ), 'Osmanya': frozenset( list(range(0x10480,0x1049e)) + list(range(0x104a0,0x104aa)) ), 'Pahawh_Hmong': frozenset( list(range(0x16b00,0x16b46)) + list(range(0x16b50,0x16b5a)) + list(range(0x16b5b,0x16b62)) + list(range(0x16b63,0x16b78)) + list(range(0x16b7d,0x16b90)) ), 'Palmyrene': frozenset( list(range(0x10860,0x10880)) ), 'Pau_Cin_Hau': frozenset( list(range(0x11ac0,0x11af9)) ), 'Phags_Pa': frozenset( list(range(0xa840,0xa878)) ), 'Phoenician': frozenset( list(range(0x10900,0x1091c)) + [0x1091f] ), 'Psalter_Pahlavi': frozenset( list(range(0x10b80,0x10b92)) + list(range(0x10b99,0x10b9d)) + list(range(0x10ba9,0x10bb0)) ), 'Rejang': frozenset( list(range(0xa930,0xa954)) + [0xa95f] ), 'Runic': frozenset( list(range(0x16a0,0x16eb)) + list(range(0x16ee,0x16f9)) ), 'Samaritan': frozenset( list(range(0x800,0x82e)) + list(range(0x830,0x83f)) ), 'Saurashtra': frozenset( list(range(0xa880,0xa8c5)) + list(range(0xa8ce,0xa8da)) ), 'Sharada': frozenset( list(range(0x11180,0x111c9)) + [0x111cd] + list(range(0x111d0,0x111db)) ), 'Shavian': frozenset( list(range(0x10450,0x10480)) ), 'Siddham': frozenset( list(range(0x11580,0x115b6)) + list(range(0x115b8,0x115ca)) ), 'Sinhala': frozenset( list(range(0xd82,0xd84)) + list(range(0xd85,0xd97)) + list(range(0xd9a,0xdb2)) + list(range(0xdb3,0xdbc)) + [0xdbd] + list(range(0xdc0,0xdc7)) + [0xdca] + list(range(0xdcf,0xdd5)) + [0xdd6] + list(range(0xdd8,0xde0)) + list(range(0xde6,0xdf0)) + list(range(0xdf2,0xdf5)) + list(range(0x111e1,0x111f5)) ), 'Sora_Sompeng': frozenset( list(range(0x110d0,0x110e9)) + list(range(0x110f0,0x110fa)) ), 'Sundanese': frozenset( list(range(0x1b80,0x1bc0)) + list(range(0x1cc0,0x1cc8)) ), 'Syloti_Nagri': frozenset( list(range(0xa800,0xa82c)) ), 'Syriac': frozenset( list(range(0x700,0x70e)) + list(range(0x70f,0x74b)) + list(range(0x74d,0x750)) ), 'Tagalog': frozenset( list(range(0x1700,0x170d)) + list(range(0x170e,0x1715)) ), 'Tagbanwa': frozenset( list(range(0x1760,0x176d)) + list(range(0x176e,0x1771)) + list(range(0x1772,0x1774)) ), 'Tai_Le': frozenset( list(range(0x1950,0x196e)) + list(range(0x1970,0x1975)) ), 'Tai_Tham': frozenset( list(range(0x1a20,0x1a5f)) + list(range(0x1a60,0x1a7d)) + list(range(0x1a7f,0x1a8a)) + list(range(0x1a90,0x1a9a)) + list(range(0x1aa0,0x1aae)) ), 'Tai_Viet': frozenset( list(range(0xaa80,0xaac3)) + list(range(0xaadb,0xaae0)) ), 'Takri': frozenset( list(range(0x11680,0x116b8)) + list(range(0x116c0,0x116ca)) ), 'Tamil': frozenset( list(range(0xb82,0xb84)) + list(range(0xb85,0xb8b)) + list(range(0xb8e,0xb91)) + list(range(0xb92,0xb96)) + list(range(0xb99,0xb9b)) + [0xb9c] + list(range(0xb9e,0xba0)) + list(range(0xba3,0xba5)) + list(range(0xba8,0xbab)) + list(range(0xbae,0xbba)) + list(range(0xbbe,0xbc3)) + list(range(0xbc6,0xbc9)) + list(range(0xbca,0xbce)) + [0xbd0] + [0xbd7] + list(range(0xbe6,0xbfb)) ), 'Telugu': frozenset( list(range(0xc00,0xc04)) + list(range(0xc05,0xc0d)) + list(range(0xc0e,0xc11)) + list(range(0xc12,0xc29)) + list(range(0xc2a,0xc3a)) + list(range(0xc3d,0xc45)) + list(range(0xc46,0xc49)) + list(range(0xc4a,0xc4e)) + list(range(0xc55,0xc57)) + list(range(0xc58,0xc5a)) + list(range(0xc60,0xc64)) + list(range(0xc66,0xc70)) + list(range(0xc78,0xc80)) ), 'Thaana': frozenset( list(range(0x780,0x7b2)) ), 'Thai': frozenset( list(range(0xe01,0xe3b)) + list(range(0xe40,0xe5c)) ), 'Tibetan': frozenset( list(range(0xf00,0xf48)) + list(range(0xf49,0xf6d)) + list(range(0xf71,0xf98)) + list(range(0xf99,0xfbd)) + list(range(0xfbe,0xfcd)) + list(range(0xfce,0xfd5)) + list(range(0xfd9,0xfdb)) ), 'Tifinagh': frozenset( list(range(0x2d30,0x2d68)) + list(range(0x2d6f,0x2d71)) + [0x2d7f] ), 'Tirhuta': frozenset( list(range(0x11480,0x114c8)) + list(range(0x114d0,0x114da)) ), 'Ugaritic': frozenset( list(range(0x10380,0x1039e)) + [0x1039f] ), 'Vai': frozenset( list(range(0xa500,0xa62c)) ), 'Warang_Citi': frozenset( list(range(0x118a0,0x118f3)) + [0x118ff] ), 'Yi': frozenset( list(range(0xa000,0xa48d)) + list(range(0xa490,0xa4c7)) ), } joining_types = { 0x600: 'U', 0x601: 'U', 0x602: 'U', 0x603: 'U', 0x604: 'U', 0x605: 'U', 0x608: 'U', 0x60b: 'U', 0x620: 'D', 0x621: 'U', 0x622: 'R', 0x623: 'R', 0x624: 'R', 0x625: 'R', 0x626: 'D', 0x627: 'R', 0x628: 'D', 0x629: 'R', 0x62a: 'D', 0x62b: 'D', 0x62c: 'D', 0x62d: 'D', 0x62e: 'D', 0x62f: 'R', 0x630: 'R', 0x631: 'R', 0x632: 'R', 0x633: 'D', 0x634: 'D', 0x635: 'D', 0x636: 'D', 0x637: 'D', 0x638: 'D', 0x639: 'D', 0x63a: 'D', 0x63b: 'D', 0x63c: 'D', 0x63d: 'D', 0x63e: 'D', 0x63f: 'D', 0x640: 'C', 0x641: 'D', 0x642: 'D', 0x643: 'D', 0x644: 'D', 0x645: 'D', 0x646: 'D', 0x647: 'D', 0x648: 'R', 0x649: 'D', 0x64a: 'D', 0x66e: 'D', 0x66f: 'D', 0x671: 'R', 0x672: 'R', 0x673: 'R', 0x674: 'U', 0x675: 'R', 0x676: 'R', 0x677: 'R', 0x678: 'D', 0x679: 'D', 0x67a: 'D', 0x67b: 'D', 0x67c: 'D', 0x67d: 'D', 0x67e: 'D', 0x67f: 'D', 0x680: 'D', 0x681: 'D', 0x682: 'D', 0x683: 'D', 0x684: 'D', 0x685: 'D', 0x686: 'D', 0x687: 'D', 0x688: 'R', 0x689: 'R', 0x68a: 'R', 0x68b: 'R', 0x68c: 'R', 0x68d: 'R', 0x68e: 'R', 0x68f: 'R', 0x690: 'R', 0x691: 'R', 0x692: 'R', 0x693: 'R', 0x694: 'R', 0x695: 'R', 0x696: 'R', 0x697: 'R', 0x698: 'R', 0x699: 'R', 0x69a: 'D', 0x69b: 'D', 0x69c: 'D', 0x69d: 'D', 0x69e: 'D', 0x69f: 'D', 0x6a0: 'D', 0x6a1: 'D', 0x6a2: 'D', 0x6a3: 'D', 0x6a4: 'D', 0x6a5: 'D', 0x6a6: 'D', 0x6a7: 'D', 0x6a8: 'D', 0x6a9: 'D', 0x6aa: 'D', 0x6ab: 'D', 0x6ac: 'D', 0x6ad: 'D', 0x6ae: 'D', 0x6af: 'D', 0x6b0: 'D', 0x6b1: 'D', 0x6b2: 'D', 0x6b3: 'D', 0x6b4: 'D', 0x6b5: 'D', 0x6b6: 'D', 0x6b7: 'D', 0x6b8: 'D', 0x6b9: 'D', 0x6ba: 'D', 0x6bb: 'D', 0x6bc: 'D', 0x6bd: 'D', 0x6be: 'D', 0x6bf: 'D', 0x6c0: 'R', 0x6c1: 'D', 0x6c2: 'D', 0x6c3: 'R', 0x6c4: 'R', 0x6c5: 'R', 0x6c6: 'R', 0x6c7: 'R', 0x6c8: 'R', 0x6c9: 'R', 0x6ca: 'R', 0x6cb: 'R', 0x6cc: 'D', 0x6cd: 'R', 0x6ce: 'D', 0x6cf: 'R', 0x6d0: 'D', 0x6d1: 'D', 0x6d2: 'R', 0x6d3: 'R', 0x6d5: 'R', 0x6dd: 'U', 0x6ee: 'R', 0x6ef: 'R', 0x6fa: 'D', 0x6fb: 'D', 0x6fc: 'D', 0x6ff: 'D', 0x710: 'R', 0x712: 'D', 0x713: 'D', 0x714: 'D', 0x715: 'R', 0x716: 'R', 0x717: 'R', 0x718: 'R', 0x719: 'R', 0x71a: 'D', 0x71b: 'D', 0x71c: 'D', 0x71d: 'D', 0x71e: 'R', 0x71f: 'D', 0x720: 'D', 0x721: 'D', 0x722: 'D', 0x723: 'D', 0x724: 'D', 0x725: 'D', 0x726: 'D', 0x727: 'D', 0x728: 'R', 0x729: 'D', 0x72a: 'R', 0x72b: 'D', 0x72c: 'R', 0x72d: 'D', 0x72e: 'D', 0x72f: 'R', 0x74d: 'R', 0x74e: 'D', 0x74f: 'D', 0x750: 'D', 0x751: 'D', 0x752: 'D', 0x753: 'D', 0x754: 'D', 0x755: 'D', 0x756: 'D', 0x757: 'D', 0x758: 'D', 0x759: 'R', 0x75a: 'R', 0x75b: 'R', 0x75c: 'D', 0x75d: 'D', 0x75e: 'D', 0x75f: 'D', 0x760: 'D', 0x761: 'D', 0x762: 'D', 0x763: 'D', 0x764: 'D', 0x765: 'D', 0x766: 'D', 0x767: 'D', 0x768: 'D', 0x769: 'D', 0x76a: 'D', 0x76b: 'R', 0x76c: 'R', 0x76d: 'D', 0x76e: 'D', 0x76f: 'D', 0x770: 'D', 0x771: 'R', 0x772: 'D', 0x773: 'R', 0x774: 'R', 0x775: 'D', 0x776: 'D', 0x777: 'D', 0x778: 'R', 0x779: 'R', 0x77a: 'D', 0x77b: 'D', 0x77c: 'D', 0x77d: 'D', 0x77e: 'D', 0x77f: 'D', 0x7ca: 'D', 0x7cb: 'D', 0x7cc: 'D', 0x7cd: 'D', 0x7ce: 'D', 0x7cf: 'D', 0x7d0: 'D', 0x7d1: 'D', 0x7d2: 'D', 0x7d3: 'D', 0x7d4: 'D', 0x7d5: 'D', 0x7d6: 'D', 0x7d7: 'D', 0x7d8: 'D', 0x7d9: 'D', 0x7da: 'D', 0x7db: 'D', 0x7dc: 'D', 0x7dd: 'D', 0x7de: 'D', 0x7df: 'D', 0x7e0: 'D', 0x7e1: 'D', 0x7e2: 'D', 0x7e3: 'D', 0x7e4: 'D', 0x7e5: 'D', 0x7e6: 'D', 0x7e7: 'D', 0x7e8: 'D', 0x7e9: 'D', 0x7ea: 'D', 0x7fa: 'C', 0x840: 'R', 0x841: 'D', 0x842: 'D', 0x843: 'D', 0x844: 'D', 0x845: 'D', 0x846: 'R', 0x847: 'D', 0x848: 'D', 0x849: 'R', 0x84a: 'D', 0x84b: 'D', 0x84c: 'D', 0x84d: 'D', 0x84e: 'D', 0x84f: 'R', 0x850: 'D', 0x851: 'D', 0x852: 'D', 0x853: 'D', 0x854: 'R', 0x855: 'D', 0x856: 'U', 0x857: 'U', 0x858: 'U', 0x8a0: 'D', 0x8a1: 'D', 0x8a2: 'D', 0x8a3: 'D', 0x8a4: 'D', 0x8a5: 'D', 0x8a6: 'D', 0x8a7: 'D', 0x8a8: 'D', 0x8a9: 'D', 0x8aa: 'R', 0x8ab: 'R', 0x8ac: 'R', 0x8ad: 'U', 0x8ae: 'R', 0x8af: 'D', 0x8b0: 'D', 0x8b1: 'R', 0x8b2: 'R', 0x1806: 'U', 0x1807: 'D', 0x180a: 'C', 0x180e: 'U', 0x1820: 'D', 0x1821: 'D', 0x1822: 'D', 0x1823: 'D', 0x1824: 'D', 0x1825: 'D', 0x1826: 'D', 0x1827: 'D', 0x1828: 'D', 0x1829: 'D', 0x182a: 'D', 0x182b: 'D', 0x182c: 'D', 0x182d: 'D', 0x182e: 'D', 0x182f: 'D', 0x1830: 'D', 0x1831: 'D', 0x1832: 'D', 0x1833: 'D', 0x1834: 'D', 0x1835: 'D', 0x1836: 'D', 0x1837: 'D', 0x1838: 'D', 0x1839: 'D', 0x183a: 'D', 0x183b: 'D', 0x183c: 'D', 0x183d: 'D', 0x183e: 'D', 0x183f: 'D', 0x1840: 'D', 0x1841: 'D', 0x1842: 'D', 0x1843: 'D', 0x1844: 'D', 0x1845: 'D', 0x1846: 'D', 0x1847: 'D', 0x1848: 'D', 0x1849: 'D', 0x184a: 'D', 0x184b: 'D', 0x184c: 'D', 0x184d: 'D', 0x184e: 'D', 0x184f: 'D', 0x1850: 'D', 0x1851: 'D', 0x1852: 'D', 0x1853: 'D', 0x1854: 'D', 0x1855: 'D', 0x1856: 'D', 0x1857: 'D', 0x1858: 'D', 0x1859: 'D', 0x185a: 'D', 0x185b: 'D', 0x185c: 'D', 0x185d: 'D', 0x185e: 'D', 0x185f: 'D', 0x1860: 'D', 0x1861: 'D', 0x1862: 'D', 0x1863: 'D', 0x1864: 'D', 0x1865: 'D', 0x1866: 'D', 0x1867: 'D', 0x1868: 'D', 0x1869: 'D', 0x186a: 'D', 0x186b: 'D', 0x186c: 'D', 0x186d: 'D', 0x186e: 'D', 0x186f: 'D', 0x1870: 'D', 0x1871: 'D', 0x1872: 'D', 0x1873: 'D', 0x1874: 'D', 0x1875: 'D', 0x1876: 'D', 0x1877: 'D', 0x1880: 'U', 0x1881: 'U', 0x1882: 'U', 0x1883: 'U', 0x1884: 'U', 0x1885: 'U', 0x1886: 'U', 0x1887: 'D', 0x1888: 'D', 0x1889: 'D', 0x188a: 'D', 0x188b: 'D', 0x188c: 'D', 0x188d: 'D', 0x188e: 'D', 0x188f: 'D', 0x1890: 'D', 0x1891: 'D', 0x1892: 'D', 0x1893: 'D', 0x1894: 'D', 0x1895: 'D', 0x1896: 'D', 0x1897: 'D', 0x1898: 'D', 0x1899: 'D', 0x189a: 'D', 0x189b: 'D', 0x189c: 'D', 0x189d: 'D', 0x189e: 'D', 0x189f: 'D', 0x18a0: 'D', 0x18a1: 'D', 0x18a2: 'D', 0x18a3: 'D', 0x18a4: 'D', 0x18a5: 'D', 0x18a6: 'D', 0x18a7: 'D', 0x18a8: 'D', 0x18aa: 'D', 0x200c: 'U', 0x200d: 'C', 0x2066: 'U', 0x2067: 'U', 0x2068: 'U', 0x2069: 'U', 0xa840: 'D', 0xa841: 'D', 0xa842: 'D', 0xa843: 'D', 0xa844: 'D', 0xa845: 'D', 0xa846: 'D', 0xa847: 'D', 0xa848: 'D', 0xa849: 'D', 0xa84a: 'D', 0xa84b: 'D', 0xa84c: 'D', 0xa84d: 'D', 0xa84e: 'D', 0xa84f: 'D', 0xa850: 'D', 0xa851: 'D', 0xa852: 'D', 0xa853: 'D', 0xa854: 'D', 0xa855: 'D', 0xa856: 'D', 0xa857: 'D', 0xa858: 'D', 0xa859: 'D', 0xa85a: 'D', 0xa85b: 'D', 0xa85c: 'D', 0xa85d: 'D', 0xa85e: 'D', 0xa85f: 'D', 0xa860: 'D', 0xa861: 'D', 0xa862: 'D', 0xa863: 'D', 0xa864: 'D', 0xa865: 'D', 0xa866: 'D', 0xa867: 'D', 0xa868: 'D', 0xa869: 'D', 0xa86a: 'D', 0xa86b: 'D', 0xa86c: 'D', 0xa86d: 'D', 0xa86e: 'D', 0xa86f: 'D', 0xa870: 'D', 0xa871: 'D', 0xa872: 'L', 0xa873: 'U', 0x10ac0: 'D', 0x10ac1: 'D', 0x10ac2: 'D', 0x10ac3: 'D', 0x10ac4: 'D', 0x10ac5: 'R', 0x10ac6: 'U', 0x10ac7: 'R', 0x10ac8: 'U', 0x10ac9: 'R', 0x10aca: 'R', 0x10acb: 'U', 0x10acc: 'U', 0x10acd: 'L', 0x10ace: 'R', 0x10acf: 'R', 0x10ad0: 'R', 0x10ad1: 'R', 0x10ad2: 'R', 0x10ad3: 'D', 0x10ad4: 'D', 0x10ad5: 'D', 0x10ad6: 'D', 0x10ad7: 'L', 0x10ad8: 'D', 0x10ad9: 'D', 0x10ada: 'D', 0x10adb: 'D', 0x10adc: 'D', 0x10add: 'R', 0x10ade: 'D', 0x10adf: 'D', 0x10ae0: 'D', 0x10ae1: 'R', 0x10ae2: 'U', 0x10ae3: 'U', 0x10ae4: 'R', 0x10aeb: 'D', 0x10aec: 'D', 0x10aed: 'D', 0x10aee: 'D', 0x10aef: 'R', 0x10b80: 'D', 0x10b81: 'R', 0x10b82: 'D', 0x10b83: 'R', 0x10b84: 'R', 0x10b85: 'R', 0x10b86: 'D', 0x10b87: 'D', 0x10b88: 'D', 0x10b89: 'R', 0x10b8a: 'D', 0x10b8b: 'D', 0x10b8c: 'R', 0x10b8d: 'D', 0x10b8e: 'R', 0x10b8f: 'R', 0x10b90: 'D', 0x10b91: 'R', 0x10ba9: 'R', 0x10baa: 'R', 0x10bab: 'R', 0x10bac: 'R', 0x10bad: 'D', 0x10bae: 'D', 0x10baf: 'U', } codepoint_classes = { 'PVALID': frozenset( [0x2d] + list(range(0x30,0x3a)) + list(range(0x61,0x7b)) + list(range(0xdf,0xf7)) + list(range(0xf8,0x100)) + [0x101] + [0x103] + [0x105] + [0x107] + [0x109] + [0x10b] + [0x10d] + [0x10f] + [0x111] + [0x113] + [0x115] + [0x117] + [0x119] + [0x11b] + [0x11d] + [0x11f] + [0x121] + [0x123] + [0x125] + [0x127] + [0x129] + [0x12b] + [0x12d] + [0x12f] + [0x131] + [0x135] + list(range(0x137,0x139)) + [0x13a] + [0x13c] + [0x13e] + [0x142] + [0x144] + [0x146] + [0x148] + [0x14b] + [0x14d] + [0x14f] + [0x151] + [0x153] + [0x155] + [0x157] + [0x159] + [0x15b] + [0x15d] + [0x15f] + [0x161] + [0x163] + [0x165] + [0x167] + [0x169] + [0x16b] + [0x16d] + [0x16f] + [0x171] + [0x173] + [0x175] + [0x177] + [0x17a] + [0x17c] + [0x17e] + [0x180] + [0x183] + [0x185] + [0x188] + list(range(0x18c,0x18e)) + [0x192] + [0x195] + list(range(0x199,0x19c)) + [0x19e] + [0x1a1] + [0x1a3] + [0x1a5] + [0x1a8] + list(range(0x1aa,0x1ac)) + [0x1ad] + [0x1b0] + [0x1b4] + [0x1b6] + list(range(0x1b9,0x1bc)) + list(range(0x1bd,0x1c4)) + [0x1ce] + [0x1d0] + [0x1d2] + [0x1d4] + [0x1d6] + [0x1d8] + [0x1da] + list(range(0x1dc,0x1de)) + [0x1df] + [0x1e1] + [0x1e3] + [0x1e5] + [0x1e7] + [0x1e9] + [0x1eb] + [0x1ed] + list(range(0x1ef,0x1f1)) + [0x1f5] + [0x1f9] + [0x1fb] + [0x1fd] + [0x1ff] + [0x201] + [0x203] + [0x205] + [0x207] + [0x209] + [0x20b] + [0x20d] + [0x20f] + [0x211] + [0x213] + [0x215] + [0x217] + [0x219] + [0x21b] + [0x21d] + [0x21f] + [0x221] + [0x223] + [0x225] + [0x227] + [0x229] + [0x22b] + [0x22d] + [0x22f] + [0x231] + list(range(0x233,0x23a)) + [0x23c] + list(range(0x23f,0x241)) + [0x242] + [0x247] + [0x249] + [0x24b] + [0x24d] + list(range(0x24f,0x2b0)) + list(range(0x2b9,0x2c2)) + list(range(0x2c6,0x2d2)) + [0x2ec] + [0x2ee] + list(range(0x300,0x340)) + [0x342] + list(range(0x346,0x34f)) + list(range(0x350,0x370)) + [0x371] + [0x373] + [0x377] + list(range(0x37b,0x37e)) + [0x390] + list(range(0x3ac,0x3cf)) + [0x3d7] + [0x3d9] + [0x3db] + [0x3dd] + [0x3df] + [0x3e1] + [0x3e3] + [0x3e5] + [0x3e7] + [0x3e9] + [0x3eb] + [0x3ed] + [0x3ef] + [0x3f3] + [0x3f8] + list(range(0x3fb,0x3fd)) + list(range(0x430,0x460)) + [0x461] + [0x463] + [0x465] + [0x467] + [0x469] + [0x46b] + [0x46d] + [0x46f] + [0x471] + [0x473] + [0x475] + [0x477] + [0x479] + [0x47b] + [0x47d] + [0x47f] + [0x481] + list(range(0x483,0x488)) + [0x48b] + [0x48d] + [0x48f] + [0x491] + [0x493] + [0x495] + [0x497] + [0x499] + [0x49b] + [0x49d] + [0x49f] + [0x4a1] + [0x4a3] + [0x4a5] + [0x4a7] + [0x4a9] + [0x4ab] + [0x4ad] + [0x4af] + [0x4b1] + [0x4b3] + [0x4b5] + [0x4b7] + [0x4b9] + [0x4bb] + [0x4bd] + [0x4bf] + [0x4c2] + [0x4c4] + [0x4c6] + [0x4c8] + [0x4ca] + [0x4cc] + list(range(0x4ce,0x4d0)) + [0x4d1] + [0x4d3] + [0x4d5] + [0x4d7] + [0x4d9] + [0x4db] + [0x4dd] + [0x4df] + [0x4e1] + [0x4e3] + [0x4e5] + [0x4e7] + [0x4e9] + [0x4eb] + [0x4ed] + [0x4ef] + [0x4f1] + [0x4f3] + [0x4f5] + [0x4f7] + [0x4f9] + [0x4fb] + [0x4fd] + [0x4ff] + [0x501] + [0x503] + [0x505] + [0x507] + [0x509] + [0x50b] + [0x50d] + [0x50f] + [0x511] + [0x513] + [0x515] + [0x517] + [0x519] + [0x51b] + [0x51d] + [0x51f] + [0x521] + [0x523] + [0x525] + [0x527] + [0x559] + list(range(0x561,0x587)) + list(range(0x591,0x5be)) + [0x5bf] + list(range(0x5c1,0x5c3)) + list(range(0x5c4,0x5c6)) + [0x5c7] + list(range(0x5d0,0x5eb)) + list(range(0x5f0,0x5f3)) + list(range(0x610,0x61b)) + list(range(0x620,0x640)) + list(range(0x641,0x660)) + list(range(0x66e,0x675)) + list(range(0x679,0x6d4)) + list(range(0x6d5,0x6dd)) + list(range(0x6df,0x6e9)) + list(range(0x6ea,0x6f0)) + list(range(0x6fa,0x700)) + list(range(0x710,0x74b)) + list(range(0x74d,0x7b2)) + list(range(0x7c0,0x7f6)) + list(range(0x800,0x82e)) + list(range(0x840,0x85c)) + [0x8a0] + list(range(0x8a2,0x8ad)) + list(range(0x8e4,0x8ff)) + list(range(0x900,0x958)) + list(range(0x960,0x964)) + list(range(0x966,0x970)) + list(range(0x971,0x978)) + list(range(0x979,0x980)) + list(range(0x981,0x984)) + list(range(0x985,0x98d)) + list(range(0x98f,0x991)) + list(range(0x993,0x9a9)) + list(range(0x9aa,0x9b1)) + [0x9b2] + list(range(0x9b6,0x9ba)) + list(range(0x9bc,0x9c5)) + list(range(0x9c7,0x9c9)) + list(range(0x9cb,0x9cf)) + [0x9d7] + list(range(0x9e0,0x9e4)) + list(range(0x9e6,0x9f2)) + list(range(0xa01,0xa04)) + list(range(0xa05,0xa0b)) + list(range(0xa0f,0xa11)) + list(range(0xa13,0xa29)) + list(range(0xa2a,0xa31)) + [0xa32] + [0xa35] + list(range(0xa38,0xa3a)) + [0xa3c] + list(range(0xa3e,0xa43)) + list(range(0xa47,0xa49)) + list(range(0xa4b,0xa4e)) + [0xa51] + [0xa5c] + list(range(0xa66,0xa76)) + list(range(0xa81,0xa84)) + list(range(0xa85,0xa8e)) + list(range(0xa8f,0xa92)) + list(range(0xa93,0xaa9)) + list(range(0xaaa,0xab1)) + list(range(0xab2,0xab4)) + list(range(0xab5,0xaba)) + list(range(0xabc,0xac6)) + list(range(0xac7,0xaca)) + list(range(0xacb,0xace)) + [0xad0] + list(range(0xae0,0xae4)) + list(range(0xae6,0xaf0)) + list(range(0xb01,0xb04)) + list(range(0xb05,0xb0d)) + list(range(0xb0f,0xb11)) + list(range(0xb13,0xb29)) + list(range(0xb2a,0xb31)) + list(range(0xb32,0xb34)) + list(range(0xb35,0xb3a)) + list(range(0xb3c,0xb45)) + list(range(0xb47,0xb49)) + list(range(0xb4b,0xb4e)) + list(range(0xb56,0xb58)) + list(range(0xb5f,0xb64)) + list(range(0xb66,0xb70)) + [0xb71] + list(range(0xb82,0xb84)) + list(range(0xb85,0xb8b)) + list(range(0xb8e,0xb91)) + list(range(0xb92,0xb96)) + list(range(0xb99,0xb9b)) + [0xb9c] + list(range(0xb9e,0xba0)) + list(range(0xba3,0xba5)) + list(range(0xba8,0xbab)) + list(range(0xbae,0xbba)) + list(range(0xbbe,0xbc3)) + list(range(0xbc6,0xbc9)) + list(range(0xbca,0xbce)) + [0xbd0] + [0xbd7] + list(range(0xbe6,0xbf0)) + list(range(0xc01,0xc04)) + list(range(0xc05,0xc0d)) + list(range(0xc0e,0xc11)) + list(range(0xc12,0xc29)) + list(range(0xc2a,0xc34)) + list(range(0xc35,0xc3a)) + list(range(0xc3d,0xc45)) + list(range(0xc46,0xc49)) + list(range(0xc4a,0xc4e)) + list(range(0xc55,0xc57)) + list(range(0xc58,0xc5a)) + list(range(0xc60,0xc64)) + list(range(0xc66,0xc70)) + list(range(0xc82,0xc84)) + list(range(0xc85,0xc8d)) + list(range(0xc8e,0xc91)) + list(range(0xc92,0xca9)) + list(range(0xcaa,0xcb4)) + list(range(0xcb5,0xcba)) + list(range(0xcbc,0xcc5)) + list(range(0xcc6,0xcc9)) + list(range(0xcca,0xcce)) + list(range(0xcd5,0xcd7)) + [0xcde] + list(range(0xce0,0xce4)) + list(range(0xce6,0xcf0)) + list(range(0xcf1,0xcf3)) + list(range(0xd02,0xd04)) + list(range(0xd05,0xd0d)) + list(range(0xd0e,0xd11)) + list(range(0xd12,0xd3b)) + list(range(0xd3d,0xd45)) + list(range(0xd46,0xd49)) + list(range(0xd4a,0xd4f)) + [0xd57] + list(range(0xd60,0xd64)) + list(range(0xd66,0xd70)) + list(range(0xd7a,0xd80)) + list(range(0xd82,0xd84)) + list(range(0xd85,0xd97)) + list(range(0xd9a,0xdb2)) + list(range(0xdb3,0xdbc)) + [0xdbd] + list(range(0xdc0,0xdc7)) + [0xdca] + list(range(0xdcf,0xdd5)) + [0xdd6] + list(range(0xdd8,0xde0)) + list(range(0xdf2,0xdf4)) + list(range(0xe01,0xe33)) + list(range(0xe34,0xe3b)) + list(range(0xe40,0xe4f)) + list(range(0xe50,0xe5a)) + list(range(0xe81,0xe83)) + [0xe84] + list(range(0xe87,0xe89)) + [0xe8a] + [0xe8d] + list(range(0xe94,0xe98)) + list(range(0xe99,0xea0)) + list(range(0xea1,0xea4)) + [0xea5] + [0xea7] + list(range(0xeaa,0xeac)) + list(range(0xead,0xeb3)) + list(range(0xeb4,0xeba)) + list(range(0xebb,0xebe)) + list(range(0xec0,0xec5)) + [0xec6] + list(range(0xec8,0xece)) + list(range(0xed0,0xeda)) + list(range(0xede,0xee0)) + [0xf00] + [0xf0b] + list(range(0xf18,0xf1a)) + list(range(0xf20,0xf2a)) + [0xf35] + [0xf37] + [0xf39] + list(range(0xf3e,0xf43)) + list(range(0xf44,0xf48)) + list(range(0xf49,0xf4d)) + list(range(0xf4e,0xf52)) + list(range(0xf53,0xf57)) + list(range(0xf58,0xf5c)) + list(range(0xf5d,0xf69)) + list(range(0xf6a,0xf6d)) + list(range(0xf71,0xf73)) + [0xf74] + list(range(0xf7a,0xf81)) + list(range(0xf82,0xf85)) + list(range(0xf86,0xf93)) + list(range(0xf94,0xf98)) + list(range(0xf99,0xf9d)) + list(range(0xf9e,0xfa2)) + list(range(0xfa3,0xfa7)) + list(range(0xfa8,0xfac)) + list(range(0xfad,0xfb9)) + list(range(0xfba,0xfbd)) + [0xfc6] + list(range(0x1000,0x104a)) + list(range(0x1050,0x109e)) + list(range(0x10d0,0x10fb)) + list(range(0x10fd,0x1100)) + list(range(0x1200,0x1249)) + list(range(0x124a,0x124e)) + list(range(0x1250,0x1257)) + [0x1258] + list(range(0x125a,0x125e)) + list(range(0x1260,0x1289)) + list(range(0x128a,0x128e)) + list(range(0x1290,0x12b1)) + list(range(0x12b2,0x12b6)) + list(range(0x12b8,0x12bf)) + [0x12c0] + list(range(0x12c2,0x12c6)) + list(range(0x12c8,0x12d7)) + list(range(0x12d8,0x1311)) + list(range(0x1312,0x1316)) + list(range(0x1318,0x135b)) + list(range(0x135d,0x1360)) + list(range(0x1380,0x1390)) + list(range(0x13a0,0x13f5)) + list(range(0x1401,0x166d)) + list(range(0x166f,0x1680)) + list(range(0x1681,0x169b)) + list(range(0x16a0,0x16eb)) + list(range(0x1700,0x170d)) + list(range(0x170e,0x1715)) + list(range(0x1720,0x1735)) + list(range(0x1740,0x1754)) + list(range(0x1760,0x176d)) + list(range(0x176e,0x1771)) + list(range(0x1772,0x1774)) + list(range(0x1780,0x17b4)) + list(range(0x17b6,0x17d4)) + [0x17d7] + list(range(0x17dc,0x17de)) + list(range(0x17e0,0x17ea)) + list(range(0x1810,0x181a)) + list(range(0x1820,0x1878)) + list(range(0x1880,0x18ab)) + list(range(0x18b0,0x18f6)) + list(range(0x1900,0x191d)) + list(range(0x1920,0x192c)) + list(range(0x1930,0x193c)) + list(range(0x1946,0x196e)) + list(range(0x1970,0x1975)) + list(range(0x1980,0x19ac)) + list(range(0x19b0,0x19ca)) + list(range(0x19d0,0x19da)) + list(range(0x1a00,0x1a1c)) + list(range(0x1a20,0x1a5f)) + list(range(0x1a60,0x1a7d)) + list(range(0x1a7f,0x1a8a)) + list(range(0x1a90,0x1a9a)) + [0x1aa7] + list(range(0x1b00,0x1b4c)) + list(range(0x1b50,0x1b5a)) + list(range(0x1b6b,0x1b74)) + list(range(0x1b80,0x1bf4)) + list(range(0x1c00,0x1c38)) + list(range(0x1c40,0x1c4a)) + list(range(0x1c4d,0x1c7e)) + list(range(0x1cd0,0x1cd3)) + list(range(0x1cd4,0x1cf7)) + list(range(0x1d00,0x1d2c)) + [0x1d2f] + [0x1d3b] + [0x1d4e] + list(range(0x1d6b,0x1d78)) + list(range(0x1d79,0x1d9b)) + list(range(0x1dc0,0x1de7)) + list(range(0x1dfc,0x1e00)) + [0x1e01] + [0x1e03] + [0x1e05] + [0x1e07] + [0x1e09] + [0x1e0b] + [0x1e0d] + [0x1e0f] + [0x1e11] + [0x1e13] + [0x1e15] + [0x1e17] + [0x1e19] + [0x1e1b] + [0x1e1d] + [0x1e1f] + [0x1e21] + [0x1e23] + [0x1e25] + [0x1e27] + [0x1e29] + [0x1e2b] + [0x1e2d] + [0x1e2f] + [0x1e31] + [0x1e33] + [0x1e35] + [0x1e37] + [0x1e39] + [0x1e3b] + [0x1e3d] + [0x1e3f] + [0x1e41] + [0x1e43] + [0x1e45] + [0x1e47] + [0x1e49] + [0x1e4b] + [0x1e4d] + [0x1e4f] + [0x1e51] + [0x1e53] + [0x1e55] + [0x1e57] + [0x1e59] + [0x1e5b] + [0x1e5d] + [0x1e5f] + [0x1e61] + [0x1e63] + [0x1e65] + [0x1e67] + [0x1e69] + [0x1e6b] + [0x1e6d] + [0x1e6f] + [0x1e71] + [0x1e73] + [0x1e75] + [0x1e77] + [0x1e79] + [0x1e7b] + [0x1e7d] + [0x1e7f] + [0x1e81] + [0x1e83] + [0x1e85] + [0x1e87] + [0x1e89] + [0x1e8b] + [0x1e8d] + [0x1e8f] + [0x1e91] + [0x1e93] + list(range(0x1e95,0x1e9a)) + list(range(0x1e9c,0x1e9e)) + [0x1e9f] + [0x1ea1] + [0x1ea3] + [0x1ea5] + [0x1ea7] + [0x1ea9] + [0x1eab] + [0x1ead] + [0x1eaf] + [0x1eb1] + [0x1eb3] + [0x1eb5] + [0x1eb7] + [0x1eb9] + [0x1ebb] + [0x1ebd] + [0x1ebf] + [0x1ec1] + [0x1ec3] + [0x1ec5] + [0x1ec7] + [0x1ec9] + [0x1ecb] + [0x1ecd] + [0x1ecf] + [0x1ed1] + [0x1ed3] + [0x1ed5] + [0x1ed7] + [0x1ed9] + [0x1edb] + [0x1edd] + [0x1edf] + [0x1ee1] + [0x1ee3] + [0x1ee5] + [0x1ee7] + [0x1ee9] + [0x1eeb] + [0x1eed] + [0x1eef] + [0x1ef1] + [0x1ef3] + [0x1ef5] + [0x1ef7] + [0x1ef9] + [0x1efb] + [0x1efd] + list(range(0x1eff,0x1f08)) + list(range(0x1f10,0x1f16)) + list(range(0x1f20,0x1f28)) + list(range(0x1f30,0x1f38)) + list(range(0x1f40,0x1f46)) + list(range(0x1f50,0x1f58)) + list(range(0x1f60,0x1f68)) + [0x1f70] + [0x1f72] + [0x1f74] + [0x1f76] + [0x1f78] + [0x1f7a] + [0x1f7c] + list(range(0x1fb0,0x1fb2)) + [0x1fb6] + [0x1fc6] + list(range(0x1fd0,0x1fd3)) + list(range(0x1fd6,0x1fd8)) + list(range(0x1fe0,0x1fe3)) + list(range(0x1fe4,0x1fe8)) + [0x1ff6] + [0x214e] + [0x2184] + list(range(0x2c30,0x2c5f)) + [0x2c61] + list(range(0x2c65,0x2c67)) + [0x2c68] + [0x2c6a] + [0x2c6c] + [0x2c71] + list(range(0x2c73,0x2c75)) + list(range(0x2c76,0x2c7c)) + [0x2c81] + [0x2c83] + [0x2c85] + [0x2c87] + [0x2c89] + [0x2c8b] + [0x2c8d] + [0x2c8f] + [0x2c91] + [0x2c93] + [0x2c95] + [0x2c97] + [0x2c99] + [0x2c9b] + [0x2c9d] + [0x2c9f] + [0x2ca1] + [0x2ca3] + [0x2ca5] + [0x2ca7] + [0x2ca9] + [0x2cab] + [0x2cad] + [0x2caf] + [0x2cb1] + [0x2cb3] + [0x2cb5] + [0x2cb7] + [0x2cb9] + [0x2cbb] + [0x2cbd] + [0x2cbf] + [0x2cc1] + [0x2cc3] + [0x2cc5] + [0x2cc7] + [0x2cc9] + [0x2ccb] + [0x2ccd] + [0x2ccf] + [0x2cd1] + [0x2cd3] + [0x2cd5] + [0x2cd7] + [0x2cd9] + [0x2cdb] + [0x2cdd] + [0x2cdf] + [0x2ce1] + list(range(0x2ce3,0x2ce5)) + [0x2cec] + list(range(0x2cee,0x2cf2)) + [0x2cf3] + list(range(0x2d00,0x2d26)) + [0x2d27] + [0x2d2d] + list(range(0x2d30,0x2d68)) + list(range(0x2d7f,0x2d97)) + list(range(0x2da0,0x2da7)) + list(range(0x2da8,0x2daf)) + list(range(0x2db0,0x2db7)) + list(range(0x2db8,0x2dbf)) + list(range(0x2dc0,0x2dc7)) + list(range(0x2dc8,0x2dcf)) + list(range(0x2dd0,0x2dd7)) + list(range(0x2dd8,0x2ddf)) + list(range(0x2de0,0x2e00)) + [0x2e2f] + list(range(0x3005,0x3008)) + list(range(0x302a,0x302e)) + [0x303c] + list(range(0x3041,0x3097)) + list(range(0x3099,0x309b)) + list(range(0x309d,0x309f)) + list(range(0x30a1,0x30fb)) + list(range(0x30fc,0x30ff)) + list(range(0x3105,0x312e)) + list(range(0x31a0,0x31bb)) + list(range(0x31f0,0x3200)) + list(range(0x3400,0x4db6)) + list(range(0x4e00,0x9fcd)) + list(range(0xa000,0xa48d)) + list(range(0xa4d0,0xa4fe)) + list(range(0xa500,0xa60d)) + list(range(0xa610,0xa62c)) + [0xa641] + [0xa643] + [0xa645] + [0xa647] + [0xa649] + [0xa64b] + [0xa64d] + [0xa64f] + [0xa651] + [0xa653] + [0xa655] + [0xa657] + [0xa659] + [0xa65b] + [0xa65d] + [0xa65f] + [0xa661] + [0xa663] + [0xa665] + [0xa667] + [0xa669] + [0xa66b] + list(range(0xa66d,0xa670)) + list(range(0xa674,0xa67e)) + [0xa67f] + [0xa681] + [0xa683] + [0xa685] + [0xa687] + [0xa689] + [0xa68b] + [0xa68d] + [0xa68f] + [0xa691] + [0xa693] + [0xa695] + [0xa697] + list(range(0xa69f,0xa6e6)) + list(range(0xa6f0,0xa6f2)) + list(range(0xa717,0xa720)) + [0xa723] + [0xa725] + [0xa727] + [0xa729] + [0xa72b] + [0xa72d] + list(range(0xa72f,0xa732)) + [0xa733] + [0xa735] + [0xa737] + [0xa739] + [0xa73b] + [0xa73d] + [0xa73f] + [0xa741] + [0xa743] + [0xa745] + [0xa747] + [0xa749] + [0xa74b] + [0xa74d] + [0xa74f] + [0xa751] + [0xa753] + [0xa755] + [0xa757] + [0xa759] + [0xa75b] + [0xa75d] + [0xa75f] + [0xa761] + [0xa763] + [0xa765] + [0xa767] + [0xa769] + [0xa76b] + [0xa76d] + [0xa76f] + list(range(0xa771,0xa779)) + [0xa77a] + [0xa77c] + [0xa77f] + [0xa781] + [0xa783] + [0xa785] + list(range(0xa787,0xa789)) + [0xa78c] + [0xa78e] + [0xa791] + [0xa793] + [0xa7a1] + [0xa7a3] + [0xa7a5] + [0xa7a7] + [0xa7a9] + list(range(0xa7fa,0xa828)) + list(range(0xa840,0xa874)) + list(range(0xa880,0xa8c5)) + list(range(0xa8d0,0xa8da)) + list(range(0xa8e0,0xa8f8)) + [0xa8fb] + list(range(0xa900,0xa92e)) + list(range(0xa930,0xa954)) + list(range(0xa980,0xa9c1)) + list(range(0xa9cf,0xa9da)) + list(range(0xaa00,0xaa37)) + list(range(0xaa40,0xaa4e)) + list(range(0xaa50,0xaa5a)) + list(range(0xaa60,0xaa77)) + list(range(0xaa7a,0xaa7c)) + list(range(0xaa80,0xaac3)) + list(range(0xaadb,0xaade)) + list(range(0xaae0,0xaaf0)) + list(range(0xaaf2,0xaaf7)) + list(range(0xab01,0xab07)) + list(range(0xab09,0xab0f)) + list(range(0xab11,0xab17)) + list(range(0xab20,0xab27)) + list(range(0xab28,0xab2f)) + list(range(0xabc0,0xabeb)) + list(range(0xabec,0xabee)) + list(range(0xabf0,0xabfa)) + list(range(0xac00,0xd7a4)) + list(range(0xfa0e,0xfa10)) + [0xfa11] + list(range(0xfa13,0xfa15)) + [0xfa1f] + [0xfa21] + list(range(0xfa23,0xfa25)) + list(range(0xfa27,0xfa2a)) + [0xfb1e] + list(range(0xfe20,0xfe27)) + [0xfe73] + list(range(0x10000,0x1000c)) + list(range(0x1000d,0x10027)) + list(range(0x10028,0x1003b)) + list(range(0x1003c,0x1003e)) + list(range(0x1003f,0x1004e)) + list(range(0x10050,0x1005e)) + list(range(0x10080,0x100fb)) + [0x101fd] + list(range(0x10280,0x1029d)) + list(range(0x102a0,0x102d1)) + list(range(0x10300,0x1031f)) + list(range(0x10330,0x10341)) + list(range(0x10342,0x1034a)) + list(range(0x10380,0x1039e)) + list(range(0x103a0,0x103c4)) + list(range(0x103c8,0x103d0)) + list(range(0x10428,0x1049e)) + list(range(0x104a0,0x104aa)) + list(range(0x10800,0x10806)) + [0x10808] + list(range(0x1080a,0x10836)) + list(range(0x10837,0x10839)) + [0x1083c] + list(range(0x1083f,0x10856)) + list(range(0x10900,0x10916)) + list(range(0x10920,0x1093a)) + list(range(0x10980,0x109b8)) + list(range(0x109be,0x109c0)) + list(range(0x10a00,0x10a04)) + list(range(0x10a05,0x10a07)) + list(range(0x10a0c,0x10a14)) + list(range(0x10a15,0x10a18)) + list(range(0x10a19,0x10a34)) + list(range(0x10a38,0x10a3b)) + [0x10a3f] + list(range(0x10a60,0x10a7d)) + list(range(0x10b00,0x10b36)) + list(range(0x10b40,0x10b56)) + list(range(0x10b60,0x10b73)) + list(range(0x10c00,0x10c49)) + list(range(0x11000,0x11047)) + list(range(0x11066,0x11070)) + list(range(0x11080,0x110bb)) + list(range(0x110d0,0x110e9)) + list(range(0x110f0,0x110fa)) + list(range(0x11100,0x11135)) + list(range(0x11136,0x11140)) + list(range(0x11180,0x111c5)) + list(range(0x111d0,0x111da)) + list(range(0x11680,0x116b8)) + list(range(0x116c0,0x116ca)) + list(range(0x12000,0x1236f)) + list(range(0x13000,0x1342f)) + list(range(0x16800,0x16a39)) + list(range(0x16f00,0x16f45)) + list(range(0x16f50,0x16f7f)) + list(range(0x16f8f,0x16fa0)) + list(range(0x1b000,0x1b002)) + list(range(0x20000,0x2a6d7)) + list(range(0x2a700,0x2b735)) + list(range(0x2b740,0x2b81e)) ), 'CONTEXTJ': frozenset( list(range(0x200c,0x200e)) ), 'CONTEXTO': frozenset( [0xb7] + [0x375] + list(range(0x5f3,0x5f5)) + list(range(0x660,0x66a)) + list(range(0x6f0,0x6fa)) + [0x30fb] ), 'DISALLOWED': frozenset( list(range(0x0,0x2d)) + list(range(0x2e,0x30)) + list(range(0x3a,0x61)) + list(range(0x7b,0xb7)) + list(range(0xb8,0xdf)) + [0xf7] + [0x100] + [0x102] + [0x104] + [0x106] + [0x108] + [0x10a] + [0x10c] + [0x10e] + [0x110] + [0x112] + [0x114] + [0x116] + [0x118] + [0x11a] + [0x11c] + [0x11e] + [0x120] + [0x122] + [0x124] + [0x126] + [0x128] + [0x12a] + [0x12c] + [0x12e] + [0x130] + list(range(0x132,0x135)) + [0x136] + [0x139] + [0x13b] + [0x13d] + list(range(0x13f,0x142)) + [0x143] + [0x145] + [0x147] + list(range(0x149,0x14b)) + [0x14c] + [0x14e] + [0x150] + [0x152] + [0x154] + [0x156] + [0x158] + [0x15a] + [0x15c] + [0x15e] + [0x160] + [0x162] + [0x164] + [0x166] + [0x168] + [0x16a] + [0x16c] + [0x16e] + [0x170] + [0x172] + [0x174] + [0x176] + list(range(0x178,0x17a)) + [0x17b] + [0x17d] + [0x17f] + list(range(0x181,0x183)) + [0x184] + list(range(0x186,0x188)) + list(range(0x189,0x18c)) + list(range(0x18e,0x192)) + list(range(0x193,0x195)) + list(range(0x196,0x199)) + list(range(0x19c,0x19e)) + list(range(0x19f,0x1a1)) + [0x1a2] + [0x1a4] + list(range(0x1a6,0x1a8)) + [0x1a9] + [0x1ac] + list(range(0x1ae,0x1b0)) + list(range(0x1b1,0x1b4)) + [0x1b5] + list(range(0x1b7,0x1b9)) + [0x1bc] + list(range(0x1c4,0x1ce)) + [0x1cf] + [0x1d1] + [0x1d3] + [0x1d5] + [0x1d7] + [0x1d9] + [0x1db] + [0x1de] + [0x1e0] + [0x1e2] + [0x1e4] + [0x1e6] + [0x1e8] + [0x1ea] + [0x1ec] + [0x1ee] + list(range(0x1f1,0x1f5)) + list(range(0x1f6,0x1f9)) + [0x1fa] + [0x1fc] + [0x1fe] + [0x200] + [0x202] + [0x204] + [0x206] + [0x208] + [0x20a] + [0x20c] + [0x20e] + [0x210] + [0x212] + [0x214] + [0x216] + [0x218] + [0x21a] + [0x21c] + [0x21e] + [0x220] + [0x222] + [0x224] + [0x226] + [0x228] + [0x22a] + [0x22c] + [0x22e] + [0x230] + [0x232] + list(range(0x23a,0x23c)) + list(range(0x23d,0x23f)) + [0x241] + list(range(0x243,0x247)) + [0x248] + [0x24a] + [0x24c] + [0x24e] + list(range(0x2b0,0x2b9)) + list(range(0x2c2,0x2c6)) + list(range(0x2d2,0x2ec)) + [0x2ed] + list(range(0x2ef,0x300)) + list(range(0x340,0x342)) + list(range(0x343,0x346)) + [0x34f] + [0x370] + [0x372] + [0x374] + [0x376] + [0x37a] + [0x37e] + list(range(0x384,0x38b)) + [0x38c] + list(range(0x38e,0x390)) + list(range(0x391,0x3a2)) + list(range(0x3a3,0x3ac)) + list(range(0x3cf,0x3d7)) + [0x3d8] + [0x3da] + [0x3dc] + [0x3de] + [0x3e0] + [0x3e2] + [0x3e4] + [0x3e6] + [0x3e8] + [0x3ea] + [0x3ec] + [0x3ee] + list(range(0x3f0,0x3f3)) + list(range(0x3f4,0x3f8)) + list(range(0x3f9,0x3fb)) + list(range(0x3fd,0x430)) + [0x460] + [0x462] + [0x464] + [0x466] + [0x468] + [0x46a] + [0x46c] + [0x46e] + [0x470] + [0x472] + [0x474] + [0x476] + [0x478] + [0x47a] + [0x47c] + [0x47e] + [0x480] + [0x482] + list(range(0x488,0x48b)) + [0x48c] + [0x48e] + [0x490] + [0x492] + [0x494] + [0x496] + [0x498] + [0x49a] + [0x49c] + [0x49e] + [0x4a0] + [0x4a2] + [0x4a4] + [0x4a6] + [0x4a8] + [0x4aa] + [0x4ac] + [0x4ae] + [0x4b0] + [0x4b2] + [0x4b4] + [0x4b6] + [0x4b8] + [0x4ba] + [0x4bc] + [0x4be] + list(range(0x4c0,0x4c2)) + [0x4c3] + [0x4c5] + [0x4c7] + [0x4c9] + [0x4cb] + [0x4cd] + [0x4d0] + [0x4d2] + [0x4d4] + [0x4d6] + [0x4d8] + [0x4da] + [0x4dc] + [0x4de] + [0x4e0] + [0x4e2] + [0x4e4] + [0x4e6] + [0x4e8] + [0x4ea] + [0x4ec] + [0x4ee] + [0x4f0] + [0x4f2] + [0x4f4] + [0x4f6] + [0x4f8] + [0x4fa] + [0x4fc] + [0x4fe] + [0x500] + [0x502] + [0x504] + [0x506] + [0x508] + [0x50a] + [0x50c] + [0x50e] + [0x510] + [0x512] + [0x514] + [0x516] + [0x518] + [0x51a] + [0x51c] + [0x51e] + [0x520] + [0x522] + [0x524] + [0x526] + list(range(0x531,0x557)) + list(range(0x55a,0x560)) + [0x587] + list(range(0x589,0x58b)) + [0x58f] + [0x5be] + [0x5c0] + [0x5c3] + [0x5c6] + list(range(0x600,0x605)) + list(range(0x606,0x610)) + list(range(0x61b,0x61d)) + list(range(0x61e,0x620)) + [0x640] + list(range(0x66a,0x66e)) + list(range(0x675,0x679)) + [0x6d4] + list(range(0x6dd,0x6df)) + [0x6e9] + list(range(0x700,0x70e)) + [0x70f] + list(range(0x7f6,0x7fb)) + list(range(0x830,0x83f)) + [0x85e] + list(range(0x958,0x960)) + list(range(0x964,0x966)) + [0x970] + list(range(0x9dc,0x9de)) + [0x9df] + list(range(0x9f2,0x9fc)) + [0xa33] + [0xa36] + list(range(0xa59,0xa5c)) + [0xa5e] + list(range(0xaf0,0xaf2)) + list(range(0xb5c,0xb5e)) + [0xb70] + list(range(0xb72,0xb78)) + list(range(0xbf0,0xbfb)) + list(range(0xc78,0xc80)) + list(range(0xd70,0xd76)) + [0xd79] + [0xdf4] + [0xe33] + [0xe3f] + [0xe4f] + list(range(0xe5a,0xe5c)) + [0xeb3] + list(range(0xedc,0xede)) + list(range(0xf01,0xf0b)) + list(range(0xf0c,0xf18)) + list(range(0xf1a,0xf20)) + list(range(0xf2a,0xf35)) + [0xf36] + [0xf38] + list(range(0xf3a,0xf3e)) + [0xf43] + [0xf4d] + [0xf52] + [0xf57] + [0xf5c] + [0xf69] + [0xf73] + list(range(0xf75,0xf7a)) + [0xf81] + [0xf85] + [0xf93] + [0xf9d] + [0xfa2] + [0xfa7] + [0xfac] + [0xfb9] + list(range(0xfbe,0xfc6)) + list(range(0xfc7,0xfcd)) + list(range(0xfce,0xfdb)) + list(range(0x104a,0x1050)) + list(range(0x109e,0x10c6)) + [0x10c7] + [0x10cd] + list(range(0x10fb,0x10fd)) + list(range(0x1100,0x1200)) + list(range(0x1360,0x137d)) + list(range(0x1390,0x139a)) + [0x1400] + list(range(0x166d,0x166f)) + [0x1680] + list(range(0x169b,0x169d)) + list(range(0x16eb,0x16f1)) + list(range(0x1735,0x1737)) + list(range(0x17b4,0x17b6)) + list(range(0x17d4,0x17d7)) + list(range(0x17d8,0x17dc)) + list(range(0x17f0,0x17fa)) + list(range(0x1800,0x180f)) + [0x1940] + list(range(0x1944,0x1946)) + [0x19da] + list(range(0x19de,0x1a00)) + list(range(0x1a1e,0x1a20)) + list(range(0x1aa0,0x1aa7)) + list(range(0x1aa8,0x1aae)) + list(range(0x1b5a,0x1b6b)) + list(range(0x1b74,0x1b7d)) + list(range(0x1bfc,0x1c00)) + list(range(0x1c3b,0x1c40)) + list(range(0x1c7e,0x1c80)) + list(range(0x1cc0,0x1cc8)) + [0x1cd3] + list(range(0x1d2c,0x1d2f)) + list(range(0x1d30,0x1d3b)) + list(range(0x1d3c,0x1d4e)) + list(range(0x1d4f,0x1d6b)) + [0x1d78] + list(range(0x1d9b,0x1dc0)) + [0x1e00] + [0x1e02] + [0x1e04] + [0x1e06] + [0x1e08] + [0x1e0a] + [0x1e0c] + [0x1e0e] + [0x1e10] + [0x1e12] + [0x1e14] + [0x1e16] + [0x1e18] + [0x1e1a] + [0x1e1c] + [0x1e1e] + [0x1e20] + [0x1e22] + [0x1e24] + [0x1e26] + [0x1e28] + [0x1e2a] + [0x1e2c] + [0x1e2e] + [0x1e30] + [0x1e32] + [0x1e34] + [0x1e36] + [0x1e38] + [0x1e3a] + [0x1e3c] + [0x1e3e] + [0x1e40] + [0x1e42] + [0x1e44] + [0x1e46] + [0x1e48] + [0x1e4a] + [0x1e4c] + [0x1e4e] + [0x1e50] + [0x1e52] + [0x1e54] + [0x1e56] + [0x1e58] + [0x1e5a] + [0x1e5c] + [0x1e5e] + [0x1e60] + [0x1e62] + [0x1e64] + [0x1e66] + [0x1e68] + [0x1e6a] + [0x1e6c] + [0x1e6e] + [0x1e70] + [0x1e72] + [0x1e74] + [0x1e76] + [0x1e78] + [0x1e7a] + [0x1e7c] + [0x1e7e] + [0x1e80] + [0x1e82] + [0x1e84] + [0x1e86] + [0x1e88] + [0x1e8a] + [0x1e8c] + [0x1e8e] + [0x1e90] + [0x1e92] + [0x1e94] + list(range(0x1e9a,0x1e9c)) + [0x1e9e] + [0x1ea0] + [0x1ea2] + [0x1ea4] + [0x1ea6] + [0x1ea8] + [0x1eaa] + [0x1eac] + [0x1eae] + [0x1eb0] + [0x1eb2] + [0x1eb4] + [0x1eb6] + [0x1eb8] + [0x1eba] + [0x1ebc] + [0x1ebe] + [0x1ec0] + [0x1ec2] + [0x1ec4] + [0x1ec6] + [0x1ec8] + [0x1eca] + [0x1ecc] + [0x1ece] + [0x1ed0] + [0x1ed2] + [0x1ed4] + [0x1ed6] + [0x1ed8] + [0x1eda] + [0x1edc] + [0x1ede] + [0x1ee0] + [0x1ee2] + [0x1ee4] + [0x1ee6] + [0x1ee8] + [0x1eea] + [0x1eec] + [0x1eee] + [0x1ef0] + [0x1ef2] + [0x1ef4] + [0x1ef6] + [0x1ef8] + [0x1efa] + [0x1efc] + [0x1efe] + list(range(0x1f08,0x1f10)) + list(range(0x1f18,0x1f1e)) + list(range(0x1f28,0x1f30)) + list(range(0x1f38,0x1f40)) + list(range(0x1f48,0x1f4e)) + [0x1f59] + [0x1f5b] + [0x1f5d] + [0x1f5f] + list(range(0x1f68,0x1f70)) + [0x1f71] + [0x1f73] + [0x1f75] + [0x1f77] + [0x1f79] + [0x1f7b] + [0x1f7d] + list(range(0x1f80,0x1fb0)) + list(range(0x1fb2,0x1fb5)) + list(range(0x1fb7,0x1fc5)) + list(range(0x1fc7,0x1fd0)) + [0x1fd3] + list(range(0x1fd8,0x1fdc)) + list(range(0x1fdd,0x1fe0)) + [0x1fe3] + list(range(0x1fe8,0x1ff0)) + list(range(0x1ff2,0x1ff5)) + list(range(0x1ff7,0x1fff)) + list(range(0x2000,0x200c)) + list(range(0x200e,0x2065)) + list(range(0x2066,0x2072)) + list(range(0x2074,0x208f)) + list(range(0x2090,0x209d)) + list(range(0x20a0,0x20bb)) + list(range(0x20d0,0x20f1)) + list(range(0x2100,0x214e)) + list(range(0x214f,0x2184)) + list(range(0x2185,0x218a)) + list(range(0x2190,0x23f4)) + list(range(0x2400,0x2427)) + list(range(0x2440,0x244b)) + list(range(0x2460,0x2700)) + list(range(0x2701,0x2b4d)) + list(range(0x2b50,0x2b5a)) + list(range(0x2c00,0x2c2f)) + [0x2c60] + list(range(0x2c62,0x2c65)) + [0x2c67] + [0x2c69] + [0x2c6b] + list(range(0x2c6d,0x2c71)) + [0x2c72] + [0x2c75] + list(range(0x2c7c,0x2c81)) + [0x2c82] + [0x2c84] + [0x2c86] + [0x2c88] + [0x2c8a] + [0x2c8c] + [0x2c8e] + [0x2c90] + [0x2c92] + [0x2c94] + [0x2c96] + [0x2c98] + [0x2c9a] + [0x2c9c] + [0x2c9e] + [0x2ca0] + [0x2ca2] + [0x2ca4] + [0x2ca6] + [0x2ca8] + [0x2caa] + [0x2cac] + [0x2cae] + [0x2cb0] + [0x2cb2] + [0x2cb4] + [0x2cb6] + [0x2cb8] + [0x2cba] + [0x2cbc] + [0x2cbe] + [0x2cc0] + [0x2cc2] + [0x2cc4] + [0x2cc6] + [0x2cc8] + [0x2cca] + [0x2ccc] + [0x2cce] + [0x2cd0] + [0x2cd2] + [0x2cd4] + [0x2cd6] + [0x2cd8] + [0x2cda] + [0x2cdc] + [0x2cde] + [0x2ce0] + [0x2ce2] + list(range(0x2ce5,0x2cec)) + [0x2ced] + [0x2cf2] + list(range(0x2cf9,0x2d00)) + list(range(0x2d6f,0x2d71)) + list(range(0x2e00,0x2e2f)) + list(range(0x2e30,0x2e3c)) + list(range(0x2e80,0x2e9a)) + list(range(0x2e9b,0x2ef4)) + list(range(0x2f00,0x2fd6)) + list(range(0x2ff0,0x2ffc)) + list(range(0x3000,0x3005)) + list(range(0x3008,0x302a)) + list(range(0x302e,0x303c)) + list(range(0x303d,0x3040)) + list(range(0x309b,0x309d)) + list(range(0x309f,0x30a1)) + [0x30ff] + list(range(0x3131,0x318f)) + list(range(0x3190,0x31a0)) + list(range(0x31c0,0x31e4)) + list(range(0x3200,0x321f)) + list(range(0x3220,0x32ff)) + list(range(0x3300,0x3400)) + list(range(0x4dc0,0x4e00)) + list(range(0xa490,0xa4c7)) + list(range(0xa4fe,0xa500)) + list(range(0xa60d,0xa610)) + [0xa640] + [0xa642] + [0xa644] + [0xa646] + [0xa648] + [0xa64a] + [0xa64c] + [0xa64e] + [0xa650] + [0xa652] + [0xa654] + [0xa656] + [0xa658] + [0xa65a] + [0xa65c] + [0xa65e] + [0xa660] + [0xa662] + [0xa664] + [0xa666] + [0xa668] + [0xa66a] + [0xa66c] + list(range(0xa670,0xa674)) + [0xa67e] + [0xa680] + [0xa682] + [0xa684] + [0xa686] + [0xa688] + [0xa68a] + [0xa68c] + [0xa68e] + [0xa690] + [0xa692] + [0xa694] + [0xa696] + list(range(0xa6e6,0xa6f0)) + list(range(0xa6f2,0xa6f8)) + list(range(0xa700,0xa717)) + list(range(0xa720,0xa723)) + [0xa724] + [0xa726] + [0xa728] + [0xa72a] + [0xa72c] + [0xa72e] + [0xa732] + [0xa734] + [0xa736] + [0xa738] + [0xa73a] + [0xa73c] + [0xa73e] + [0xa740] + [0xa742] + [0xa744] + [0xa746] + [0xa748] + [0xa74a] + [0xa74c] + [0xa74e] + [0xa750] + [0xa752] + [0xa754] + [0xa756] + [0xa758] + [0xa75a] + [0xa75c] + [0xa75e] + [0xa760] + [0xa762] + [0xa764] + [0xa766] + [0xa768] + [0xa76a] + [0xa76c] + [0xa76e] + [0xa770] + [0xa779] + [0xa77b] + list(range(0xa77d,0xa77f)) + [0xa780] + [0xa782] + [0xa784] + [0xa786] + list(range(0xa789,0xa78c)) + [0xa78d] + [0xa790] + [0xa792] + [0xa7a0] + [0xa7a2] + [0xa7a4] + [0xa7a6] + [0xa7a8] + [0xa7aa] + list(range(0xa7f8,0xa7fa)) + list(range(0xa828,0xa82c)) + list(range(0xa830,0xa83a)) + list(range(0xa874,0xa878)) + list(range(0xa8ce,0xa8d0)) + list(range(0xa8f8,0xa8fb)) + list(range(0xa92e,0xa930)) + list(range(0xa95f,0xa97d)) + list(range(0xa9c1,0xa9ce)) + list(range(0xa9de,0xa9e0)) + list(range(0xaa5c,0xaa60)) + list(range(0xaa77,0xaa7a)) + list(range(0xaade,0xaae0)) + list(range(0xaaf0,0xaaf2)) + [0xabeb] + list(range(0xd7b0,0xd7c7)) + list(range(0xd7cb,0xd7fc)) + list(range(0xd800,0xfa0e)) + [0xfa10] + [0xfa12] + list(range(0xfa15,0xfa1f)) + [0xfa20] + [0xfa22] + list(range(0xfa25,0xfa27)) + list(range(0xfa2a,0xfa6e)) + list(range(0xfa70,0xfada)) + list(range(0xfb00,0xfb07)) + list(range(0xfb13,0xfb18)) + [0xfb1d] + list(range(0xfb1f,0xfb37)) + list(range(0xfb38,0xfb3d)) + [0xfb3e] + list(range(0xfb40,0xfb42)) + list(range(0xfb43,0xfb45)) + list(range(0xfb46,0xfbc2)) + list(range(0xfbd3,0xfd40)) + list(range(0xfd50,0xfd90)) + list(range(0xfd92,0xfdc8)) + list(range(0xfdd0,0xfdfe)) + list(range(0xfe00,0xfe1a)) + list(range(0xfe30,0xfe53)) + list(range(0xfe54,0xfe67)) + list(range(0xfe68,0xfe6c)) + list(range(0xfe70,0xfe73)) + [0xfe74] + list(range(0xfe76,0xfefd)) + [0xfeff] + list(range(0xff01,0xffbf)) + list(range(0xffc2,0xffc8)) + list(range(0xffca,0xffd0)) + list(range(0xffd2,0xffd8)) + list(range(0xffda,0xffdd)) + list(range(0xffe0,0xffe7)) + list(range(0xffe8,0xffef)) + list(range(0xfff9,0x10000)) + list(range(0x10100,0x10103)) + list(range(0x10107,0x10134)) + list(range(0x10137,0x1018b)) + list(range(0x10190,0x1019c)) + list(range(0x101d0,0x101fd)) + list(range(0x10320,0x10324)) + [0x10341] + [0x1034a] + [0x1039f] + list(range(0x103d0,0x103d6)) + list(range(0x10400,0x10428)) + list(range(0x10857,0x10860)) + list(range(0x10916,0x1091c)) + [0x1091f] + [0x1093f] + list(range(0x10a40,0x10a48)) + list(range(0x10a50,0x10a59)) + list(range(0x10a7d,0x10a80)) + list(range(0x10b39,0x10b40)) + list(range(0x10b58,0x10b60)) + list(range(0x10b78,0x10b80)) + list(range(0x10e60,0x10e7f)) + list(range(0x11047,0x1104e)) + list(range(0x11052,0x11066)) + list(range(0x110bb,0x110c2)) + list(range(0x11140,0x11144)) + list(range(0x111c5,0x111c9)) + list(range(0x12400,0x12463)) + list(range(0x12470,0x12474)) + list(range(0x1d000,0x1d0f6)) + list(range(0x1d100,0x1d127)) + list(range(0x1d129,0x1d1de)) + list(range(0x1d200,0x1d246)) + list(range(0x1d300,0x1d357)) + list(range(0x1d360,0x1d372)) + list(range(0x1d400,0x1d455)) + list(range(0x1d456,0x1d49d)) + list(range(0x1d49e,0x1d4a0)) + [0x1d4a2] + list(range(0x1d4a5,0x1d4a7)) + list(range(0x1d4a9,0x1d4ad)) + list(range(0x1d4ae,0x1d4ba)) + [0x1d4bb] + list(range(0x1d4bd,0x1d4c4)) + list(range(0x1d4c5,0x1d506)) + list(range(0x1d507,0x1d50b)) + list(range(0x1d50d,0x1d515)) + list(range(0x1d516,0x1d51d)) + list(range(0x1d51e,0x1d53a)) + list(range(0x1d53b,0x1d53f)) + list(range(0x1d540,0x1d545)) + [0x1d546] + list(range(0x1d54a,0x1d551)) + list(range(0x1d552,0x1d6a6)) + list(range(0x1d6a8,0x1d7cc)) + list(range(0x1d7ce,0x1d800)) + list(range(0x1ee00,0x1ee04)) + list(range(0x1ee05,0x1ee20)) + list(range(0x1ee21,0x1ee23)) + [0x1ee24] + [0x1ee27] + list(range(0x1ee29,0x1ee33)) + list(range(0x1ee34,0x1ee38)) + [0x1ee39] + [0x1ee3b] + [0x1ee42] + [0x1ee47] + [0x1ee49] + [0x1ee4b] + list(range(0x1ee4d,0x1ee50)) + list(range(0x1ee51,0x1ee53)) + [0x1ee54] + [0x1ee57] + [0x1ee59] + [0x1ee5b] + [0x1ee5d] + [0x1ee5f] + list(range(0x1ee61,0x1ee63)) + [0x1ee64] + list(range(0x1ee67,0x1ee6b)) + list(range(0x1ee6c,0x1ee73)) + list(range(0x1ee74,0x1ee78)) + list(range(0x1ee79,0x1ee7d)) + [0x1ee7e] + list(range(0x1ee80,0x1ee8a)) + list(range(0x1ee8b,0x1ee9c)) + list(range(0x1eea1,0x1eea4)) + list(range(0x1eea5,0x1eeaa)) + list(range(0x1eeab,0x1eebc)) + list(range(0x1eef0,0x1eef2)) + list(range(0x1f000,0x1f02c)) + list(range(0x1f030,0x1f094)) + list(range(0x1f0a0,0x1f0af)) + list(range(0x1f0b1,0x1f0bf)) + list(range(0x1f0c1,0x1f0d0)) + list(range(0x1f0d1,0x1f0e0)) + list(range(0x1f100,0x1f10b)) + list(range(0x1f110,0x1f12f)) + list(range(0x1f130,0x1f16c)) + list(range(0x1f170,0x1f19b)) + list(range(0x1f1e6,0x1f203)) + list(range(0x1f210,0x1f23b)) + list(range(0x1f240,0x1f249)) + list(range(0x1f250,0x1f252)) + list(range(0x1f300,0x1f321)) + list(range(0x1f330,0x1f336)) + list(range(0x1f337,0x1f37d)) + list(range(0x1f380,0x1f394)) + list(range(0x1f3a0,0x1f3c5)) + list(range(0x1f3c6,0x1f3cb)) + list(range(0x1f3e0,0x1f3f1)) + list(range(0x1f400,0x1f43f)) + [0x1f440] + list(range(0x1f442,0x1f4f8)) + list(range(0x1f4f9,0x1f4fd)) + list(range(0x1f500,0x1f53e)) + list(range(0x1f540,0x1f544)) + list(range(0x1f550,0x1f568)) + list(range(0x1f5fb,0x1f641)) + list(range(0x1f645,0x1f650)) + list(range(0x1f680,0x1f6c6)) + list(range(0x1f700,0x1f774)) + list(range(0x1fffe,0x20000)) + list(range(0x2f800,0x2fa1e)) + list(range(0x2fffe,0x30000)) + list(range(0x3fffe,0x40000)) + list(range(0x4fffe,0x50000)) + list(range(0x5fffe,0x60000)) + list(range(0x6fffe,0x70000)) + list(range(0x7fffe,0x80000)) + list(range(0x8fffe,0x90000)) + list(range(0x9fffe,0xa0000)) + list(range(0xafffe,0xb0000)) + list(range(0xbfffe,0xc0000)) + list(range(0xcfffe,0xd0000)) + list(range(0xdfffe,0xe0000)) + [0xe0001] + list(range(0xe0020,0xe0080)) + list(range(0xe0100,0xe01f0)) + list(range(0xefffe,0x110000)) ), }