dregex.impl.UnicodeDatabase.scala Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of dregex_2.12 Show documentation
Show all versions of dregex_2.12 Show documentation
Deterministic Regular Expression Engine
The newest version!
package dregex.impl
import scala.collection.immutable.Seq
object UnicodeDatabase {
val blocksRanges: Map[Seq[String], (Int, Int)] = Map(
Seq("BASIC_LATIN", "BASICLATIN", "BASIC LATIN") -> (0x0000, 0x007F),
Seq("LATIN-1 SUPPLEMENT", "LATIN_1_SUPPLEMENT", "LATIN-1SUPPLEMENT") -> (0x0080, 0x00FF),
Seq("LATIN EXTENDED-A", "LATINEXTENDED-A", "LATIN_EXTENDED_A") -> (0x0100, 0x017F),
Seq("LATINEXTENDED-B", "LATIN_EXTENDED_B", "LATIN EXTENDED-B") -> (0x0180, 0x024F),
Seq("IPAEXTENSIONS", "IPA EXTENSIONS", "IPA_EXTENSIONS") -> (0x0250, 0x02AF),
Seq("SPACINGMODIFIERLETTERS", "SPACING MODIFIER LETTERS", "SPACING_MODIFIER_LETTERS") -> (0x02B0, 0x02FF),
Seq("COMBINING_DIACRITICAL_MARKS", "COMBINING DIACRITICAL MARKS", "COMBININGDIACRITICALMARKS") -> (0x0300, 0x036F),
Seq("GREEK", "GREEKANDCOPTIC", "GREEK AND COPTIC") -> (0x0370, 0x03FF),
Seq("CYRILLIC") -> (0x0400, 0x04FF),
Seq("CYRILLIC SUPPLEMENT", "CYRILLICSUPPLEMENTARY", "CYRILLIC SUPPLEMENTARY", "CYRILLICSUPPLEMENT", "CYRILLIC_SUPPLEMENTARY") -> (0x0500, 0x052F),
Seq("ARMENIAN") -> (0x0530, 0x058F),
Seq("HEBREW") -> (0x0590, 0x05FF),
Seq("ARABIC") -> (0x0600, 0x06FF),
Seq("SYRIAC") -> (0x0700, 0x074F),
Seq("ARABIC_SUPPLEMENT", "ARABIC SUPPLEMENT", "ARABICSUPPLEMENT") -> (0x0750, 0x077F),
Seq("THAANA") -> (0x0780, 0x07BF),
Seq("NKO") -> (0x07C0, 0x07FF),
Seq("SAMARITAN") -> (0x0800, 0x083F),
Seq("MANDAIC") -> (0x0840, 0x085F),
Seq("SYRIAC SUPPLEMENT", "SYRIACSUPPLEMENT", "SYRIAC_SUPPLEMENT") -> (0x0860, 0x086F),
Seq("ARABIC EXTENDED-A", "ARABICEXTENDED-A", "ARABIC_EXTENDED_A") -> (0x08A0, 0x08FF),
Seq("DEVANAGARI") -> (0x0900, 0x097F),
Seq("BENGALI") -> (0x0980, 0x09FF),
Seq("GURMUKHI") -> (0x0A00, 0x0A7F),
Seq("GUJARATI") -> (0x0A80, 0x0AFF),
Seq("ORIYA") -> (0x0B00, 0x0B7F),
Seq("TAMIL") -> (0x0B80, 0x0BFF),
Seq("TELUGU") -> (0x0C00, 0x0C7F),
Seq("KANNADA") -> (0x0C80, 0x0CFF),
Seq("MALAYALAM") -> (0x0D00, 0x0D7F),
Seq("SINHALA") -> (0x0D80, 0x0DFF),
Seq("THAI") -> (0x0E00, 0x0E7F),
Seq("LAO") -> (0x0E80, 0x0EFF),
Seq("TIBETAN") -> (0x0F00, 0x0FFF),
Seq("MYANMAR") -> (0x1000, 0x109F),
Seq("GEORGIAN") -> (0x10A0, 0x10FF),
Seq("HANGUL JAMO", "HANGULJAMO", "HANGUL_JAMO") -> (0x1100, 0x11FF),
Seq("ETHIOPIC") -> (0x1200, 0x137F),
Seq("ETHIOPICSUPPLEMENT", "ETHIOPIC SUPPLEMENT", "ETHIOPIC_SUPPLEMENT") -> (0x1380, 0x139F),
Seq("CHEROKEE") -> (0x13A0, 0x13FF),
Seq("UNIFIED CANADIAN ABORIGINAL SYLLABICS", "UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS", "UNIFIEDCANADIANABORIGINALSYLLABICS") -> (0x1400, 0x167F),
Seq("OGHAM") -> (0x1680, 0x169F),
Seq("RUNIC") -> (0x16A0, 0x16FF),
Seq("TAGALOG") -> (0x1700, 0x171F),
Seq("HANUNOO") -> (0x1720, 0x173F),
Seq("BUHID") -> (0x1740, 0x175F),
Seq("TAGBANWA") -> (0x1760, 0x177F),
Seq("KHMER") -> (0x1780, 0x17FF),
Seq("MONGOLIAN") -> (0x1800, 0x18AF),
Seq("UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED", "UNIFIED CANADIAN ABORIGINAL SYLLABICS EXTENDED", "UNIFIEDCANADIANABORIGINALSYLLABICSEXTENDED") -> (0x18B0, 0x18FF),
Seq("LIMBU") -> (0x1900, 0x194F),
Seq("TAILE", "TAI_LE", "TAI LE") -> (0x1950, 0x197F),
Seq("NEW TAI LUE", "NEW_TAI_LUE", "NEWTAILUE") -> (0x1980, 0x19DF),
Seq("KHMER SYMBOLS", "KHMER_SYMBOLS", "KHMERSYMBOLS") -> (0x19E0, 0x19FF),
Seq("BUGINESE") -> (0x1A00, 0x1A1F),
Seq("TAI_THAM", "TAI THAM", "TAITHAM") -> (0x1A20, 0x1AAF),
Seq("COMBINING_DIACRITICAL_MARKS_EXTENDED", "COMBININGDIACRITICALMARKSEXTENDED", "COMBINING DIACRITICAL MARKS EXTENDED") -> (0x1AB0, 0x1AFF),
Seq("BALINESE") -> (0x1B00, 0x1B7F),
Seq("SUNDANESE") -> (0x1B80, 0x1BBF),
Seq("BATAK") -> (0x1BC0, 0x1BFF),
Seq("LEPCHA") -> (0x1C00, 0x1C4F),
Seq("OLCHIKI", "OL_CHIKI", "OL CHIKI") -> (0x1C50, 0x1C7F),
Seq("CYRILLICEXTENDED-C", "CYRILLIC EXTENDED-C", "CYRILLIC_EXTENDED_C") -> (0x1C80, 0x1C8F),
Seq("GEORGIAN EXTENDED", "GEORGIAN_EXTENDED", "GEORGIANEXTENDED") -> (0x1C90, 0x1CBF),
Seq("SUNDANESE SUPPLEMENT", "SUNDANESE_SUPPLEMENT", "SUNDANESESUPPLEMENT") -> (0x1CC0, 0x1CCF),
Seq("VEDIC_EXTENSIONS", "VEDIC EXTENSIONS", "VEDICEXTENSIONS") -> (0x1CD0, 0x1CFF),
Seq("PHONETIC_EXTENSIONS", "PHONETIC EXTENSIONS", "PHONETICEXTENSIONS") -> (0x1D00, 0x1D7F),
Seq("PHONETIC_EXTENSIONS_SUPPLEMENT", "PHONETIC EXTENSIONS SUPPLEMENT", "PHONETICEXTENSIONSSUPPLEMENT") -> (0x1D80, 0x1DBF),
Seq("COMBININGDIACRITICALMARKSSUPPLEMENT", "COMBINING_DIACRITICAL_MARKS_SUPPLEMENT", "COMBINING DIACRITICAL MARKS SUPPLEMENT") -> (0x1DC0, 0x1DFF),
Seq("LATIN_EXTENDED_ADDITIONAL", "LATINEXTENDEDADDITIONAL", "LATIN EXTENDED ADDITIONAL") -> (0x1E00, 0x1EFF),
Seq("GREEK_EXTENDED", "GREEK EXTENDED", "GREEKEXTENDED") -> (0x1F00, 0x1FFF),
Seq("GENERALPUNCTUATION", "GENERAL PUNCTUATION", "GENERAL_PUNCTUATION") -> (0x2000, 0x206F),
Seq("SUPERSCRIPTSANDSUBSCRIPTS", "SUPERSCRIPTS AND SUBSCRIPTS", "SUPERSCRIPTS_AND_SUBSCRIPTS") -> (0x2070, 0x209F),
Seq("CURRENCY_SYMBOLS", "CURRENCYSYMBOLS", "CURRENCY SYMBOLS") -> (0x20A0, 0x20CF),
Seq("COMBININGDIACRITICALMARKSFORSYMBOLS", "COMBINING_MARKS_FOR_SYMBOLS", "COMBINING MARKS FOR SYMBOLS", "COMBINING DIACRITICAL MARKS FOR SYMBOLS", "COMBININGMARKSFORSYMBOLS") -> (0x20D0, 0x20FF),
Seq("LETTERLIKESYMBOLS", "LETTERLIKE SYMBOLS", "LETTERLIKE_SYMBOLS") -> (0x2100, 0x214F),
Seq("NUMBERFORMS", "NUMBER_FORMS", "NUMBER FORMS") -> (0x2150, 0x218F),
Seq("ARROWS") -> (0x2190, 0x21FF),
Seq("MATHEMATICAL OPERATORS", "MATHEMATICAL_OPERATORS", "MATHEMATICALOPERATORS") -> (0x2200, 0x22FF),
Seq("MISCELLANEOUS_TECHNICAL", "MISCELLANEOUS TECHNICAL", "MISCELLANEOUSTECHNICAL") -> (0x2300, 0x23FF),
Seq("CONTROL PICTURES", "CONTROLPICTURES", "CONTROL_PICTURES") -> (0x2400, 0x243F),
Seq("OPTICALCHARACTERRECOGNITION", "OPTICAL CHARACTER RECOGNITION", "OPTICAL_CHARACTER_RECOGNITION") -> (0x2440, 0x245F),
Seq("ENCLOSED_ALPHANUMERICS", "ENCLOSED ALPHANUMERICS", "ENCLOSEDALPHANUMERICS") -> (0x2460, 0x24FF),
Seq("BOX DRAWING", "BOX_DRAWING", "BOXDRAWING") -> (0x2500, 0x257F),
Seq("BLOCK_ELEMENTS", "BLOCKELEMENTS", "BLOCK ELEMENTS") -> (0x2580, 0x259F),
Seq("GEOMETRIC_SHAPES", "GEOMETRICSHAPES", "GEOMETRIC SHAPES") -> (0x25A0, 0x25FF),
Seq("MISCELLANEOUSSYMBOLS", "MISCELLANEOUS_SYMBOLS", "MISCELLANEOUS SYMBOLS") -> (0x2600, 0x26FF),
Seq("DINGBATS") -> (0x2700, 0x27BF),
Seq("MISCELLANEOUSMATHEMATICALSYMBOLS-A", "MISCELLANEOUS MATHEMATICAL SYMBOLS-A", "MISCELLANEOUS_MATHEMATICAL_SYMBOLS_A") -> (0x27C0, 0x27EF),
Seq("SUPPLEMENTAL_ARROWS_A", "SUPPLEMENTALARROWS-A", "SUPPLEMENTAL ARROWS-A") -> (0x27F0, 0x27FF),
Seq("BRAILLEPATTERNS", "BRAILLE PATTERNS", "BRAILLE_PATTERNS") -> (0x2800, 0x28FF),
Seq("SUPPLEMENTAL_ARROWS_B", "SUPPLEMENTALARROWS-B", "SUPPLEMENTAL ARROWS-B") -> (0x2900, 0x297F),
Seq("MISCELLANEOUS_MATHEMATICAL_SYMBOLS_B", "MISCELLANEOUSMATHEMATICALSYMBOLS-B", "MISCELLANEOUS MATHEMATICAL SYMBOLS-B") -> (0x2980, 0x29FF),
Seq("SUPPLEMENTAL MATHEMATICAL OPERATORS", "SUPPLEMENTAL_MATHEMATICAL_OPERATORS", "SUPPLEMENTALMATHEMATICALOPERATORS") -> (0x2A00, 0x2AFF),
Seq("MISCELLANEOUSSYMBOLSANDARROWS", "MISCELLANEOUS_SYMBOLS_AND_ARROWS", "MISCELLANEOUS SYMBOLS AND ARROWS") -> (0x2B00, 0x2BFF),
Seq("GLAGOLITIC") -> (0x2C00, 0x2C5F),
Seq("LATINEXTENDED-C", "LATIN EXTENDED-C", "LATIN_EXTENDED_C") -> (0x2C60, 0x2C7F),
Seq("COPTIC") -> (0x2C80, 0x2CFF),
Seq("GEORGIANSUPPLEMENT", "GEORGIAN_SUPPLEMENT", "GEORGIAN SUPPLEMENT") -> (0x2D00, 0x2D2F),
Seq("TIFINAGH") -> (0x2D30, 0x2D7F),
Seq("ETHIOPICEXTENDED", "ETHIOPIC EXTENDED", "ETHIOPIC_EXTENDED") -> (0x2D80, 0x2DDF),
Seq("CYRILLIC EXTENDED-A", "CYRILLIC_EXTENDED_A", "CYRILLICEXTENDED-A") -> (0x2DE0, 0x2DFF),
Seq("SUPPLEMENTALPUNCTUATION", "SUPPLEMENTAL PUNCTUATION", "SUPPLEMENTAL_PUNCTUATION") -> (0x2E00, 0x2E7F),
Seq("CJK_RADICALS_SUPPLEMENT", "CJK RADICALS SUPPLEMENT", "CJKRADICALSSUPPLEMENT") -> (0x2E80, 0x2EFF),
Seq("KANGXI RADICALS", "KANGXIRADICALS", "KANGXI_RADICALS") -> (0x2F00, 0x2FDF),
Seq("IDEOGRAPHICDESCRIPTIONCHARACTERS", "IDEOGRAPHIC_DESCRIPTION_CHARACTERS", "IDEOGRAPHIC DESCRIPTION CHARACTERS") -> (0x2FF0, 0x2FFF),
Seq("CJK_SYMBOLS_AND_PUNCTUATION", "CJKSYMBOLSANDPUNCTUATION", "CJK SYMBOLS AND PUNCTUATION") -> (0x3000, 0x303F),
Seq("HIRAGANA") -> (0x3040, 0x309F),
Seq("KATAKANA") -> (0x30A0, 0x30FF),
Seq("BOPOMOFO") -> (0x3100, 0x312F),
Seq("HANGUL COMPATIBILITY JAMO", "HANGULCOMPATIBILITYJAMO", "HANGUL_COMPATIBILITY_JAMO") -> (0x3130, 0x318F),
Seq("KANBUN") -> (0x3190, 0x319F),
Seq("BOPOMOFO EXTENDED", "BOPOMOFOEXTENDED", "BOPOMOFO_EXTENDED") -> (0x31A0, 0x31BF),
Seq("CJK STROKES", "CJKSTROKES", "CJK_STROKES") -> (0x31C0, 0x31EF),
Seq("KATAKANA PHONETIC EXTENSIONS", "KATAKANA_PHONETIC_EXTENSIONS", "KATAKANAPHONETICEXTENSIONS") -> (0x31F0, 0x31FF),
Seq("ENCLOSED_CJK_LETTERS_AND_MONTHS", "ENCLOSEDCJKLETTERSANDMONTHS", "ENCLOSED CJK LETTERS AND MONTHS") -> (0x3200, 0x32FF),
Seq("CJK COMPATIBILITY", "CJKCOMPATIBILITY", "CJK_COMPATIBILITY") -> (0x3300, 0x33FF),
Seq("CJKUNIFIEDIDEOGRAPHSEXTENSIONA", "CJK UNIFIED IDEOGRAPHS EXTENSION A", "CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A") -> (0x3400, 0x4DBF),
Seq("YIJINGHEXAGRAMSYMBOLS", "YIJING_HEXAGRAM_SYMBOLS", "YIJING HEXAGRAM SYMBOLS") -> (0x4DC0, 0x4DFF),
Seq("CJK UNIFIED IDEOGRAPHS", "CJKUNIFIEDIDEOGRAPHS", "CJK_UNIFIED_IDEOGRAPHS") -> (0x4E00, 0x9FFF),
Seq("YI_SYLLABLES", "YI SYLLABLES", "YISYLLABLES") -> (0xA000, 0xA48F),
Seq("YI_RADICALS", "YIRADICALS", "YI RADICALS") -> (0xA490, 0xA4CF),
Seq("LISU") -> (0xA4D0, 0xA4FF),
Seq("VAI") -> (0xA500, 0xA63F),
Seq("CYRILLIC_EXTENDED_B", "CYRILLIC EXTENDED-B", "CYRILLICEXTENDED-B") -> (0xA640, 0xA69F),
Seq("BAMUM") -> (0xA6A0, 0xA6FF),
Seq("MODIFIERTONELETTERS", "MODIFIER_TONE_LETTERS", "MODIFIER TONE LETTERS") -> (0xA700, 0xA71F),
Seq("LATIN EXTENDED-D", "LATINEXTENDED-D", "LATIN_EXTENDED_D") -> (0xA720, 0xA7FF),
Seq("SYLOTI NAGRI", "SYLOTINAGRI", "SYLOTI_NAGRI") -> (0xA800, 0xA82F),
Seq("COMMON_INDIC_NUMBER_FORMS", "COMMON INDIC NUMBER FORMS", "COMMONINDICNUMBERFORMS") -> (0xA830, 0xA83F),
Seq("PHAGS-PA", "PHAGS_PA") -> (0xA840, 0xA87F),
Seq("SAURASHTRA") -> (0xA880, 0xA8DF),
Seq("DEVANAGARI EXTENDED", "DEVANAGARIEXTENDED", "DEVANAGARI_EXTENDED") -> (0xA8E0, 0xA8FF),
Seq("KAYAH LI", "KAYAH_LI", "KAYAHLI") -> (0xA900, 0xA92F),
Seq("REJANG") -> (0xA930, 0xA95F),
Seq("HANGULJAMOEXTENDED-A", "HANGUL_JAMO_EXTENDED_A", "HANGUL JAMO EXTENDED-A") -> (0xA960, 0xA97F),
Seq("JAVANESE") -> (0xA980, 0xA9DF),
Seq("MYANMAR_EXTENDED_B", "MYANMAREXTENDED-B", "MYANMAR EXTENDED-B") -> (0xA9E0, 0xA9FF),
Seq("CHAM") -> (0xAA00, 0xAA5F),
Seq("MYANMAREXTENDED-A", "MYANMAR_EXTENDED_A", "MYANMAR EXTENDED-A") -> (0xAA60, 0xAA7F),
Seq("TAIVIET", "TAI VIET", "TAI_VIET") -> (0xAA80, 0xAADF),
Seq("MEETEI_MAYEK_EXTENSIONS", "MEETEI MAYEK EXTENSIONS", "MEETEIMAYEKEXTENSIONS") -> (0xAAE0, 0xAAFF),
Seq("ETHIOPICEXTENDED-A", "ETHIOPIC_EXTENDED_A", "ETHIOPIC EXTENDED-A") -> (0xAB00, 0xAB2F),
Seq("LATIN EXTENDED-E", "LATIN_EXTENDED_E", "LATINEXTENDED-E") -> (0xAB30, 0xAB6F),
Seq("CHEROKEE SUPPLEMENT", "CHEROKEESUPPLEMENT", "CHEROKEE_SUPPLEMENT") -> (0xAB70, 0xABBF),
Seq("MEETEI MAYEK", "MEETEIMAYEK", "MEETEI_MAYEK") -> (0xABC0, 0xABFF),
Seq("HANGULSYLLABLES", "HANGUL SYLLABLES", "HANGUL_SYLLABLES") -> (0xAC00, 0xD7AF),
Seq("HANGUL_JAMO_EXTENDED_B", "HANGUL JAMO EXTENDED-B", "HANGULJAMOEXTENDED-B") -> (0xD7B0, 0xD7FF),
Seq("HIGH SURROGATES", "HIGH_SURROGATES", "HIGHSURROGATES") -> (0xD800, 0xDB7F),
Seq("HIGH_PRIVATE_USE_SURROGATES", "HIGH PRIVATE USE SURROGATES", "HIGHPRIVATEUSESURROGATES") -> (0xDB80, 0xDBFF),
Seq("LOWSURROGATES", "LOW_SURROGATES", "LOW SURROGATES") -> (0xDC00, 0xDFFF),
Seq("PRIVATE USE AREA", "PRIVATEUSEAREA", "PRIVATE_USE_AREA") -> (0xE000, 0xF8FF),
Seq("CJK_COMPATIBILITY_IDEOGRAPHS", "CJK COMPATIBILITY IDEOGRAPHS", "CJKCOMPATIBILITYIDEOGRAPHS") -> (0xF900, 0xFAFF),
Seq("ALPHABETICPRESENTATIONFORMS", "ALPHABETIC_PRESENTATION_FORMS", "ALPHABETIC PRESENTATION FORMS") -> (0xFB00, 0xFB4F),
Seq("ARABIC PRESENTATION FORMS-A", "ARABICPRESENTATIONFORMS-A", "ARABIC_PRESENTATION_FORMS_A") -> (0xFB50, 0xFDFF),
Seq("VARIATION_SELECTORS", "VARIATION SELECTORS", "VARIATIONSELECTORS") -> (0xFE00, 0xFE0F),
Seq("VERTICAL_FORMS", "VERTICAL FORMS", "VERTICALFORMS") -> (0xFE10, 0xFE1F),
Seq("COMBINING HALF MARKS", "COMBININGHALFMARKS", "COMBINING_HALF_MARKS") -> (0xFE20, 0xFE2F),
Seq("CJK_COMPATIBILITY_FORMS", "CJK COMPATIBILITY FORMS", "CJKCOMPATIBILITYFORMS") -> (0xFE30, 0xFE4F),
Seq("SMALLFORMVARIANTS", "SMALL FORM VARIANTS", "SMALL_FORM_VARIANTS") -> (0xFE50, 0xFE6F),
Seq("ARABIC PRESENTATION FORMS-B", "ARABIC_PRESENTATION_FORMS_B", "ARABICPRESENTATIONFORMS-B") -> (0xFE70, 0xFEFF),
Seq("HALFWIDTH_AND_FULLWIDTH_FORMS", "HALFWIDTH AND FULLWIDTH FORMS", "HALFWIDTHANDFULLWIDTHFORMS") -> (0xFF00, 0xFFEF),
Seq("SPECIALS") -> (0xFFF0, 0xFFFF),
Seq("LINEAR_B_SYLLABARY", "LINEARBSYLLABARY", "LINEAR B SYLLABARY") -> (0x10000, 0x1007F),
Seq("LINEARBIDEOGRAMS", "LINEAR_B_IDEOGRAMS", "LINEAR B IDEOGRAMS") -> (0x10080, 0x100FF),
Seq("AEGEANNUMBERS", "AEGEAN_NUMBERS", "AEGEAN NUMBERS") -> (0x10100, 0x1013F),
Seq("ANCIENT_GREEK_NUMBERS", "ANCIENTGREEKNUMBERS", "ANCIENT GREEK NUMBERS") -> (0x10140, 0x1018F),
Seq("ANCIENT SYMBOLS", "ANCIENTSYMBOLS", "ANCIENT_SYMBOLS") -> (0x10190, 0x101CF),
Seq("PHAISTOSDISC", "PHAISTOS DISC", "PHAISTOS_DISC") -> (0x101D0, 0x101FF),
Seq("LYCIAN") -> (0x10280, 0x1029F),
Seq("CARIAN") -> (0x102A0, 0x102DF),
Seq("COPTICEPACTNUMBERS", "COPTIC_EPACT_NUMBERS", "COPTIC EPACT NUMBERS") -> (0x102E0, 0x102FF),
Seq("OLDITALIC", "OLD ITALIC", "OLD_ITALIC") -> (0x10300, 0x1032F),
Seq("GOTHIC") -> (0x10330, 0x1034F),
Seq("OLD_PERMIC", "OLD PERMIC", "OLDPERMIC") -> (0x10350, 0x1037F),
Seq("UGARITIC") -> (0x10380, 0x1039F),
Seq("OLDPERSIAN", "OLD_PERSIAN", "OLD PERSIAN") -> (0x103A0, 0x103DF),
Seq("DESERET") -> (0x10400, 0x1044F),
Seq("SHAVIAN") -> (0x10450, 0x1047F),
Seq("OSMANYA") -> (0x10480, 0x104AF),
Seq("OSAGE") -> (0x104B0, 0x104FF),
Seq("ELBASAN") -> (0x10500, 0x1052F),
Seq("CAUCASIAN ALBANIAN", "CAUCASIANALBANIAN", "CAUCASIAN_ALBANIAN") -> (0x10530, 0x1056F),
Seq("LINEAR_A", "LINEARA", "LINEAR A") -> (0x10600, 0x1077F),
Seq("CYPRIOT SYLLABARY", "CYPRIOTSYLLABARY", "CYPRIOT_SYLLABARY") -> (0x10800, 0x1083F),
Seq("IMPERIALARAMAIC", "IMPERIAL ARAMAIC", "IMPERIAL_ARAMAIC") -> (0x10840, 0x1085F),
Seq("PALMYRENE") -> (0x10860, 0x1087F),
Seq("NABATAEAN") -> (0x10880, 0x108AF),
Seq("HATRAN") -> (0x108E0, 0x108FF),
Seq("PHOENICIAN") -> (0x10900, 0x1091F),
Seq("LYDIAN") -> (0x10920, 0x1093F),
Seq("MEROITIC HIEROGLYPHS", "MEROITIC_HIEROGLYPHS", "MEROITICHIEROGLYPHS") -> (0x10980, 0x1099F),
Seq("MEROITIC CURSIVE", "MEROITIC_CURSIVE", "MEROITICCURSIVE") -> (0x109A0, 0x109FF),
Seq("KHAROSHTHI") -> (0x10A00, 0x10A5F),
Seq("OLD SOUTH ARABIAN", "OLDSOUTHARABIAN", "OLD_SOUTH_ARABIAN") -> (0x10A60, 0x10A7F),
Seq("OLD NORTH ARABIAN", "OLDNORTHARABIAN", "OLD_NORTH_ARABIAN") -> (0x10A80, 0x10A9F),
Seq("MANICHAEAN") -> (0x10AC0, 0x10AFF),
Seq("AVESTAN") -> (0x10B00, 0x10B3F),
Seq("INSCRIPTIONAL PARTHIAN", "INSCRIPTIONALPARTHIAN", "INSCRIPTIONAL_PARTHIAN") -> (0x10B40, 0x10B5F),
Seq("INSCRIPTIONAL_PAHLAVI", "INSCRIPTIONAL PAHLAVI", "INSCRIPTIONALPAHLAVI") -> (0x10B60, 0x10B7F),
Seq("PSALTER_PAHLAVI", "PSALTER PAHLAVI", "PSALTERPAHLAVI") -> (0x10B80, 0x10BAF),
Seq("OLD_TURKIC", "OLD TURKIC", "OLDTURKIC") -> (0x10C00, 0x10C4F),
Seq("OLD HUNGARIAN", "OLDHUNGARIAN", "OLD_HUNGARIAN") -> (0x10C80, 0x10CFF),
Seq("HANIFI ROHINGYA", "HANIFI_ROHINGYA", "HANIFIROHINGYA") -> (0x10D00, 0x10D3F),
Seq("RUMI NUMERAL SYMBOLS", "RUMI_NUMERAL_SYMBOLS", "RUMINUMERALSYMBOLS") -> (0x10E60, 0x10E7F),
Seq("YEZIDI") -> (0x10E80, 0x10EBF),
Seq("OLD_SOGDIAN", "OLDSOGDIAN", "OLD SOGDIAN") -> (0x10F00, 0x10F2F),
Seq("SOGDIAN") -> (0x10F30, 0x10F6F),
Seq("CHORASMIAN") -> (0x10FB0, 0x10FDF),
Seq("ELYMAIC") -> (0x10FE0, 0x10FFF),
Seq("BRAHMI") -> (0x11000, 0x1107F),
Seq("KAITHI") -> (0x11080, 0x110CF),
Seq("SORASOMPENG", "SORA_SOMPENG", "SORA SOMPENG") -> (0x110D0, 0x110FF),
Seq("CHAKMA") -> (0x11100, 0x1114F),
Seq("MAHAJANI") -> (0x11150, 0x1117F),
Seq("SHARADA") -> (0x11180, 0x111DF),
Seq("SINHALA ARCHAIC NUMBERS", "SINHALAARCHAICNUMBERS", "SINHALA_ARCHAIC_NUMBERS") -> (0x111E0, 0x111FF),
Seq("KHOJKI") -> (0x11200, 0x1124F),
Seq("MULTANI") -> (0x11280, 0x112AF),
Seq("KHUDAWADI") -> (0x112B0, 0x112FF),
Seq("GRANTHA") -> (0x11300, 0x1137F),
Seq("NEWA") -> (0x11400, 0x1147F),
Seq("TIRHUTA") -> (0x11480, 0x114DF),
Seq("SIDDHAM") -> (0x11580, 0x115FF),
Seq("MODI") -> (0x11600, 0x1165F),
Seq("MONGOLIANSUPPLEMENT", "MONGOLIAN_SUPPLEMENT", "MONGOLIAN SUPPLEMENT") -> (0x11660, 0x1167F),
Seq("TAKRI") -> (0x11680, 0x116CF),
Seq("AHOM") -> (0x11700, 0x1173F),
Seq("DOGRA") -> (0x11800, 0x1184F),
Seq("WARANGCITI", "WARANG_CITI", "WARANG CITI") -> (0x118A0, 0x118FF),
Seq("DIVES_AKURU", "DIVES AKURU", "DIVESAKURU") -> (0x11900, 0x1195F),
Seq("NANDINAGARI") -> (0x119A0, 0x119FF),
Seq("ZANABAZAR_SQUARE", "ZANABAZARSQUARE", "ZANABAZAR SQUARE") -> (0x11A00, 0x11A4F),
Seq("SOYOMBO") -> (0x11A50, 0x11AAF),
Seq("PAUCINHAU", "PAU CIN HAU", "PAU_CIN_HAU") -> (0x11AC0, 0x11AFF),
Seq("BHAIKSUKI") -> (0x11C00, 0x11C6F),
Seq("MARCHEN") -> (0x11C70, 0x11CBF),
Seq("MASARAMGONDI", "MASARAM GONDI", "MASARAM_GONDI") -> (0x11D00, 0x11D5F),
Seq("GUNJALA_GONDI", "GUNJALAGONDI", "GUNJALA GONDI") -> (0x11D60, 0x11DAF),
Seq("MAKASAR") -> (0x11EE0, 0x11EFF),
Seq("LISU_SUPPLEMENT", "LISUSUPPLEMENT", "LISU SUPPLEMENT") -> (0x11FB0, 0x11FBF),
Seq("TAMIL SUPPLEMENT", "TAMIL_SUPPLEMENT", "TAMILSUPPLEMENT") -> (0x11FC0, 0x11FFF),
Seq("CUNEIFORM") -> (0x12000, 0x123FF),
Seq("CUNEIFORM_NUMBERS_AND_PUNCTUATION", "CUNEIFORMNUMBERSANDPUNCTUATION", "CUNEIFORM NUMBERS AND PUNCTUATION") -> (0x12400, 0x1247F),
Seq("EARLY_DYNASTIC_CUNEIFORM", "EARLY DYNASTIC CUNEIFORM", "EARLYDYNASTICCUNEIFORM") -> (0x12480, 0x1254F),
Seq("EGYPTIAN HIEROGLYPHS", "EGYPTIAN_HIEROGLYPHS", "EGYPTIANHIEROGLYPHS") -> (0x13000, 0x1342F),
Seq("EGYPTIAN HIEROGLYPH FORMAT CONTROLS", "EGYPTIANHIEROGLYPHFORMATCONTROLS", "EGYPTIAN_HIEROGLYPH_FORMAT_CONTROLS") -> (0x13430, 0x1343F),
Seq("ANATOLIANHIEROGLYPHS", "ANATOLIAN HIEROGLYPHS", "ANATOLIAN_HIEROGLYPHS") -> (0x14400, 0x1467F),
Seq("BAMUM SUPPLEMENT", "BAMUM_SUPPLEMENT", "BAMUMSUPPLEMENT") -> (0x16800, 0x16A3F),
Seq("MRO") -> (0x16A40, 0x16A6F),
Seq("BASSAVAH", "BASSA_VAH", "BASSA VAH") -> (0x16AD0, 0x16AFF),
Seq("PAHAWH HMONG", "PAHAWHHMONG", "PAHAWH_HMONG") -> (0x16B00, 0x16B8F),
Seq("MEDEFAIDRIN") -> (0x16E40, 0x16E9F),
Seq("MIAO") -> (0x16F00, 0x16F9F),
Seq("IDEOGRAPHICSYMBOLSANDPUNCTUATION", "IDEOGRAPHIC_SYMBOLS_AND_PUNCTUATION", "IDEOGRAPHIC SYMBOLS AND PUNCTUATION") -> (0x16FE0, 0x16FFF),
Seq("TANGUT") -> (0x17000, 0x187FF),
Seq("TANGUT COMPONENTS", "TANGUT_COMPONENTS", "TANGUTCOMPONENTS") -> (0x18800, 0x18AFF),
Seq("KHITANSMALLSCRIPT", "KHITAN SMALL SCRIPT", "KHITAN_SMALL_SCRIPT") -> (0x18B00, 0x18CFF),
Seq("TANGUT SUPPLEMENT", "TANGUTSUPPLEMENT", "TANGUT_SUPPLEMENT") -> (0x18D00, 0x18D8F),
Seq("KANA_SUPPLEMENT", "KANA SUPPLEMENT", "KANASUPPLEMENT") -> (0x1B000, 0x1B0FF),
Seq("KANAEXTENDED-A", "KANA_EXTENDED_A", "KANA EXTENDED-A") -> (0x1B100, 0x1B12F),
Seq("SMALL_KANA_EXTENSION", "SMALLKANAEXTENSION", "SMALL KANA EXTENSION") -> (0x1B130, 0x1B16F),
Seq("NUSHU") -> (0x1B170, 0x1B2FF),
Seq("DUPLOYAN") -> (0x1BC00, 0x1BC9F),
Seq("SHORTHANDFORMATCONTROLS", "SHORTHAND_FORMAT_CONTROLS", "SHORTHAND FORMAT CONTROLS") -> (0x1BCA0, 0x1BCAF),
Seq("BYZANTINE MUSICAL SYMBOLS", "BYZANTINE_MUSICAL_SYMBOLS", "BYZANTINEMUSICALSYMBOLS") -> (0x1D000, 0x1D0FF),
Seq("MUSICAL_SYMBOLS", "MUSICAL SYMBOLS", "MUSICALSYMBOLS") -> (0x1D100, 0x1D1FF),
Seq("ANCIENT_GREEK_MUSICAL_NOTATION", "ANCIENTGREEKMUSICALNOTATION", "ANCIENT GREEK MUSICAL NOTATION") -> (0x1D200, 0x1D24F),
Seq("MAYANNUMERALS", "MAYAN_NUMERALS", "MAYAN NUMERALS") -> (0x1D2E0, 0x1D2FF),
Seq("TAI XUAN JING SYMBOLS", "TAI_XUAN_JING_SYMBOLS", "TAIXUANJINGSYMBOLS") -> (0x1D300, 0x1D35F),
Seq("COUNTING_ROD_NUMERALS", "COUNTING ROD NUMERALS", "COUNTINGRODNUMERALS") -> (0x1D360, 0x1D37F),
Seq("MATHEMATICAL ALPHANUMERIC SYMBOLS", "MATHEMATICAL_ALPHANUMERIC_SYMBOLS", "MATHEMATICALALPHANUMERICSYMBOLS") -> (0x1D400, 0x1D7FF),
Seq("SUTTON SIGNWRITING", "SUTTONSIGNWRITING", "SUTTON_SIGNWRITING") -> (0x1D800, 0x1DAAF),
Seq("GLAGOLITIC SUPPLEMENT", "GLAGOLITIC_SUPPLEMENT", "GLAGOLITICSUPPLEMENT") -> (0x1E000, 0x1E02F),
Seq("NYIAKENGPUACHUEHMONG", "NYIAKENG PUACHUE HMONG", "NYIAKENG_PUACHUE_HMONG") -> (0x1E100, 0x1E14F),
Seq("WANCHO") -> (0x1E2C0, 0x1E2FF),
Seq("MENDE_KIKAKUI", "MENDEKIKAKUI", "MENDE KIKAKUI") -> (0x1E800, 0x1E8DF),
Seq("ADLAM") -> (0x1E900, 0x1E95F),
Seq("INDIC_SIYAQ_NUMBERS", "INDIC SIYAQ NUMBERS", "INDICSIYAQNUMBERS") -> (0x1EC70, 0x1ECBF),
Seq("OTTOMAN SIYAQ NUMBERS", "OTTOMANSIYAQNUMBERS", "OTTOMAN_SIYAQ_NUMBERS") -> (0x1ED00, 0x1ED4F),
Seq("ARABIC_MATHEMATICAL_ALPHABETIC_SYMBOLS", "ARABIC MATHEMATICAL ALPHABETIC SYMBOLS", "ARABICMATHEMATICALALPHABETICSYMBOLS") -> (0x1EE00, 0x1EEFF),
Seq("MAHJONGTILES", "MAHJONG TILES", "MAHJONG_TILES") -> (0x1F000, 0x1F02F),
Seq("DOMINO_TILES", "DOMINOTILES", "DOMINO TILES") -> (0x1F030, 0x1F09F),
Seq("PLAYING_CARDS", "PLAYING CARDS", "PLAYINGCARDS") -> (0x1F0A0, 0x1F0FF),
Seq("ENCLOSEDALPHANUMERICSUPPLEMENT", "ENCLOSED_ALPHANUMERIC_SUPPLEMENT", "ENCLOSED ALPHANUMERIC SUPPLEMENT") -> (0x1F100, 0x1F1FF),
Seq("ENCLOSED_IDEOGRAPHIC_SUPPLEMENT", "ENCLOSEDIDEOGRAPHICSUPPLEMENT", "ENCLOSED IDEOGRAPHIC SUPPLEMENT") -> (0x1F200, 0x1F2FF),
Seq("MISCELLANEOUS SYMBOLS AND PICTOGRAPHS", "MISCELLANEOUSSYMBOLSANDPICTOGRAPHS", "MISCELLANEOUS_SYMBOLS_AND_PICTOGRAPHS") -> (0x1F300, 0x1F5FF),
Seq("EMOTICONS") -> (0x1F600, 0x1F64F),
Seq("ORNAMENTAL_DINGBATS", "ORNAMENTALDINGBATS", "ORNAMENTAL DINGBATS") -> (0x1F650, 0x1F67F),
Seq("TRANSPORTANDMAPSYMBOLS", "TRANSPORT AND MAP SYMBOLS", "TRANSPORT_AND_MAP_SYMBOLS") -> (0x1F680, 0x1F6FF),
Seq("ALCHEMICALSYMBOLS", "ALCHEMICAL SYMBOLS", "ALCHEMICAL_SYMBOLS") -> (0x1F700, 0x1F77F),
Seq("GEOMETRIC_SHAPES_EXTENDED", "GEOMETRICSHAPESEXTENDED", "GEOMETRIC SHAPES EXTENDED") -> (0x1F780, 0x1F7FF),
Seq("SUPPLEMENTAL ARROWS-C", "SUPPLEMENTALARROWS-C", "SUPPLEMENTAL_ARROWS_C") -> (0x1F800, 0x1F8FF),
Seq("SUPPLEMENTALSYMBOLSANDPICTOGRAPHS", "SUPPLEMENTAL SYMBOLS AND PICTOGRAPHS", "SUPPLEMENTAL_SYMBOLS_AND_PICTOGRAPHS") -> (0x1F900, 0x1F9FF),
Seq("CHESS_SYMBOLS", "CHESSSYMBOLS", "CHESS SYMBOLS") -> (0x1FA00, 0x1FA6F),
Seq("SYMBOLS AND PICTOGRAPHS EXTENDED-A", "SYMBOLS_AND_PICTOGRAPHS_EXTENDED_A", "SYMBOLSANDPICTOGRAPHSEXTENDED-A") -> (0x1FA70, 0x1FAFF),
Seq("SYMBOLS FOR LEGACY COMPUTING", "SYMBOLS_FOR_LEGACY_COMPUTING", "SYMBOLSFORLEGACYCOMPUTING") -> (0x1FB00, 0x1FBFF),
Seq("CJKUNIFIEDIDEOGRAPHSEXTENSIONB", "CJK UNIFIED IDEOGRAPHS EXTENSION B", "CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B") -> (0x20000, 0x2A6DF),
Seq("CJKUNIFIEDIDEOGRAPHSEXTENSIONC", "CJK UNIFIED IDEOGRAPHS EXTENSION C", "CJK_UNIFIED_IDEOGRAPHS_EXTENSION_C") -> (0x2A700, 0x2B73F),
Seq("CJK UNIFIED IDEOGRAPHS EXTENSION D", "CJK_UNIFIED_IDEOGRAPHS_EXTENSION_D", "CJKUNIFIEDIDEOGRAPHSEXTENSIOND") -> (0x2B740, 0x2B81F),
Seq("CJKUNIFIEDIDEOGRAPHSEXTENSIONE", "CJK_UNIFIED_IDEOGRAPHS_EXTENSION_E", "CJK UNIFIED IDEOGRAPHS EXTENSION E") -> (0x2B820, 0x2CEAF),
Seq("CJK_UNIFIED_IDEOGRAPHS_EXTENSION_F", "CJKUNIFIEDIDEOGRAPHSEXTENSIONF", "CJK UNIFIED IDEOGRAPHS EXTENSION F") -> (0x2CEB0, 0x2EBEF),
Seq("CJKCOMPATIBILITYIDEOGRAPHSSUPPLEMENT", "CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT", "CJK COMPATIBILITY IDEOGRAPHS SUPPLEMENT") -> (0x2F800, 0x2FA1F),
Seq("CJK_UNIFIED_IDEOGRAPHS_EXTENSION_G", "CJKUNIFIEDIDEOGRAPHSEXTENSIONG", "CJK UNIFIED IDEOGRAPHS EXTENSION G") -> (0x30000, 0x3134F),
Seq("TAGS") -> (0xE0000, 0xE007F),
Seq("VARIATION_SELECTORS_SUPPLEMENT", "VARIATIONSELECTORSSUPPLEMENT", "VARIATION SELECTORS SUPPLEMENT") -> (0xE0100, 0xE01EF),
Seq("SUPPLEMENTARY_PRIVATE_USE_AREA_A", "SUPPLEMENTARYPRIVATEUSEAREA-A", "SUPPLEMENTARY PRIVATE USE AREA-A") -> (0xF0000, 0xFFFFF),
Seq("SUPPLEMENTARY PRIVATE USE AREA-B", "SUPPLEMENTARY_PRIVATE_USE_AREA_B", "SUPPLEMENTARYPRIVATEUSEAREA-B") -> (0x100000, 0x10FFFF)
)
val scriptRanges: Map[Seq[String], Seq[(Int, Int)]] = Map(
Seq("COMMON", "ZYYY") -> Seq((0x0000, 0x0040), (0x005B, 0x0060), (0x007B, 0x00A9), (0x00AB, 0x00B9), (0x00BB, 0x00BF), (0x00D7, 0x00D7), (0x00F7, 0x00F7), (0x02B9, 0x02DF), (0x02E5, 0x02E9), (0x02EC, 0x02FF), (0x0374, 0x0374), (0x037E, 0x037E), (0x0385, 0x0385), (0x0387, 0x0387), (0x0605, 0x0605), (0x060C, 0x060C), (0x061B, 0x061B), (0x061F, 0x061F), (0x0640, 0x0640), (0x06DD, 0x06DD), (0x08E2, 0x08E2), (0x0964, 0x0965), (0x0E3F, 0x0E3F), (0x0FD5, 0x0FD8), (0x10FB, 0x10FB), (0x16EB, 0x16ED), (0x1735, 0x1736), (0x1802, 0x1803), (0x1805, 0x1805), (0x1CD3, 0x1CD3), (0x1CE1, 0x1CE1), (0x1CE9, 0x1CEC), (0x1CEE, 0x1CF3), (0x1CF5, 0x1CF7), (0x1CFA, 0x1CFA), (0x2000, 0x200B), (0x200E, 0x2064), (0x2066, 0x2070), (0x2074, 0x207E), (0x2080, 0x208E), (0x20A0, 0x20BF), (0x2100, 0x2125), (0x2127, 0x2129), (0x212C, 0x2131), (0x2133, 0x214D), (0x214F, 0x215F), (0x2189, 0x218B), (0x2190, 0x2426), (0x2440, 0x244A), (0x2460, 0x27FF), (0x2900, 0x2B73), (0x2B76, 0x2B95), (0x2B97, 0x2BFF), (0x2E00, 0x2E52), (0x2FF0, 0x2FFB), (0x3000, 0x3004), (0x3006, 0x3006), (0x3008, 0x3020), (0x3030, 0x3037), (0x303C, 0x303F), (0x309B, 0x309C), (0x30A0, 0x30A0), (0x30FB, 0x30FC), (0x3190, 0x319F), (0x31C0, 0x31E3), (0x3220, 0x325F), (0x327F, 0x32CF), (0x32FF, 0x32FF), (0x3358, 0x33FF), (0x4DC0, 0x4DFF), (0xA700, 0xA721), (0xA788, 0xA78A), (0xA830, 0xA839), (0xA92E, 0xA92E), (0xA9CF, 0xA9CF), (0xAB5B, 0xAB5B), (0xAB6A, 0xAB6B), (0xFD3E, 0xFD3F), (0xFE10, 0xFE19), (0xFE30, 0xFE52), (0xFE54, 0xFE66), (0xFE68, 0xFE6B), (0xFEFF, 0xFEFF), (0xFF01, 0xFF20), (0xFF3B, 0xFF40), (0xFF5B, 0xFF65), (0xFF70, 0xFF70), (0xFF9E, 0xFF9F), (0xFFE0, 0xFFE6), (0xFFE8, 0xFFEE), (0xFFF9, 0xFFFD), (0x10100, 0x10102), (0x10107, 0x10133), (0x10137, 0x1013F), (0x10190, 0x1019C), (0x101D0, 0x101FC), (0x102E1, 0x102FB), (0x16FE2, 0x16FE3), (0x1BCA0, 0x1BCA3), (0x1D000, 0x1D0F5), (0x1D100, 0x1D126), (0x1D129, 0x1D166), (0x1D16A, 0x1D17A), (0x1D183, 0x1D184), (0x1D18C, 0x1D1A9), (0x1D1AE, 0x1D1E8), (0x1D2E0, 0x1D2F3), (0x1D300, 0x1D356), (0x1D360, 0x1D378), (0x1D400, 0x1D454), (0x1D456, 0x1D49C), (0x1D49E, 0x1D49F), (0x1D4A2, 0x1D4A2), (0x1D4A5, 0x1D4A6), (0x1D4A9, 0x1D4AC), (0x1D4AE, 0x1D4B9), (0x1D4BB, 0x1D4BB), (0x1D4BD, 0x1D4C3), (0x1D4C5, 0x1D505), (0x1D507, 0x1D50A), (0x1D50D, 0x1D514), (0x1D516, 0x1D51C), (0x1D51E, 0x1D539), (0x1D53B, 0x1D53E), (0x1D540, 0x1D544), (0x1D546, 0x1D546), (0x1D54A, 0x1D550), (0x1D552, 0x1D6A5), (0x1D6A8, 0x1D7CB), (0x1D7CE, 0x1D7FF), (0x1EC71, 0x1ECB4), (0x1ED01, 0x1ED3D), (0x1F000, 0x1F02B), (0x1F030, 0x1F093), (0x1F0A0, 0x1F0AE), (0x1F0B1, 0x1F0BF), (0x1F0C1, 0x1F0CF), (0x1F0D1, 0x1F0F5), (0x1F100, 0x1F1AD), (0x1F1E6, 0x1F1FF), (0x1F201, 0x1F202), (0x1F210, 0x1F23B), (0x1F240, 0x1F248), (0x1F250, 0x1F251), (0x1F260, 0x1F265), (0x1F300, 0x1F6D7), (0x1F6E0, 0x1F6EC), (0x1F6F0, 0x1F6FC), (0x1F700, 0x1F773), (0x1F780, 0x1F7D8), (0x1F7E0, 0x1F7EB), (0x1F800, 0x1F80B), (0x1F810, 0x1F847), (0x1F850, 0x1F859), (0x1F860, 0x1F887), (0x1F890, 0x1F8AD), (0x1F8B0, 0x1F8B1), (0x1F900, 0x1F978), (0x1F97A, 0x1F9CB), (0x1F9CD, 0x1FA53), (0x1FA60, 0x1FA6D), (0x1FA70, 0x1FA74), (0x1FA78, 0x1FA7A), (0x1FA80, 0x1FA86), (0x1FA90, 0x1FAA8), (0x1FAB0, 0x1FAB6), (0x1FAC0, 0x1FAC2), (0x1FAD0, 0x1FAD6), (0x1FB00, 0x1FB92), (0x1FB94, 0x1FBCA), (0x1FBF0, 0x1FBF9), (0xE0001, 0xE0001), (0xE0020, 0xE007F)),
Seq("LATIN", "LATN") -> Seq((0x0041, 0x005A), (0x0061, 0x007A), (0x00AA, 0x00AA), (0x00BA, 0x00BA), (0x00C0, 0x00D6), (0x00D8, 0x00F6), (0x00F8, 0x02B8), (0x02E0, 0x02E4), (0x1D00, 0x1D25), (0x1D2C, 0x1D5C), (0x1D62, 0x1D65), (0x1D6B, 0x1D77), (0x1D79, 0x1DBE), (0x1E00, 0x1EFF), (0x2071, 0x2071), (0x207F, 0x207F), (0x2090, 0x209C), (0x212A, 0x212B), (0x2132, 0x2132), (0x214E, 0x214E), (0x2160, 0x2188), (0x2C60, 0x2C7F), (0xA722, 0xA787), (0xA78B, 0xA7BF), (0xA7C2, 0xA7CA), (0xA7F5, 0xA7FF), (0xAB30, 0xAB5A), (0xAB5C, 0xAB64), (0xAB66, 0xAB69), (0xFB00, 0xFB06), (0xFF21, 0xFF3A), (0xFF41, 0xFF5A)),
Seq("GREEK", "GREK") -> Seq((0x0370, 0x0373), (0x0375, 0x0377), (0x037A, 0x037D), (0x037F, 0x037F), (0x0384, 0x0384), (0x0386, 0x0386), (0x0388, 0x038A), (0x038C, 0x038C), (0x038E, 0x03A1), (0x03A3, 0x03E1), (0x03F0, 0x03FF), (0x1D26, 0x1D2A), (0x1D5D, 0x1D61), (0x1D66, 0x1D6A), (0x1DBF, 0x1DBF), (0x1F00, 0x1F15), (0x1F18, 0x1F1D), (0x1F20, 0x1F45), (0x1F48, 0x1F4D), (0x1F50, 0x1F57), (0x1F59, 0x1F59), (0x1F5B, 0x1F5B), (0x1F5D, 0x1F5D), (0x1F5F, 0x1F7D), (0x1F80, 0x1FB4), (0x1FB6, 0x1FC4), (0x1FC6, 0x1FD3), (0x1FD6, 0x1FDB), (0x1FDD, 0x1FEF), (0x1FF2, 0x1FF4), (0x1FF6, 0x1FFE), (0x2126, 0x2126), (0xAB65, 0xAB65), (0x10140, 0x1018E), (0x101A0, 0x101A0), (0x1D200, 0x1D245)),
Seq("CYRILLIC", "CYRL") -> Seq((0x0400, 0x0484), (0x0487, 0x052F), (0x1C80, 0x1C88), (0x1D2B, 0x1D2B), (0x1D78, 0x1D78), (0x2DE0, 0x2DFF), (0xA640, 0xA69F), (0xFE2E, 0xFE2F)),
Seq("ARMENIAN", "ARMN") -> Seq((0x0531, 0x0556), (0x0559, 0x058A), (0x058D, 0x058F), (0xFB13, 0xFB17)),
Seq("HEBREW", "HEBR") -> Seq((0x0591, 0x05C7), (0x05D0, 0x05EA), (0x05EF, 0x05F4), (0xFB1D, 0xFB36), (0xFB38, 0xFB3C), (0xFB3E, 0xFB3E), (0xFB40, 0xFB41), (0xFB43, 0xFB44), (0xFB46, 0xFB4F)),
Seq("ARABIC", "ARAB") -> Seq((0x0600, 0x0604), (0x0606, 0x060B), (0x060D, 0x061A), (0x061C, 0x061C), (0x061E, 0x061E), (0x0620, 0x063F), (0x0641, 0x064A), (0x0656, 0x066F), (0x0671, 0x06DC), (0x06DE, 0x06FF), (0x0750, 0x077F), (0x08A0, 0x08B4), (0x08B6, 0x08C7), (0x08D3, 0x08E1), (0x08E3, 0x08FF), (0xFB50, 0xFBC1), (0xFBD3, 0xFD3D), (0xFD50, 0xFD8F), (0xFD92, 0xFDC7), (0xFDF0, 0xFDFD), (0xFE70, 0xFE74), (0xFE76, 0xFEFC), (0x10E60, 0x10E7E), (0x1EE00, 0x1EE03), (0x1EE05, 0x1EE1F), (0x1EE21, 0x1EE22), (0x1EE24, 0x1EE24), (0x1EE27, 0x1EE27), (0x1EE29, 0x1EE32), (0x1EE34, 0x1EE37), (0x1EE39, 0x1EE39), (0x1EE3B, 0x1EE3B), (0x1EE42, 0x1EE42), (0x1EE47, 0x1EE47), (0x1EE49, 0x1EE49), (0x1EE4B, 0x1EE4B), (0x1EE4D, 0x1EE4F), (0x1EE51, 0x1EE52), (0x1EE54, 0x1EE54), (0x1EE57, 0x1EE57), (0x1EE59, 0x1EE59), (0x1EE5B, 0x1EE5B), (0x1EE5D, 0x1EE5D), (0x1EE5F, 0x1EE5F), (0x1EE61, 0x1EE62), (0x1EE64, 0x1EE64), (0x1EE67, 0x1EE6A), (0x1EE6C, 0x1EE72), (0x1EE74, 0x1EE77), (0x1EE79, 0x1EE7C), (0x1EE7E, 0x1EE7E), (0x1EE80, 0x1EE89), (0x1EE8B, 0x1EE9B), (0x1EEA1, 0x1EEA3), (0x1EEA5, 0x1EEA9), (0x1EEAB, 0x1EEBB), (0x1EEF0, 0x1EEF1)),
Seq("SYRIAC", "SYRC") -> Seq((0x0700, 0x070D), (0x070F, 0x074A), (0x074D, 0x074F), (0x0860, 0x086A)),
Seq("THAANA", "THAA") -> Seq((0x0780, 0x07B1)),
Seq("DEVANAGARI", "DEVA") -> Seq((0x0900, 0x0950), (0x0955, 0x0963), (0x0966, 0x097F), (0xA8E0, 0xA8FF)),
Seq("BENGALI", "BENG") -> Seq((0x0980, 0x0983), (0x0985, 0x098C), (0x098F, 0x0990), (0x0993, 0x09A8), (0x09AA, 0x09B0), (0x09B2, 0x09B2), (0x09B6, 0x09B9), (0x09BC, 0x09C4), (0x09C7, 0x09C8), (0x09CB, 0x09CE), (0x09D7, 0x09D7), (0x09DC, 0x09DD), (0x09DF, 0x09E3), (0x09E6, 0x09FE)),
Seq("GURMUKHI", "GURU") -> Seq((0x0A01, 0x0A03), (0x0A05, 0x0A0A), (0x0A0F, 0x0A10), (0x0A13, 0x0A28), (0x0A2A, 0x0A30), (0x0A32, 0x0A33), (0x0A35, 0x0A36), (0x0A38, 0x0A39), (0x0A3C, 0x0A3C), (0x0A3E, 0x0A42), (0x0A47, 0x0A48), (0x0A4B, 0x0A4D), (0x0A51, 0x0A51), (0x0A59, 0x0A5C), (0x0A5E, 0x0A5E), (0x0A66, 0x0A76)),
Seq("GUJARATI", "GUJR") -> Seq((0x0A81, 0x0A83), (0x0A85, 0x0A8D), (0x0A8F, 0x0A91), (0x0A93, 0x0AA8), (0x0AAA, 0x0AB0), (0x0AB2, 0x0AB3), (0x0AB5, 0x0AB9), (0x0ABC, 0x0AC5), (0x0AC7, 0x0AC9), (0x0ACB, 0x0ACD), (0x0AD0, 0x0AD0), (0x0AE0, 0x0AE3), (0x0AE6, 0x0AF1), (0x0AF9, 0x0AFF)),
Seq("ORIYA", "ORYA") -> Seq((0x0B01, 0x0B03), (0x0B05, 0x0B0C), (0x0B0F, 0x0B10), (0x0B13, 0x0B28), (0x0B2A, 0x0B30), (0x0B32, 0x0B33), (0x0B35, 0x0B39), (0x0B3C, 0x0B44), (0x0B47, 0x0B48), (0x0B4B, 0x0B4D), (0x0B55, 0x0B57), (0x0B5C, 0x0B5D), (0x0B5F, 0x0B63), (0x0B66, 0x0B77)),
Seq("TAMIL", "TAML") -> Seq((0x0B82, 0x0B83), (0x0B85, 0x0B8A), (0x0B8E, 0x0B90), (0x0B92, 0x0B95), (0x0B99, 0x0B9A), (0x0B9C, 0x0B9C), (0x0B9E, 0x0B9F), (0x0BA3, 0x0BA4), (0x0BA8, 0x0BAA), (0x0BAE, 0x0BB9), (0x0BBE, 0x0BC2), (0x0BC6, 0x0BC8), (0x0BCA, 0x0BCD), (0x0BD0, 0x0BD0), (0x0BD7, 0x0BD7), (0x0BE6, 0x0BFA), (0x11FC0, 0x11FF1), (0x11FFF, 0x11FFF)),
Seq("TELUGU", "TELU") -> Seq((0x0C00, 0x0C0C), (0x0C0E, 0x0C10), (0x0C12, 0x0C28), (0x0C2A, 0x0C39), (0x0C3D, 0x0C44), (0x0C46, 0x0C48), (0x0C4A, 0x0C4D), (0x0C55, 0x0C56), (0x0C58, 0x0C5A), (0x0C60, 0x0C63), (0x0C66, 0x0C6F), (0x0C77, 0x0C7F)),
Seq("KANNADA", "KNDA") -> Seq((0x0C80, 0x0C8C), (0x0C8E, 0x0C90), (0x0C92, 0x0CA8), (0x0CAA, 0x0CB3), (0x0CB5, 0x0CB9), (0x0CBC, 0x0CC4), (0x0CC6, 0x0CC8), (0x0CCA, 0x0CCD), (0x0CD5, 0x0CD6), (0x0CDE, 0x0CDE), (0x0CE0, 0x0CE3), (0x0CE6, 0x0CEF), (0x0CF1, 0x0CF2)),
Seq("MALAYALAM", "MLYM") -> Seq((0x0D00, 0x0D0C), (0x0D0E, 0x0D10), (0x0D12, 0x0D44), (0x0D46, 0x0D48), (0x0D4A, 0x0D4F), (0x0D54, 0x0D63), (0x0D66, 0x0D7F)),
Seq("SINHALA", "SINH") -> Seq((0x0D81, 0x0D83), (0x0D85, 0x0D96), (0x0D9A, 0x0DB1), (0x0DB3, 0x0DBB), (0x0DBD, 0x0DBD), (0x0DC0, 0x0DC6), (0x0DCA, 0x0DCA), (0x0DCF, 0x0DD4), (0x0DD6, 0x0DD6), (0x0DD8, 0x0DDF), (0x0DE6, 0x0DEF), (0x0DF2, 0x0DF4), (0x111E1, 0x111F4)),
Seq("THAI", "THAI") -> Seq((0x0E01, 0x0E3A), (0x0E40, 0x0E5B)),
Seq("LAO", "LAOO") -> Seq((0x0E81, 0x0E82), (0x0E84, 0x0E84), (0x0E86, 0x0E8A), (0x0E8C, 0x0EA3), (0x0EA5, 0x0EA5), (0x0EA7, 0x0EBD), (0x0EC0, 0x0EC4), (0x0EC6, 0x0EC6), (0x0EC8, 0x0ECD), (0x0ED0, 0x0ED9), (0x0EDC, 0x0EDF)),
Seq("TIBETAN", "TIBT") -> Seq((0x0F00, 0x0F47), (0x0F49, 0x0F6C), (0x0F71, 0x0F97), (0x0F99, 0x0FBC), (0x0FBE, 0x0FCC), (0x0FCE, 0x0FD4), (0x0FD9, 0x0FDA)),
Seq("MYANMAR", "MYMR") -> Seq((0x1000, 0x109F), (0xA9E0, 0xA9FE), (0xAA60, 0xAA7F)),
Seq("GEORGIAN", "GEOR") -> Seq((0x10A0, 0x10C5), (0x10C7, 0x10C7), (0x10CD, 0x10CD), (0x10D0, 0x10FA), (0x10FC, 0x10FF), (0x1C90, 0x1CBA), (0x1CBD, 0x1CBF), (0x2D00, 0x2D25), (0x2D27, 0x2D27), (0x2D2D, 0x2D2D)),
Seq("HANGUL", "HANG") -> Seq((0x1100, 0x11FF), (0x302E, 0x302F), (0x3131, 0x318E), (0x3200, 0x321E), (0x3260, 0x327E), (0xA960, 0xA97C), (0xAC00, 0xD7A3), (0xD7B0, 0xD7C6), (0xD7CB, 0xD7FB), (0xFFA0, 0xFFBE), (0xFFC2, 0xFFC7), (0xFFCA, 0xFFCF), (0xFFD2, 0xFFD7), (0xFFDA, 0xFFDC)),
Seq("ETHIOPIC", "ETHI") -> Seq((0x1200, 0x1248), (0x124A, 0x124D), (0x1250, 0x1256), (0x1258, 0x1258), (0x125A, 0x125D), (0x1260, 0x1288), (0x128A, 0x128D), (0x1290, 0x12B0), (0x12B2, 0x12B5), (0x12B8, 0x12BE), (0x12C0, 0x12C0), (0x12C2, 0x12C5), (0x12C8, 0x12D6), (0x12D8, 0x1310), (0x1312, 0x1315), (0x1318, 0x135A), (0x135D, 0x137C), (0x1380, 0x1399), (0x2D80, 0x2D96), (0x2DA0, 0x2DA6), (0x2DA8, 0x2DAE), (0x2DB0, 0x2DB6), (0x2DB8, 0x2DBE), (0x2DC0, 0x2DC6), (0x2DC8, 0x2DCE), (0x2DD0, 0x2DD6), (0x2DD8, 0x2DDE), (0xAB01, 0xAB06), (0xAB09, 0xAB0E), (0xAB11, 0xAB16), (0xAB20, 0xAB26), (0xAB28, 0xAB2E)),
Seq("CHEROKEE", "CHER") -> Seq((0x13A0, 0x13F5), (0x13F8, 0x13FD), (0xAB70, 0xABBF)),
Seq("CANADIAN_ABORIGINAL", "CANS") -> Seq((0x1400, 0x167F), (0x18B0, 0x18F5)),
Seq("OGHAM", "OGAM") -> Seq((0x1680, 0x169C)),
Seq("RUNIC", "RUNR") -> Seq((0x16A0, 0x16EA), (0x16EE, 0x16F8)),
Seq("KHMER", "KHMR") -> Seq((0x1780, 0x17DD), (0x17E0, 0x17E9), (0x17F0, 0x17F9), (0x19E0, 0x19FF)),
Seq("MONGOLIAN", "MONG") -> Seq((0x1800, 0x1801), (0x1804, 0x1804), (0x1806, 0x180E), (0x1810, 0x1819), (0x1820, 0x1878), (0x1880, 0x18AA), (0x11660, 0x1166C)),
Seq("HIRAGANA", "HIRA") -> Seq((0x3041, 0x3096), (0x309D, 0x309F), (0x1B001, 0x1B11E), (0x1B150, 0x1B152), (0x1F200, 0x1F200)),
Seq("KATAKANA", "KANA") -> Seq((0x30A1, 0x30FA), (0x30FD, 0x30FF), (0x31F0, 0x31FF), (0x32D0, 0x32FE), (0x3300, 0x3357), (0xFF66, 0xFF6F), (0xFF71, 0xFF9D), (0x1B000, 0x1B000), (0x1B164, 0x1B167)),
Seq("BOPOMOFO", "BOPO") -> Seq((0x02EA, 0x02EB), (0x3105, 0x312F), (0x31A0, 0x31BF)),
Seq("HAN", "HANI") -> Seq((0x2E80, 0x2E99), (0x2E9B, 0x2EF3), (0x2F00, 0x2FD5), (0x3005, 0x3005), (0x3007, 0x3007), (0x3021, 0x3029), (0x3038, 0x303B), (0x3400, 0x4DBF), (0x4E00, 0x9FFC), (0xF900, 0xFA6D), (0xFA70, 0xFAD9), (0x16FF0, 0x16FF1), (0x20000, 0x2A6DD), (0x2A700, 0x2B734), (0x2B740, 0x2B81D), (0x2B820, 0x2CEA1), (0x2CEB0, 0x2EBE0), (0x2F800, 0x2FA1D), (0x30000, 0x3134A)),
Seq("YI", "YIII") -> Seq((0xA000, 0xA48C), (0xA490, 0xA4C6)),
Seq("OLD_ITALIC", "ITAL") -> Seq((0x10300, 0x10323), (0x1032D, 0x1032F)),
Seq("GOTHIC", "GOTH") -> Seq((0x10330, 0x1034A)),
Seq("DESERET", "DSRT") -> Seq((0x10400, 0x1044F)),
Seq("INHERITED", "ZINH") -> Seq((0x0300, 0x036F), (0x0485, 0x0486), (0x064B, 0x0655), (0x0670, 0x0670), (0x0951, 0x0954), (0x1AB0, 0x1AC0), (0x1CD0, 0x1CD2), (0x1CD4, 0x1CE0), (0x1CE2, 0x1CE8), (0x1CED, 0x1CED), (0x1CF4, 0x1CF4), (0x1CF8, 0x1CF9), (0x1DC0, 0x1DF9), (0x1DFB, 0x1DFF), (0x200C, 0x200D), (0x20D0, 0x20F0), (0x302A, 0x302D), (0x3099, 0x309A), (0xFE00, 0xFE0F), (0xFE20, 0xFE2D), (0x101FD, 0x101FD), (0x102E0, 0x102E0), (0x1133B, 0x1133B), (0x1D167, 0x1D169), (0x1D17B, 0x1D182), (0x1D185, 0x1D18B), (0x1D1AA, 0x1D1AD), (0xE0100, 0xE01EF)),
Seq("TAGALOG", "TGLG") -> Seq((0x1700, 0x170C), (0x170E, 0x1714)),
Seq("HANUNOO", "HANO") -> Seq((0x1720, 0x1734)),
Seq("BUHID", "BUHD") -> Seq((0x1740, 0x1753)),
Seq("TAGBANWA", "TAGB") -> Seq((0x1760, 0x176C), (0x176E, 0x1770), (0x1772, 0x1773)),
Seq("LIMBU", "LIMB") -> Seq((0x1900, 0x191E), (0x1920, 0x192B), (0x1930, 0x193B), (0x1940, 0x1940), (0x1944, 0x194F)),
Seq("TAI_LE", "TALE") -> Seq((0x1950, 0x196D), (0x1970, 0x1974)),
Seq("LINEAR_B", "LINB") -> Seq((0x10000, 0x1000B), (0x1000D, 0x10026), (0x10028, 0x1003A), (0x1003C, 0x1003D), (0x1003F, 0x1004D), (0x10050, 0x1005D), (0x10080, 0x100FA)),
Seq("UGARITIC", "UGAR") -> Seq((0x10380, 0x1039D), (0x1039F, 0x1039F)),
Seq("SHAVIAN", "SHAW") -> Seq((0x10450, 0x1047F)),
Seq("OSMANYA", "OSMA") -> Seq((0x10480, 0x1049D), (0x104A0, 0x104A9)),
Seq("CYPRIOT", "CPRT") -> Seq((0x10800, 0x10805), (0x10808, 0x10808), (0x1080A, 0x10835), (0x10837, 0x10838), (0x1083C, 0x1083C), (0x1083F, 0x1083F)),
Seq("BRAILLE", "BRAI") -> Seq((0x2800, 0x28FF)),
Seq("BUGINESE", "BUGI") -> Seq((0x1A00, 0x1A1B), (0x1A1E, 0x1A1F)),
Seq("COPTIC", "COPT") -> Seq((0x03E2, 0x03EF), (0x2C80, 0x2CF3), (0x2CF9, 0x2CFF)),
Seq("NEW_TAI_LUE", "TALU") -> Seq((0x1980, 0x19AB), (0x19B0, 0x19C9), (0x19D0, 0x19DA), (0x19DE, 0x19DF)),
Seq("GLAGOLITIC", "GLAG") -> Seq((0x2C00, 0x2C2E), (0x2C30, 0x2C5E), (0x1E000, 0x1E006), (0x1E008, 0x1E018), (0x1E01B, 0x1E021), (0x1E023, 0x1E024), (0x1E026, 0x1E02A)),
Seq("TIFINAGH", "TFNG") -> Seq((0x2D30, 0x2D67), (0x2D6F, 0x2D70), (0x2D7F, 0x2D7F)),
Seq("SYLOTI_NAGRI", "SYLO") -> Seq((0xA800, 0xA82C)),
Seq("OLD_PERSIAN", "XPEO") -> Seq((0x103A0, 0x103C3), (0x103C8, 0x103D5)),
Seq("KHAROSHTHI", "KHAR") -> Seq((0x10A00, 0x10A03), (0x10A05, 0x10A06), (0x10A0C, 0x10A13), (0x10A15, 0x10A17), (0x10A19, 0x10A35), (0x10A38, 0x10A3A), (0x10A3F, 0x10A48), (0x10A50, 0x10A58)),
Seq("BALINESE", "BALI") -> Seq((0x1B00, 0x1B4B), (0x1B50, 0x1B7C)),
Seq("CUNEIFORM", "XSUX") -> Seq((0x12000, 0x12399), (0x12400, 0x1246E), (0x12470, 0x12474), (0x12480, 0x12543)),
Seq("PHOENICIAN", "PHNX") -> Seq((0x10900, 0x1091B), (0x1091F, 0x1091F)),
Seq("PHAGS_PA", "PHAG") -> Seq((0xA840, 0xA877)),
Seq("NKO", "NKOO") -> Seq((0x07C0, 0x07FA), (0x07FD, 0x07FF)),
Seq("SUNDANESE", "SUND") -> Seq((0x1B80, 0x1BBF), (0x1CC0, 0x1CC7)),
Seq("BATAK", "BATK") -> Seq((0x1BC0, 0x1BF3), (0x1BFC, 0x1BFF)),
Seq("LEPCHA", "LEPC") -> Seq((0x1C00, 0x1C37), (0x1C3B, 0x1C49), (0x1C4D, 0x1C4F)),
Seq("OL_CHIKI", "OLCK") -> Seq((0x1C50, 0x1C7F)),
Seq("VAI", "VAII") -> Seq((0xA500, 0xA62B)),
Seq("SAURASHTRA", "SAUR") -> Seq((0xA880, 0xA8C5), (0xA8CE, 0xA8D9)),
Seq("KAYAH_LI", "KALI") -> Seq((0xA900, 0xA92D), (0xA92F, 0xA92F)),
Seq("REJANG", "RJNG") -> Seq((0xA930, 0xA953), (0xA95F, 0xA95F)),
Seq("LYCIAN", "LYCI") -> Seq((0x10280, 0x1029C)),
Seq("CARIAN", "CARI") -> Seq((0x102A0, 0x102D0)),
Seq("LYDIAN", "LYDI") -> Seq((0x10920, 0x10939), (0x1093F, 0x1093F)),
Seq("CHAM", "CHAM") -> Seq((0xAA00, 0xAA36), (0xAA40, 0xAA4D), (0xAA50, 0xAA59), (0xAA5C, 0xAA5F)),
Seq("TAI_THAM", "LANA") -> Seq((0x1A20, 0x1A5E), (0x1A60, 0x1A7C), (0x1A7F, 0x1A89), (0x1A90, 0x1A99), (0x1AA0, 0x1AAD)),
Seq("TAI_VIET", "TAVT") -> Seq((0xAA80, 0xAAC2), (0xAADB, 0xAADF)),
Seq("AVESTAN", "AVST") -> Seq((0x10B00, 0x10B35), (0x10B39, 0x10B3F)),
Seq("EGYPTIAN_HIEROGLYPHS", "EGYP") -> Seq((0x13000, 0x1342E), (0x13430, 0x13438)),
Seq("SAMARITAN", "SAMR") -> Seq((0x0800, 0x082D), (0x0830, 0x083E)),
Seq("MANDAIC", "MAND") -> Seq((0x0840, 0x085B), (0x085E, 0x085E)),
Seq("LISU", "LISU") -> Seq((0xA4D0, 0xA4FF), (0x11FB0, 0x11FB0)),
Seq("BAMUM", "BAMU") -> Seq((0xA6A0, 0xA6F7), (0x16800, 0x16A38)),
Seq("JAVANESE", "JAVA") -> Seq((0xA980, 0xA9CD), (0xA9D0, 0xA9D9), (0xA9DE, 0xA9DF)),
Seq("MEETEI_MAYEK", "MTEI") -> Seq((0xAAE0, 0xAAF6), (0xABC0, 0xABED), (0xABF0, 0xABF9)),
Seq("IMPERIAL_ARAMAIC", "ARMI") -> Seq((0x10840, 0x10855), (0x10857, 0x1085F)),
Seq("OLD_SOUTH_ARABIAN", "SARB") -> Seq((0x10A60, 0x10A7F)),
Seq("INSCRIPTIONAL_PARTHIAN", "PRTI") -> Seq((0x10B40, 0x10B55), (0x10B58, 0x10B5F)),
Seq("INSCRIPTIONAL_PAHLAVI", "PHLI") -> Seq((0x10B60, 0x10B72), (0x10B78, 0x10B7F)),
Seq("OLD_TURKIC", "ORKH") -> Seq((0x10C00, 0x10C48)),
Seq("BRAHMI", "BRAH") -> Seq((0x11000, 0x1104D), (0x11052, 0x1106F), (0x1107F, 0x1107F)),
Seq("KAITHI", "KTHI") -> Seq((0x11080, 0x110C1), (0x110CD, 0x110CD)),
Seq("MEROITIC_HIEROGLYPHS", "MERO") -> Seq((0x10980, 0x1099F)),
Seq("MEROITIC_CURSIVE", "MERC") -> Seq((0x109A0, 0x109B7), (0x109BC, 0x109CF), (0x109D2, 0x109FF)),
Seq("SORA_SOMPENG", "SORA") -> Seq((0x110D0, 0x110E8), (0x110F0, 0x110F9)),
Seq("CHAKMA", "CAKM") -> Seq((0x11100, 0x11134), (0x11136, 0x11147)),
Seq("SHARADA", "SHRD") -> Seq((0x11180, 0x111DF)),
Seq("TAKRI", "TAKR") -> Seq((0x11680, 0x116B8), (0x116C0, 0x116C9)),
Seq("MIAO", "PLRD") -> Seq((0x16F00, 0x16F4A), (0x16F4F, 0x16F87), (0x16F8F, 0x16F9F)),
Seq("CAUCASIAN_ALBANIAN", "AGHB") -> Seq((0x10530, 0x10563), (0x1056F, 0x1056F)),
Seq("BASSA_VAH", "BASS") -> Seq((0x16AD0, 0x16AED), (0x16AF0, 0x16AF5)),
Seq("DUPLOYAN", "DUPL") -> Seq((0x1BC00, 0x1BC6A), (0x1BC70, 0x1BC7C), (0x1BC80, 0x1BC88), (0x1BC90, 0x1BC99), (0x1BC9C, 0x1BC9F)),
Seq("ELBASAN", "ELBA") -> Seq((0x10500, 0x10527)),
Seq("GRANTHA", "GRAN") -> Seq((0x11300, 0x11303), (0x11305, 0x1130C), (0x1130F, 0x11310), (0x11313, 0x11328), (0x1132A, 0x11330), (0x11332, 0x11333), (0x11335, 0x11339), (0x1133C, 0x11344), (0x11347, 0x11348), (0x1134B, 0x1134D), (0x11350, 0x11350), (0x11357, 0x11357), (0x1135D, 0x11363), (0x11366, 0x1136C), (0x11370, 0x11374)),
Seq("PAHAWH_HMONG", "HMNG") -> Seq((0x16B00, 0x16B45), (0x16B50, 0x16B59), (0x16B5B, 0x16B61), (0x16B63, 0x16B77), (0x16B7D, 0x16B8F)),
Seq("KHOJKI", "KHOJ") -> Seq((0x11200, 0x11211), (0x11213, 0x1123E)),
Seq("LINEAR_A", "LINA") -> Seq((0x10600, 0x10736), (0x10740, 0x10755), (0x10760, 0x10767)),
Seq("MAHAJANI", "MAHJ") -> Seq((0x11150, 0x11176)),
Seq("MANICHAEAN", "MANI") -> Seq((0x10AC0, 0x10AE6), (0x10AEB, 0x10AF6)),
Seq("MENDE_KIKAKUI", "MEND") -> Seq((0x1E800, 0x1E8C4), (0x1E8C7, 0x1E8D6)),
Seq("MODI", "MODI") -> Seq((0x11600, 0x11644), (0x11650, 0x11659)),
Seq("MRO", "MROO") -> Seq((0x16A40, 0x16A5E), (0x16A60, 0x16A69), (0x16A6E, 0x16A6F)),
Seq("OLD_NORTH_ARABIAN", "NARB") -> Seq((0x10A80, 0x10A9F)),
Seq("NABATAEAN", "NBAT") -> Seq((0x10880, 0x1089E), (0x108A7, 0x108AF)),
Seq("PALMYRENE", "PALM") -> Seq((0x10860, 0x1087F)),
Seq("PAU_CIN_HAU", "PAUC") -> Seq((0x11AC0, 0x11AF8)),
Seq("OLD_PERMIC", "PERM") -> Seq((0x10350, 0x1037A)),
Seq("PSALTER_PAHLAVI", "PHLP") -> Seq((0x10B80, 0x10B91), (0x10B99, 0x10B9C), (0x10BA9, 0x10BAF)),
Seq("SIDDHAM", "SIDD") -> Seq((0x11580, 0x115B5), (0x115B8, 0x115DD)),
Seq("KHUDAWADI", "SIND") -> Seq((0x112B0, 0x112EA), (0x112F0, 0x112F9)),
Seq("TIRHUTA", "TIRH") -> Seq((0x11480, 0x114C7), (0x114D0, 0x114D9)),
Seq("WARANG_CITI", "WARA") -> Seq((0x118A0, 0x118F2), (0x118FF, 0x118FF)),
Seq("AHOM", "AHOM") -> Seq((0x11700, 0x1171A), (0x1171D, 0x1172B), (0x11730, 0x1173F)),
Seq("ANATOLIAN_HIEROGLYPHS", "HLUW") -> Seq((0x14400, 0x14646)),
Seq("HATRAN", "HATR") -> Seq((0x108E0, 0x108F2), (0x108F4, 0x108F5), (0x108FB, 0x108FF)),
Seq("MULTANI", "MULT") -> Seq((0x11280, 0x11286), (0x11288, 0x11288), (0x1128A, 0x1128D), (0x1128F, 0x1129D), (0x1129F, 0x112A9)),
Seq("OLD_HUNGARIAN", "HUNG") -> Seq((0x10C80, 0x10CB2), (0x10CC0, 0x10CF2), (0x10CFA, 0x10CFF)),
Seq("SIGNWRITING", "SGNW") -> Seq((0x1D800, 0x1DA8B), (0x1DA9B, 0x1DA9F), (0x1DAA1, 0x1DAAF)),
Seq("ADLAM", "ADLM") -> Seq((0x1E900, 0x1E94B), (0x1E950, 0x1E959), (0x1E95E, 0x1E95F)),
Seq("BHAIKSUKI", "BHKS") -> Seq((0x11C00, 0x11C08), (0x11C0A, 0x11C36), (0x11C38, 0x11C45), (0x11C50, 0x11C6C)),
Seq("MARCHEN", "MARC") -> Seq((0x11C70, 0x11C8F), (0x11C92, 0x11CA7), (0x11CA9, 0x11CB6)),
Seq("NEWA", "NEWA") -> Seq((0x11400, 0x1145B), (0x1145D, 0x11461)),
Seq("OSAGE", "OSGE") -> Seq((0x104B0, 0x104D3), (0x104D8, 0x104FB)),
Seq("TANGUT", "TANG") -> Seq((0x16FE0, 0x16FE0), (0x17000, 0x187F7), (0x18800, 0x18AFF), (0x18D00, 0x18D08)),
Seq("MASARAM_GONDI", "GONM") -> Seq((0x11D00, 0x11D06), (0x11D08, 0x11D09), (0x11D0B, 0x11D36), (0x11D3A, 0x11D3A), (0x11D3C, 0x11D3D), (0x11D3F, 0x11D47), (0x11D50, 0x11D59)),
Seq("NUSHU", "NSHU") -> Seq((0x16FE1, 0x16FE1), (0x1B170, 0x1B2FB)),
Seq("SOYOMBO", "SOYO") -> Seq((0x11A50, 0x11AA2)),
Seq("ZANABAZAR_SQUARE", "ZANB") -> Seq((0x11A00, 0x11A47)),
Seq("HANIFI_ROHINGYA", "ROHG") -> Seq((0x10D00, 0x10D27), (0x10D30, 0x10D39)),
Seq("OLD_SOGDIAN", "SOGO") -> Seq((0x10F00, 0x10F27)),
Seq("SOGDIAN", "SOGD") -> Seq((0x10F30, 0x10F59)),
Seq("DOGRA", "DOGR") -> Seq((0x11800, 0x1183B)),
Seq("GUNJALA_GONDI", "GONG") -> Seq((0x11D60, 0x11D65), (0x11D67, 0x11D68), (0x11D6A, 0x11D8E), (0x11D90, 0x11D91), (0x11D93, 0x11D98), (0x11DA0, 0x11DA9)),
Seq("MAKASAR", "MAKA") -> Seq((0x11EE0, 0x11EF8)),
Seq("MEDEFAIDRIN", "MEDF") -> Seq((0x16E40, 0x16E9A)),
Seq("ELYMAIC", "ELYM") -> Seq((0x10FE0, 0x10FF6)),
Seq("NANDINAGARI", "NAND") -> Seq((0x119A0, 0x119A7), (0x119AA, 0x119D7), (0x119DA, 0x119E4)),
Seq("NYIAKENG_PUACHUE_HMONG", "HMNP") -> Seq((0x1E100, 0x1E12C), (0x1E130, 0x1E13D), (0x1E140, 0x1E149), (0x1E14E, 0x1E14F)),
Seq("WANCHO", "WCHO") -> Seq((0x1E2C0, 0x1E2F9), (0x1E2FF, 0x1E2FF)),
Seq("YEZIDI", "YEZI") -> Seq((0x10E80, 0x10EA9), (0x10EAB, 0x10EAD), (0x10EB0, 0x10EB1)),
Seq("CHORASMIAN", "CHRS") -> Seq((0x10FB0, 0x10FCB)),
Seq("DIVES_AKURU", "DIAK") -> Seq((0x11900, 0x11906), (0x11909, 0x11909), (0x1190C, 0x11913), (0x11915, 0x11916), (0x11918, 0x11935), (0x11937, 0x11938), (0x1193B, 0x11946), (0x11950, 0x11959)),
Seq("KHITAN_SMALL_SCRIPT", "KITS") -> Seq((0x16FE4, 0x16FE4), (0x18B00, 0x18CD5))
)
}