# -*- coding: utf-8 -*-
#
# NOTE: This file was auto-generated with MetaTools/buildUCD.py.
# Source: https://unicode.org/Public/UNIDATA/Blocks.txt
# License: http://unicode.org/copyright.html#License
#
# Blocks-15.1.0.txt
# Date: 2023-07-28, 15:47:20 GMT
# © 2023 Unicode®, Inc.
# For terms of use, see https://www.unicode.org/terms_of_use.html
#
# Unicode Character Database
# For documentation, see https://www.unicode.org/reports/tr44/
#
# Format:
# Start Code..End Code; Block Name


RANGES = [
    0x0000,  # .. 0x007F ; Basic Latin
    0x0080,  # .. 0x00FF ; Latin-1 Supplement
    0x0100,  # .. 0x017F ; Latin Extended-A
    0x0180,  # .. 0x024F ; Latin Extended-B
    0x0250,  # .. 0x02AF ; IPA Extensions
    0x02B0,  # .. 0x02FF ; Spacing Modifier Letters
    0x0300,  # .. 0x036F ; Combining Diacritical Marks
    0x0370,  # .. 0x03FF ; Greek and Coptic
    0x0400,  # .. 0x04FF ; Cyrillic
    0x0500,  # .. 0x052F ; Cyrillic Supplement
    0x0530,  # .. 0x058F ; Armenian
    0x0590,  # .. 0x05FF ; Hebrew
    0x0600,  # .. 0x06FF ; Arabic
    0x0700,  # .. 0x074F ; Syriac
    0x0750,  # .. 0x077F ; Arabic Supplement
    0x0780,  # .. 0x07BF ; Thaana
    0x07C0,  # .. 0x07FF ; NKo
    0x0800,  # .. 0x083F ; Samaritan
    0x0840,  # .. 0x085F ; Mandaic
    0x0860,  # .. 0x086F ; Syriac Supplement
    0x0870,  # .. 0x089F ; Arabic Extended-B
    0x08A0,  # .. 0x08FF ; Arabic Extended-A
    0x0900,  # .. 0x097F ; Devanagari
    0x0980,  # .. 0x09FF ; Bengali
    0x0A00,  # .. 0x0A7F ; Gurmukhi
    0x0A80,  # .. 0x0AFF ; Gujarati
    0x0B00,  # .. 0x0B7F ; Oriya
    0x0B80,  # .. 0x0BFF ; Tamil
    0x0C00,  # .. 0x0C7F ; Telugu
    0x0C80,  # .. 0x0CFF ; Kannada
    0x0D00,  # .. 0x0D7F ; Malayalam
    0x0D80,  # .. 0x0DFF ; Sinhala
    0x0E00,  # .. 0x0E7F ; Thai
    0x0E80,  # .. 0x0EFF ; Lao
    0x0F00,  # .. 0x0FFF ; Tibetan
    0x1000,  # .. 0x109F ; Myanmar
    0x10A0,  # .. 0x10FF ; Georgian
    0x1100,  # .. 0x11FF ; Hangul Jamo
    0x1200,  # .. 0x137F ; Ethiopic
    0x1380,  # .. 0x139F ; Ethiopic Supplement
    0x13A0,  # .. 0x13FF ; Cherokee
    0x1400,  # .. 0x167F ; Unified Canadian Aboriginal Syllabics
    0x1680,  # .. 0x169F ; Ogham
    0x16A0,  # .. 0x16FF ; Runic
    0x1700,  # .. 0x171F ; Tagalog
    0x1720,  # .. 0x173F ; Hanunoo
    0x1740,  # .. 0x175F ; Buhid
    0x1760,  # .. 0x177F ; Tagbanwa
    0x1780,  # .. 0x17FF ; Khmer
    0x1800,  # .. 0x18AF ; Mongolian
    0x18B0,  # .. 0x18FF ; Unified Canadian Aboriginal Syllabics Extended
    0x1900,  # .. 0x194F ; Limbu
    0x1950,  # .. 0x197F ; Tai Le
    0x1980,  # .. 0x19DF ; New Tai Lue
    0x19E0,  # .. 0x19FF ; Khmer Symbols
    0x1A00,  # .. 0x1A1F ; Buginese
    0x1A20,  # .. 0x1AAF ; Tai Tham
    0x1AB0,  # .. 0x1AFF ; Combining Diacritical Marks Extended
    0x1B00,  # .. 0x1B7F ; Balinese
    0x1B80,  # .. 0x1BBF ; Sundanese
    0x1BC0,  # .. 0x1BFF ; Batak
    0x1C00,  # .. 0x1C4F ; Lepcha
    0x1C50,  # .. 0x1C7F ; Ol Chiki
    0x1C80,  # .. 0x1C8F ; Cyrillic Extended-C
    0x1C90,  # .. 0x1CBF ; Georgian Extended
    0x1CC0,  # .. 0x1CCF ; Sundanese Supplement
    0x1CD0,  # .. 0x1CFF ; Vedic Extensions
    0x1D00,  # .. 0x1D7F ; Phonetic Extensions
    0x1D80,  # .. 0x1DBF ; Phonetic Extensions Supplement
    0x1DC0,  # .. 0x1DFF ; Combining Diacritical Marks Supplement
    0x1E00,  # .. 0x1EFF ; Latin Extended Additional
    0x1F00,  # .. 0x1FFF ; Greek Extended
    0x2000,  # .. 0x206F ; General Punctuation
    0x2070,  # .. 0x209F ; Superscripts and Subscripts
    0x20A0,  # .. 0x20CF ; Currency Symbols
    0x20D0,  # .. 0x20FF ; Combining Diacritical Marks for Symbols
    0x2100,  # .. 0x214F ; Letterlike Symbols
    0x2150,  # .. 0x218F ; Number Forms
    0x2190,  # .. 0x21FF ; Arrows
    0x2200,  # .. 0x22FF ; Mathematical Operators
    0x2300,  # .. 0x23FF ; Miscellaneous Technical
    0x2400,  # .. 0x243F ; Control Pictures
    0x2440,  # .. 0x245F ; Optical Character Recognition
    0x2460,  # .. 0x24FF ; Enclosed Alphanumerics
    0x2500,  # .. 0x257F ; Box Drawing
    0x2580,  # .. 0x259F ; Block Elements
    0x25A0,  # .. 0x25FF ; Geometric Shapes
    0x2600,  # .. 0x26FF ; Miscellaneous Symbols
    0x2700,  # .. 0x27BF ; Dingbats
    0x27C0,  # .. 0x27EF ; Miscellaneous Mathematical Symbols-A
    0x27F0,  # .. 0x27FF ; Supplemental Arrows-A
    0x2800,  # .. 0x28FF ; Braille Patterns
    0x2900,  # .. 0x297F ; Supplemental Arrows-B
    0x2980,  # .. 0x29FF ; Miscellaneous Mathematical Symbols-B
    0x2A00,  # .. 0x2AFF ; Supplemental Mathematical Operators
    0x2B00,  # .. 0x2BFF ; Miscellaneous Symbols and Arrows
    0x2C00,  # .. 0x2C5F ; Glagolitic
    0x2C60,  # .. 0x2C7F ; Latin Extended-C
    0x2C80,  # .. 0x2CFF ; Coptic
    0x2D00,  # .. 0x2D2F ; Georgian Supplement
    0x2D30,  # .. 0x2D7F ; Tifinagh
    0x2D80,  # .. 0x2DDF ; Ethiopic Extended
    0x2DE0,  # .. 0x2DFF ; Cyrillic Extended-A
    0x2E00,  # .. 0x2E7F ; Supplemental Punctuation
    0x2E80,  # .. 0x2EFF ; CJK Radicals Supplement
    0x2F00,  # .. 0x2FDF ; Kangxi Radicals
    0x2FE0,  # .. 0x2FEF ; No_Block
    0x2FF0,  # .. 0x2FFF ; Ideographic Description Characters
    0x3000,  # .. 0x303F ; CJK Symbols and Punctuation
    0x3040,  # .. 0x309F ; Hiragana
    0x30A0,  # .. 0x30FF ; Katakana
    0x3100,  # .. 0x312F ; Bopomofo
    0x3130,  # .. 0x318F ; Hangul Compatibility Jamo
    0x3190,  # .. 0x319F ; Kanbun
    0x31A0,  # .. 0x31BF ; Bopomofo Extended
    0x31C0,  # .. 0x31EF ; CJK Strokes
    0x31F0,  # .. 0x31FF ; Katakana Phonetic Extensions
    0x3200,  # .. 0x32FF ; Enclosed CJK Letters and Months
    0x3300,  # .. 0x33FF ; CJK Compatibility
    0x3400,  # .. 0x4DBF ; CJK Unified Ideographs Extension A
    0x4DC0,  # .. 0x4DFF ; Yijing Hexagram Symbols
    0x4E00,  # .. 0x9FFF ; CJK Unified Ideographs
    0xA000,  # .. 0xA48F ; Yi Syllables
    0xA490,  # .. 0xA4CF ; Yi Radicals
    0xA4D0,  # .. 0xA4FF ; Lisu
    0xA500,  # .. 0xA63F ; Vai
    0xA640,  # .. 0xA69F ; Cyrillic Extended-B
    0xA6A0,  # .. 0xA6FF ; Bamum
    0xA700,  # .. 0xA71F ; Modifier Tone Letters
    0xA720,  # .. 0xA7FF ; Latin Extended-D
    0xA800,  # .. 0xA82F ; Syloti Nagri
    0xA830,  # .. 0xA83F ; Common Indic Number Forms
    0xA840,  # .. 0xA87F ; Phags-pa
    0xA880,  # .. 0xA8DF ; Saurashtra
    0xA8E0,  # .. 0xA8FF ; Devanagari Extended
    0xA900,  # .. 0xA92F ; Kayah Li
    0xA930,  # .. 0xA95F ; Rejang
    0xA960,  # .. 0xA97F ; Hangul Jamo Extended-A
    0xA980,  # .. 0xA9DF ; Javanese
    0xA9E0,  # .. 0xA9FF ; Myanmar Extended-B
    0xAA00,  # .. 0xAA5F ; Cham
    0xAA60,  # .. 0xAA7F ; Myanmar Extended-A
    0xAA80,  # .. 0xAADF ; Tai Viet
    0xAAE0,  # .. 0xAAFF ; Meetei Mayek Extensions
    0xAB00,  # .. 0xAB2F ; Ethiopic Extended-A
    0xAB30,  # .. 0xAB6F ; Latin Extended-E
    0xAB70,  # .. 0xABBF ; Cherokee Supplement
    0xABC0,  # .. 0xABFF ; Meetei Mayek
    0xAC00,  # .. 0xD7AF ; Hangul Syllables
    0xD7B0,  # .. 0xD7FF ; Hangul Jamo Extended-B
    0xD800,  # .. 0xDB7F ; High Surrogates
    0xDB80,  # .. 0xDBFF ; High Private Use Surrogates
    0xDC00,  # .. 0xDFFF ; Low Surrogates
    0xE000,  # .. 0xF8FF ; Private Use Area
    0xF900,  # .. 0xFAFF ; CJK Compatibility Ideographs
    0xFB00,  # .. 0xFB4F ; Alphabetic Presentation Forms
    0xFB50,  # .. 0xFDFF ; Arabic Presentation Forms-A
    0xFE00,  # .. 0xFE0F ; Variation Selectors
    0xFE10,  # .. 0xFE1F ; Vertical Forms
    0xFE20,  # .. 0xFE2F ; Combining Half Marks
    0xFE30,  # .. 0xFE4F ; CJK Compatibility Forms
    0xFE50,  # .. 0xFE6F ; Small Form Variants
    0xFE70,  # .. 0xFEFF ; Arabic Presentation Forms-B
    0xFF00,  # .. 0xFFEF ; Halfwidth and Fullwidth Forms
    0xFFF0,  # .. 0xFFFF ; Specials
    0x10000,  # .. 0x1007F ; Linear B Syllabary
    0x10080,  # .. 0x100FF ; Linear B Ideograms
    0x10100,  # .. 0x1013F ; Aegean Numbers
    0x10140,  # .. 0x1018F ; Ancient Greek Numbers
    0x10190,  # .. 0x101CF ; Ancient Symbols
    0x101D0,  # .. 0x101FF ; Phaistos Disc
    0x10200,  # .. 0x1027F ; No_Block
    0x10280,  # .. 0x1029F ; Lycian
    0x102A0,  # .. 0x102DF ; Carian
    0x102E0,  # .. 0x102FF ; Coptic Epact Numbers
    0x10300,  # .. 0x1032F ; Old Italic
    0x10330,  # .. 0x1034F ; Gothic
    0x10350,  # .. 0x1037F ; Old Permic
    0x10380,  # .. 0x1039F ; Ugaritic
    0x103A0,  # .. 0x103DF ; Old Persian
    0x103E0,  # .. 0x103FF ; No_Block
    0x10400,  # .. 0x1044F ; Deseret
    0x10450,  # .. 0x1047F ; Shavian
    0x10480,  # .. 0x104AF ; Osmanya
    0x104B0,  # .. 0x104FF ; Osage
    0x10500,  # .. 0x1052F ; Elbasan
    0x10530,  # .. 0x1056F ; Caucasian Albanian
    0x10570,  # .. 0x105BF ; Vithkuqi
    0x105C0,  # .. 0x105FF ; No_Block
    0x10600,  # .. 0x1077F ; Linear A
    0x10780,  # .. 0x107BF ; Latin Extended-F
    0x107C0,  # .. 0x107FF ; No_Block
    0x10800,  # .. 0x1083F ; Cypriot Syllabary
    0x10840,  # .. 0x1085F ; Imperial Aramaic
    0x10860,  # .. 0x1087F ; Palmyrene
    0x10880,  # .. 0x108AF ; Nabataean
    0x108B0,  # .. 0x108DF ; No_Block
    0x108E0,  # .. 0x108FF ; Hatran
    0x10900,  # .. 0x1091F ; Phoenician
    0x10920,  # .. 0x1093F ; Lydian
    0x10940,  # .. 0x1097F ; No_Block
    0x10980,  # .. 0x1099F ; Meroitic Hieroglyphs
    0x109A0,  # .. 0x109FF ; Meroitic Cursive
    0x10A00,  # .. 0x10A5F ; Kharoshthi
    0x10A60,  # .. 0x10A7F ; Old South Arabian
    0x10A80,  # .. 0x10A9F ; Old North Arabian
    0x10AA0,  # .. 0x10ABF ; No_Block
    0x10AC0,  # .. 0x10AFF ; Manichaean
    0x10B00,  # .. 0x10B3F ; Avestan
    0x10B40,  # .. 0x10B5F ; Inscriptional Parthian
    0x10B60,  # .. 0x10B7F ; Inscriptional Pahlavi
    0x10B80,  # .. 0x10BAF ; Psalter Pahlavi
    0x10BB0,  # .. 0x10BFF ; No_Block
    0x10C00,  # .. 0x10C4F ; Old Turkic
    0x10C50,  # .. 0x10C7F ; No_Block
    0x10C80,  # .. 0x10CFF ; Old Hungarian
    0x10D00,  # .. 0x10D3F ; Hanifi Rohingya
    0x10D40,  # .. 0x10E5F ; No_Block
    0x10E60,  # .. 0x10E7F ; Rumi Numeral Symbols
    0x10E80,  # .. 0x10EBF ; Yezidi
    0x10EC0,  # .. 0x10EFF ; Arabic Extended-C
    0x10F00,  # .. 0x10F2F ; Old Sogdian
    0x10F30,  # .. 0x10F6F ; Sogdian
    0x10F70,  # .. 0x10FAF ; Old Uyghur
    0x10FB0,  # .. 0x10FDF ; Chorasmian
    0x10FE0,  # .. 0x10FFF ; Elymaic
    0x11000,  # .. 0x1107F ; Brahmi
    0x11080,  # .. 0x110CF ; Kaithi
    0x110D0,  # .. 0x110FF ; Sora Sompeng
    0x11100,  # .. 0x1114F ; Chakma
    0x11150,  # .. 0x1117F ; Mahajani
    0x11180,  # .. 0x111DF ; Sharada
    0x111E0,  # .. 0x111FF ; Sinhala Archaic Numbers
    0x11200,  # .. 0x1124F ; Khojki
    0x11250,  # .. 0x1127F ; No_Block
    0x11280,  # .. 0x112AF ; Multani
    0x112B0,  # .. 0x112FF ; Khudawadi
    0x11300,  # .. 0x1137F ; Grantha
    0x11380,  # .. 0x113FF ; No_Block
    0x11400,  # .. 0x1147F ; Newa
    0x11480,  # .. 0x114DF ; Tirhuta
    0x114E0,  # .. 0x1157F ; No_Block
    0x11580,  # .. 0x115FF ; Siddham
    0x11600,  # .. 0x1165F ; Modi
    0x11660,  # .. 0x1167F ; Mongolian Supplement
    0x11680,  # .. 0x116CF ; Takri
    0x116D0,  # .. 0x116FF ; No_Block
    0x11700,  # .. 0x1174F ; Ahom
    0x11750,  # .. 0x117FF ; No_Block
    0x11800,  # .. 0x1184F ; Dogra
    0x11850,  # .. 0x1189F ; No_Block
    0x118A0,  # .. 0x118FF ; Warang Citi
    0x11900,  # .. 0x1195F ; Dives Akuru
    0x11960,  # .. 0x1199F ; No_Block
    0x119A0,  # .. 0x119FF ; Nandinagari
    0x11A00,  # .. 0x11A4F ; Zanabazar Square
    0x11A50,  # .. 0x11AAF ; Soyombo
    0x11AB0,  # .. 0x11ABF ; Unified Canadian Aboriginal Syllabics Extended-A
    0x11AC0,  # .. 0x11AFF ; Pau Cin Hau
    0x11B00,  # .. 0x11B5F ; Devanagari Extended-A
    0x11B60,  # .. 0x11BFF ; No_Block
    0x11C00,  # .. 0x11C6F ; Bhaiksuki
    0x11C70,  # .. 0x11CBF ; Marchen
    0x11CC0,  # .. 0x11CFF ; No_Block
    0x11D00,  # .. 0x11D5F ; Masaram Gondi
    0x11D60,  # .. 0x11DAF ; Gunjala Gondi
    0x11DB0,  # .. 0x11EDF ; No_Block
    0x11EE0,  # .. 0x11EFF ; Makasar
    0x11F00,  # .. 0x11F5F ; Kawi
    0x11F60,  # .. 0x11FAF ; No_Block
    0x11FB0,  # .. 0x11FBF ; Lisu Supplement
    0x11FC0,  # .. 0x11FFF ; Tamil Supplement
    0x12000,  # .. 0x123FF ; Cuneiform
    0x12400,  # .. 0x1247F ; Cuneiform Numbers and Punctuation
    0x12480,  # .. 0x1254F ; Early Dynastic Cuneiform
    0x12550,  # .. 0x12F8F ; No_Block
    0x12F90,  # .. 0x12FFF ; Cypro-Minoan
    0x13000,  # .. 0x1342F ; Egyptian Hieroglyphs
    0x13430,  # .. 0x1345F ; Egyptian Hieroglyph Format Controls
    0x13460,  # .. 0x143FF ; No_Block
    0x14400,  # .. 0x1467F ; Anatolian Hieroglyphs
    0x14680,  # .. 0x167FF ; No_Block
    0x16800,  # .. 0x16A3F ; Bamum Supplement
    0x16A40,  # .. 0x16A6F ; Mro
    0x16A70,  # .. 0x16ACF ; Tangsa
    0x16AD0,  # .. 0x16AFF ; Bassa Vah
    0x16B00,  # .. 0x16B8F ; Pahawh Hmong
    0x16B90,  # .. 0x16E3F ; No_Block
    0x16E40,  # .. 0x16E9F ; Medefaidrin
    0x16EA0,  # .. 0x16EFF ; No_Block
    0x16F00,  # .. 0x16F9F ; Miao
    0x16FA0,  # .. 0x16FDF ; No_Block
    0x16FE0,  # .. 0x16FFF ; Ideographic Symbols and Punctuation
    0x17000,  # .. 0x187FF ; Tangut
    0x18800,  # .. 0x18AFF ; Tangut Components
    0x18B00,  # .. 0x18CFF ; Khitan Small Script
    0x18D00,  # .. 0x18D7F ; Tangut Supplement
    0x18D80,  # .. 0x1AFEF ; No_Block
    0x1AFF0,  # .. 0x1AFFF ; Kana Extended-B
    0x1B000,  # .. 0x1B0FF ; Kana Supplement
    0x1B100,  # .. 0x1B12F ; Kana Extended-A
    0x1B130,  # .. 0x1B16F ; Small Kana Extension
    0x1B170,  # .. 0x1B2FF ; Nushu
    0x1B300,  # .. 0x1BBFF ; No_Block
    0x1BC00,  # .. 0x1BC9F ; Duployan
    0x1BCA0,  # .. 0x1BCAF ; Shorthand Format Controls
    0x1BCB0,  # .. 0x1CEFF ; No_Block
    0x1CF00,  # .. 0x1CFCF ; Znamenny Musical Notation
    0x1CFD0,  # .. 0x1CFFF ; No_Block
    0x1D000,  # .. 0x1D0FF ; Byzantine Musical Symbols
    0x1D100,  # .. 0x1D1FF ; Musical Symbols
    0x1D200,  # .. 0x1D24F ; Ancient Greek Musical Notation
    0x1D250,  # .. 0x1D2BF ; No_Block
    0x1D2C0,  # .. 0x1D2DF ; Kaktovik Numerals
    0x1D2E0,  # .. 0x1D2FF ; Mayan Numerals
    0x1D300,  # .. 0x1D35F ; Tai Xuan Jing Symbols
    0x1D360,  # .. 0x1D37F ; Counting Rod Numerals
    0x1D380,  # .. 0x1D3FF ; No_Block
    0x1D400,  # .. 0x1D7FF ; Mathematical Alphanumeric Symbols
    0x1D800,  # .. 0x1DAAF ; Sutton SignWriting
    0x1DAB0,  # .. 0x1DEFF ; No_Block
    0x1DF00,  # .. 0x1DFFF ; Latin Extended-G
    0x1E000,  # .. 0x1E02F ; Glagolitic Supplement
    0x1E030,  # .. 0x1E08F ; Cyrillic Extended-D
    0x1E090,  # .. 0x1E0FF ; No_Block
    0x1E100,  # .. 0x1E14F ; Nyiakeng Puachue Hmong
    0x1E150,  # .. 0x1E28F ; No_Block
    0x1E290,  # .. 0x1E2BF ; Toto
    0x1E2C0,  # .. 0x1E2FF ; Wancho
    0x1E300,  # .. 0x1E4CF ; No_Block
    0x1E4D0,  # .. 0x1E4FF ; Nag Mundari
    0x1E500,  # .. 0x1E7DF ; No_Block
    0x1E7E0,  # .. 0x1E7FF ; Ethiopic Extended-B
    0x1E800,  # .. 0x1E8DF ; Mende Kikakui
    0x1E8E0,  # .. 0x1E8FF ; No_Block
    0x1E900,  # .. 0x1E95F ; Adlam
    0x1E960,  # .. 0x1EC6F ; No_Block
    0x1EC70,  # .. 0x1ECBF ; Indic Siyaq Numbers
    0x1ECC0,  # .. 0x1ECFF ; No_Block
    0x1ED00,  # .. 0x1ED4F ; Ottoman Siyaq Numbers
    0x1ED50,  # .. 0x1EDFF ; No_Block
    0x1EE00,  # .. 0x1EEFF ; Arabic Mathematical Alphabetic Symbols
    0x1EF00,  # .. 0x1EFFF ; No_Block
    0x1F000,  # .. 0x1F02F ; Mahjong Tiles
    0x1F030,  # .. 0x1F09F ; Domino Tiles
    0x1F0A0,  # .. 0x1F0FF ; Playing Cards
    0x1F100,  # .. 0x1F1FF ; Enclosed Alphanumeric Supplement
    0x1F200,  # .. 0x1F2FF ; Enclosed Ideographic Supplement
    0x1F300,  # .. 0x1F5FF ; Miscellaneous Symbols and Pictographs
    0x1F600,  # .. 0x1F64F ; Emoticons
    0x1F650,  # .. 0x1F67F ; Ornamental Dingbats
    0x1F680,  # .. 0x1F6FF ; Transport and Map Symbols
    0x1F700,  # .. 0x1F77F ; Alchemical Symbols
    0x1F780,  # .. 0x1F7FF ; Geometric Shapes Extended
    0x1F800,  # .. 0x1F8FF ; Supplemental Arrows-C
    0x1F900,  # .. 0x1F9FF ; Supplemental Symbols and Pictographs
    0x1FA00,  # .. 0x1FA6F ; Chess Symbols
    0x1FA70,  # .. 0x1FAFF ; Symbols and Pictographs Extended-A
    0x1FB00,  # .. 0x1FBFF ; Symbols for Legacy Computing
    0x1FC00,  # .. 0x1FFFF ; No_Block
    0x20000,  # .. 0x2A6DF ; CJK Unified Ideographs Extension B
    0x2A6E0,  # .. 0x2A6FF ; No_Block
    0x2A700,  # .. 0x2B73F ; CJK Unified Ideographs Extension C
    0x2B740,  # .. 0x2B81F ; CJK Unified Ideographs Extension D
    0x2B820,  # .. 0x2CEAF ; CJK Unified Ideographs Extension E
    0x2CEB0,  # .. 0x2EBEF ; CJK Unified Ideographs Extension F
    0x2EBF0,  # .. 0x2EE5F ; CJK Unified Ideographs Extension I
    0x2EE60,  # .. 0x2F7FF ; No_Block
    0x2F800,  # .. 0x2FA1F ; CJK Compatibility Ideographs Supplement
    0x2FA20,  # .. 0x2FFFF ; No_Block
    0x30000,  # .. 0x3134F ; CJK Unified Ideographs Extension G
    0x31350,  # .. 0x323AF ; CJK Unified Ideographs Extension H
    0x323B0,  # .. 0xDFFFF ; No_Block
    0xE0000,  # .. 0xE007F ; Tags
    0xE0080,  # .. 0xE00FF ; No_Block
    0xE0100,  # .. 0xE01EF ; Variation Selectors Supplement
    0xE01F0,  # .. 0xEFFFF ; No_Block
    0xF0000,  # .. 0xFFFFF ; Supplementary Private Use Area-A
    0x100000,  # .. 0x10FFFF ; Supplementary Private Use Area-B
]

VALUES = [
    'Basic Latin',                                       # 0000..007F
    'Latin-1 Supplement',                                # 0080..00FF
    'Latin Extended-A',                                  # 0100..017F
    'Latin Extended-B',                                  # 0180..024F
    'IPA Extensions',                                    # 0250..02AF
    'Spacing Modifier Letters',                          # 02B0..02FF
    'Combining Diacritical Marks',                       # 0300..036F
    'Greek and Coptic',                                  # 0370..03FF
    'Cyrillic',                                          # 0400..04FF
    'Cyrillic Supplement',                               # 0500..052F
    'Armenian',                                          # 0530..058F
    'Hebrew',                                            # 0590..05FF
    'Arabic',                                            # 0600..06FF
    'Syriac',                                            # 0700..074F
    'Arabic Supplement',                                 # 0750..077F
    'Thaana',                                            # 0780..07BF
    'NKo',                                               # 07C0..07FF
    'Samaritan',                                         # 0800..083F
    'Mandaic',                                           # 0840..085F
    'Syriac Supplement',                                 # 0860..086F
    'Arabic Extended-B',                                 # 0870..089F
    'Arabic Extended-A',                                 # 08A0..08FF
    'Devanagari',                                        # 0900..097F
    'Bengali',                                           # 0980..09FF
    'Gurmukhi',                                          # 0A00..0A7F
    'Gujarati',                                          # 0A80..0AFF
    'Oriya',                                             # 0B00..0B7F
    'Tamil',                                             # 0B80..0BFF
    'Telugu',                                            # 0C00..0C7F
    'Kannada',                                           # 0C80..0CFF
    'Malayalam',                                         # 0D00..0D7F
    'Sinhala',                                           # 0D80..0DFF
    'Thai',                                              # 0E00..0E7F
    'Lao',                                               # 0E80..0EFF
    'Tibetan',                                           # 0F00..0FFF
    'Myanmar',                                           # 1000..109F
    'Georgian',                                          # 10A0..10FF
    'Hangul Jamo',                                       # 1100..11FF
    'Ethiopic',                                          # 1200..137F
    'Ethiopic Supplement',                               # 1380..139F
    'Cherokee',                                          # 13A0..13FF
    'Unified Canadian Aboriginal Syllabics',             # 1400..167F
    'Ogham',                                             # 1680..169F
    'Runic',                                             # 16A0..16FF
    'Tagalog',                                           # 1700..171F
    'Hanunoo',                                           # 1720..173F
    'Buhid',                                             # 1740..175F
    'Tagbanwa',                                          # 1760..177F
    'Khmer',                                             # 1780..17FF
    'Mongolian',                                         # 1800..18AF
    'Unified Canadian Aboriginal Syllabics Extended',    # 18B0..18FF
    'Limbu',                                             # 1900..194F
    'Tai Le',                                            # 1950..197F
    'New Tai Lue',                                       # 1980..19DF
    'Khmer Symbols',                                     # 19E0..19FF
    'Buginese',                                          # 1A00..1A1F
    'Tai Tham',                                          # 1A20..1AAF
    'Combining Diacritical Marks Extended',              # 1AB0..1AFF
    'Balinese',                                          # 1B00..1B7F
    'Sundanese',                                         # 1B80..1BBF
    'Batak',                                             # 1BC0..1BFF
    'Lepcha',                                            # 1C00..1C4F
    'Ol Chiki',                                          # 1C50..1C7F
    'Cyrillic Extended-C',                               # 1C80..1C8F
    'Georgian Extended',                                 # 1C90..1CBF
    'Sundanese Supplement',                              # 1CC0..1CCF
    'Vedic Extensions',                                  # 1CD0..1CFF
    'Phonetic Extensions',                               # 1D00..1D7F
    'Phonetic Extensions Supplement',                    # 1D80..1DBF
    'Combining Diacritical Marks Supplement',            # 1DC0..1DFF
    'Latin Extended Additional',                         # 1E00..1EFF
    'Greek Extended',                                    # 1F00..1FFF
    'General Punctuation',                               # 2000..206F
    'Superscripts and Subscripts',                       # 2070..209F
    'Currency Symbols',                                  # 20A0..20CF
    'Combining Diacritical Marks for Symbols',           # 20D0..20FF
    'Letterlike Symbols',                                # 2100..214F
    'Number Forms',                                      # 2150..218F
    'Arrows',                                            # 2190..21FF
    'Mathematical Operators',                            # 2200..22FF
    'Miscellaneous Technical',                           # 2300..23FF
    'Control Pictures',                                  # 2400..243F
    'Optical Character Recognition',                     # 2440..245F
    'Enclosed Alphanumerics',                            # 2460..24FF
    'Box Drawing',                                       # 2500..257F
    'Block Elements',                                    # 2580..259F
    'Geometric Shapes',                                  # 25A0..25FF
    'Miscellaneous Symbols',                             # 2600..26FF
    'Dingbats',                                          # 2700..27BF
    'Miscellaneous Mathematical Symbols-A',              # 27C0..27EF
    'Supplemental Arrows-A',                             # 27F0..27FF
    'Braille Patterns',                                  # 2800..28FF
    'Supplemental Arrows-B',                             # 2900..297F
    'Miscellaneous Mathematical Symbols-B',              # 2980..29FF
    'Supplemental Mathematical Operators',               # 2A00..2AFF
    'Miscellaneous Symbols and Arrows',                  # 2B00..2BFF
    'Glagolitic',                                        # 2C00..2C5F
    'Latin Extended-C',                                  # 2C60..2C7F
    'Coptic',                                            # 2C80..2CFF
    'Georgian Supplement',                               # 2D00..2D2F
    'Tifinagh',                                          # 2D30..2D7F
    'Ethiopic Extended',                                 # 2D80..2DDF
    'Cyrillic Extended-A',                               # 2DE0..2DFF
    'Supplemental Punctuation',                          # 2E00..2E7F
    'CJK Radicals Supplement',                           # 2E80..2EFF
    'Kangxi Radicals',                                   # 2F00..2FDF
    'No_Block',                                          # 2FE0..2FEF
    'Ideographic Description Characters',                # 2FF0..2FFF
    'CJK Symbols and Punctuation',                       # 3000..303F
    'Hiragana',                                          # 3040..309F
    'Katakana',                                          # 30A0..30FF
    'Bopomofo',                                          # 3100..312F
    'Hangul Compatibility Jamo',                         # 3130..318F
    'Kanbun',                                            # 3190..319F
    'Bopomofo Extended',                                 # 31A0..31BF
    'CJK Strokes',                                       # 31C0..31EF
    'Katakana Phonetic Extensions',                      # 31F0..31FF
    'Enclosed CJK Letters and Months',                   # 3200..32FF
    'CJK Compatibility',                                 # 3300..33FF
    'CJK Unified Ideographs Extension A',                # 3400..4DBF
    'Yijing Hexagram Symbols',                           # 4DC0..4DFF
    'CJK Unified Ideographs',                            # 4E00..9FFF
    'Yi Syllables',                                      # A000..A48F
    'Yi Radicals',                                       # A490..A4CF
    'Lisu',                                              # A4D0..A4FF
    'Vai',                                               # A500..A63F
    'Cyrillic Extended-B',                               # A640..A69F
    'Bamum',                                             # A6A0..A6FF
    'Modifier Tone Letters',                             # A700..A71F
    'Latin Extended-D',                                  # A720..A7FF
    'Syloti Nagri',                                      # A800..A82F
    'Common Indic Number Forms',                         # A830..A83F
    'Phags-pa',                                          # A840..A87F
    'Saurashtra',                                        # A880..A8DF
    'Devanagari Extended',                               # A8E0..A8FF
    'Kayah Li',                                          # A900..A92F
    'Rejang',                                            # A930..A95F
    'Hangul Jamo Extended-A',                            # A960..A97F
    'Javanese',                                          # A980..A9DF
    'Myanmar Extended-B',                                # A9E0..A9FF
    'Cham',                                              # AA00..AA5F
    'Myanmar Extended-A',                                # AA60..AA7F
    'Tai Viet',                                          # AA80..AADF
    'Meetei Mayek Extensions',                           # AAE0..AAFF
    'Ethiopic Extended-A',                               # AB00..AB2F
    'Latin Extended-E',                                  # AB30..AB6F
    'Cherokee Supplement',                               # AB70..ABBF
    'Meetei Mayek',                                      # ABC0..ABFF
    'Hangul Syllables',                                  # AC00..D7AF
    'Hangul Jamo Extended-B',                            # D7B0..D7FF
    'High Surrogates',                                   # D800..DB7F
    'High Private Use Surrogates',                       # DB80..DBFF
    'Low Surrogates',                                    # DC00..DFFF
    'Private Use Area',                                  # E000..F8FF
    'CJK Compatibility Ideographs',                      # F900..FAFF
    'Alphabetic Presentation Forms',                     # FB00..FB4F
    'Arabic Presentation Forms-A',                       # FB50..FDFF
    'Variation Selectors',                               # FE00..FE0F
    'Vertical Forms',                                    # FE10..FE1F
    'Combining Half Marks',                              # FE20..FE2F
    'CJK Compatibility Forms',                           # FE30..FE4F
    'Small Form Variants',                               # FE50..FE6F
    'Arabic Presentation Forms-B',                       # FE70..FEFF
    'Halfwidth and Fullwidth Forms',                     # FF00..FFEF
    'Specials',                                          # FFF0..FFFF
    'Linear B Syllabary',                                # 10000..1007F
    'Linear B Ideograms',                                # 10080..100FF
    'Aegean Numbers',                                    # 10100..1013F
    'Ancient Greek Numbers',                             # 10140..1018F
    'Ancient Symbols',                                   # 10190..101CF
    'Phaistos Disc',                                     # 101D0..101FF
    'No_Block',                                          # 10200..1027F
    'Lycian',                                            # 10280..1029F
    'Carian',                                            # 102A0..102DF
    'Coptic Epact Numbers',                              # 102E0..102FF
    'Old Italic',                                        # 10300..1032F
    'Gothic',                                            # 10330..1034F
    'Old Permic',                                        # 10350..1037F
    'Ugaritic',                                          # 10380..1039F
    'Old Persian',                                       # 103A0..103DF
    'No_Block',                                          # 103E0..103FF
    'Deseret',                                           # 10400..1044F
    'Shavian',                                           # 10450..1047F
    'Osmanya',                                           # 10480..104AF
    'Osage',                                             # 104B0..104FF
    'Elbasan',                                           # 10500..1052F
    'Caucasian Albanian',                                # 10530..1056F
    'Vithkuqi',                                          # 10570..105BF
    'No_Block',                                          # 105C0..105FF
    'Linear A',                                          # 10600..1077F
    'Latin Extended-F',                                  # 10780..107BF
    'No_Block',                                          # 107C0..107FF
    'Cypriot Syllabary',                                 # 10800..1083F
    'Imperial Aramaic',                                  # 10840..1085F
    'Palmyrene',                                         # 10860..1087F
    'Nabataean',                                         # 10880..108AF
    'No_Block',                                          # 108B0..108DF
    'Hatran',                                            # 108E0..108FF
    'Phoenician',                                        # 10900..1091F
    'Lydian',                                            # 10920..1093F
    'No_Block',                                          # 10940..1097F
    'Meroitic Hieroglyphs',                              # 10980..1099F
    'Meroitic Cursive',                                  # 109A0..109FF
    'Kharoshthi',                                        # 10A00..10A5F
    'Old South Arabian',                                 # 10A60..10A7F
    'Old North Arabian',                                 # 10A80..10A9F
    'No_Block',                                          # 10AA0..10ABF
    'Manichaean',                                        # 10AC0..10AFF
    'Avestan',                                           # 10B00..10B3F
    'Inscriptional Parthian',                            # 10B40..10B5F
    'Inscriptional Pahlavi',                             # 10B60..10B7F
    'Psalter Pahlavi',                                   # 10B80..10BAF
    'No_Block',                                          # 10BB0..10BFF
    'Old Turkic',                                        # 10C00..10C4F
    'No_Block',                                          # 10C50..10C7F
    'Old Hungarian',                                     # 10C80..10CFF
    'Hanifi Rohingya',                                   # 10D00..10D3F
    'No_Block',                                          # 10D40..10E5F
    'Rumi Numeral Symbols',                              # 10E60..10E7F
    'Yezidi',                                            # 10E80..10EBF
    'Arabic Extended-C',                                 # 10EC0..10EFF
    'Old Sogdian',                                       # 10F00..10F2F
    'Sogdian',                                           # 10F30..10F6F
    'Old Uyghur',                                        # 10F70..10FAF
    'Chorasmian',                                        # 10FB0..10FDF
    'Elymaic',                                           # 10FE0..10FFF
    'Brahmi',                                            # 11000..1107F
    'Kaithi',                                            # 11080..110CF
    'Sora Sompeng',                                      # 110D0..110FF
    'Chakma',                                            # 11100..1114F
    'Mahajani',                                          # 11150..1117F
    'Sharada',                                           # 11180..111DF
    'Sinhala Archaic Numbers',                           # 111E0..111FF
    'Khojki',                                            # 11200..1124F
    'No_Block',                                          # 11250..1127F
    'Multani',                                           # 11280..112AF
    'Khudawadi',                                         # 112B0..112FF
    'Grantha',                                           # 11300..1137F
    'No_Block',                                          # 11380..113FF
    'Newa',                                              # 11400..1147F
    'Tirhuta',                                           # 11480..114DF
    'No_Block',                                          # 114E0..1157F
    'Siddham',                                           # 11580..115FF
    'Modi',                                              # 11600..1165F
    'Mongolian Supplement',                              # 11660..1167F
    'Takri',                                             # 11680..116CF
    'No_Block',                                          # 116D0..116FF
    'Ahom',                                              # 11700..1174F
    'No_Block',                                          # 11750..117FF
    'Dogra',                                             # 11800..1184F
    'No_Block',                                          # 11850..1189F
    'Warang Citi',                                       # 118A0..118FF
    'Dives Akuru',                                       # 11900..1195F
    'No_Block',                                          # 11960..1199F
    'Nandinagari',                                       # 119A0..119FF
    'Zanabazar Square',                                  # 11A00..11A4F
    'Soyombo',                                           # 11A50..11AAF
    'Unified Canadian Aboriginal Syllabics Extended-A',  # 11AB0..11ABF
    'Pau Cin Hau',                                       # 11AC0..11AFF
    'Devanagari Extended-A',                             # 11B00..11B5F
    'No_Block',                                          # 11B60..11BFF
    'Bhaiksuki',                                         # 11C00..11C6F
    'Marchen',                                           # 11C70..11CBF
    'No_Block',                                          # 11CC0..11CFF
    'Masaram Gondi',                                     # 11D00..11D5F
    'Gunjala Gondi',                                     # 11D60..11DAF
    'No_Block',                                          # 11DB0..11EDF
    'Makasar',                                           # 11EE0..11EFF
    'Kawi',                                              # 11F00..11F5F
    'No_Block',                                          # 11F60..11FAF
    'Lisu Supplement',                                   # 11FB0..11FBF
    'Tamil Supplement',                                  # 11FC0..11FFF
    'Cuneiform',                                         # 12000..123FF
    'Cuneiform Numbers and Punctuation',                 # 12400..1247F
    'Early Dynastic Cuneiform',                          # 12480..1254F
    'No_Block',                                          # 12550..12F8F
    'Cypro-Minoan',                                      # 12F90..12FFF
    'Egyptian Hieroglyphs',                              # 13000..1342F
    'Egyptian Hieroglyph Format Controls',               # 13430..1345F
    'No_Block',                                          # 13460..143FF
    'Anatolian Hieroglyphs',                             # 14400..1467F
    'No_Block',                                          # 14680..167FF
    'Bamum Supplement',                                  # 16800..16A3F
    'Mro',                                               # 16A40..16A6F
    'Tangsa',                                            # 16A70..16ACF
    'Bassa Vah',                                         # 16AD0..16AFF
    'Pahawh Hmong',                                      # 16B00..16B8F
    'No_Block',                                          # 16B90..16E3F
    'Medefaidrin',                                       # 16E40..16E9F
    'No_Block',                                          # 16EA0..16EFF
    'Miao',                                              # 16F00..16F9F
    'No_Block',                                          # 16FA0..16FDF
    'Ideographic Symbols and Punctuation',               # 16FE0..16FFF
    'Tangut',                                            # 17000..187FF
    'Tangut Components',                                 # 18800..18AFF
    'Khitan Small Script',                               # 18B00..18CFF
    'Tangut Supplement',                                 # 18D00..18D7F
    'No_Block',                                          # 18D80..1AFEF
    'Kana Extended-B',                                   # 1AFF0..1AFFF
    'Kana Supplement',                                   # 1B000..1B0FF
    'Kana Extended-A',                                   # 1B100..1B12F
    'Small Kana Extension',                              # 1B130..1B16F
    'Nushu',                                             # 1B170..1B2FF
    'No_Block',                                          # 1B300..1BBFF
    'Duployan',                                          # 1BC00..1BC9F
    'Shorthand Format Controls',                         # 1BCA0..1BCAF
    'No_Block',                                          # 1BCB0..1CEFF
    'Znamenny Musical Notation',                         # 1CF00..1CFCF
    'No_Block',                                          # 1CFD0..1CFFF
    'Byzantine Musical Symbols',                         # 1D000..1D0FF
    'Musical Symbols',                                   # 1D100..1D1FF
    'Ancient Greek Musical Notation',                    # 1D200..1D24F
    'No_Block',                                          # 1D250..1D2BF
    'Kaktovik Numerals',                                 # 1D2C0..1D2DF
    'Mayan Numerals',                                    # 1D2E0..1D2FF
    'Tai Xuan Jing Symbols',                             # 1D300..1D35F
    'Counting Rod Numerals',                             # 1D360..1D37F
    'No_Block',                                          # 1D380..1D3FF
    'Mathematical Alphanumeric Symbols',                 # 1D400..1D7FF
    'Sutton SignWriting',                                # 1D800..1DAAF
    'No_Block',                                          # 1DAB0..1DEFF
    'Latin Extended-G',                                  # 1DF00..1DFFF
    'Glagolitic Supplement',                             # 1E000..1E02F
    'Cyrillic Extended-D',                               # 1E030..1E08F
    'No_Block',                                          # 1E090..1E0FF
    'Nyiakeng Puachue Hmong',                            # 1E100..1E14F
    'No_Block',                                          # 1E150..1E28F
    'Toto',                                              # 1E290..1E2BF
    'Wancho',                                            # 1E2C0..1E2FF
    'No_Block',                                          # 1E300..1E4CF
    'Nag Mundari',                                       # 1E4D0..1E4FF
    'No_Block',                                          # 1E500..1E7DF
    'Ethiopic Extended-B',                               # 1E7E0..1E7FF
    'Mende Kikakui',                                     # 1E800..1E8DF
    'No_Block',                                          # 1E8E0..1E8FF
    'Adlam',                                             # 1E900..1E95F
    'No_Block',                                          # 1E960..1EC6F
    'Indic Siyaq Numbers',                               # 1EC70..1ECBF
    'No_Block',                                          # 1ECC0..1ECFF
    'Ottoman Siyaq Numbers',                             # 1ED00..1ED4F
    'No_Block',                                          # 1ED50..1EDFF
    'Arabic Mathematical Alphabetic Symbols',            # 1EE00..1EEFF
    'No_Block',                                          # 1EF00..1EFFF
    'Mahjong Tiles',                                     # 1F000..1F02F
    'Domino Tiles',                                      # 1F030..1F09F
    'Playing Cards',                                     # 1F0A0..1F0FF
    'Enclosed Alphanumeric Supplement',                  # 1F100..1F1FF
    'Enclosed Ideographic Supplement',                   # 1F200..1F2FF
    'Miscellaneous Symbols and Pictographs',             # 1F300..1F5FF
    'Emoticons',                                         # 1F600..1F64F
    'Ornamental Dingbats',                               # 1F650..1F67F
    'Transport and Map Symbols',                         # 1F680..1F6FF
    'Alchemical Symbols',                                # 1F700..1F77F
    'Geometric Shapes Extended',                         # 1F780..1F7FF
    'Supplemental Arrows-C',                             # 1F800..1F8FF
    'Supplemental Symbols and Pictographs',              # 1F900..1F9FF
    'Chess Symbols',                                     # 1FA00..1FA6F
    'Symbols and Pictographs Extended-A',                # 1FA70..1FAFF
    'Symbols for Legacy Computing',                      # 1FB00..1FBFF
    'No_Block',                                          # 1FC00..1FFFF
    'CJK Unified Ideographs Extension B',                # 20000..2A6DF
    'No_Block',                                          # 2A6E0..2A6FF
    'CJK Unified Ideographs Extension C',                # 2A700..2B73F
    'CJK Unified Ideographs Extension D',                # 2B740..2B81F
    'CJK Unified Ideographs Extension E',                # 2B820..2CEAF
    'CJK Unified Ideographs Extension F',                # 2CEB0..2EBEF
    'CJK Unified Ideographs Extension I',                # 2EBF0..2EE5F
    'No_Block',                                          # 2EE60..2F7FF
    'CJK Compatibility Ideographs Supplement',           # 2F800..2FA1F
    'No_Block',                                          # 2FA20..2FFFF
    'CJK Unified Ideographs Extension G',                # 30000..3134F
    'CJK Unified Ideographs Extension H',                # 31350..323AF
    'No_Block',                                          # 323B0..DFFFF
    'Tags',                                              # E0000..E007F
    'No_Block',                                          # E0080..E00FF
    'Variation Selectors Supplement',                    # E0100..E01EF
    'No_Block',                                          # E01F0..EFFFF
    'Supplementary Private Use Area-A',                  # F0000..FFFFF
    'Supplementary Private Use Area-B',                  # 100000..10FFFF
]
