xref: /aosp_15_r20/external/fonttools/Lib/fontTools/unicodedata/Blocks.py (revision e1fe3e4ad2793916b15cccdc4a7da52a7e1dd0e9)
1# -*- coding: utf-8 -*-
2#
3# NOTE: This file was auto-generated with MetaTools/buildUCD.py.
4# Source: https://unicode.org/Public/UNIDATA/Blocks.txt
5# License: http://unicode.org/copyright.html#License
6#
7# Blocks-15.0.0.txt
8# Date: 2022-01-28, 20:58:00 GMT [KW]
9# © 2022 Unicode®, Inc.
10# For terms of use, see https://www.unicode.org/terms_of_use.html
11#
12# Unicode Character Database
13# For documentation, see https://www.unicode.org/reports/tr44/
14#
15# Format:
16# Start Code..End Code; Block Name
17
18
19RANGES = [
20    0x0000,  # .. 0x007F ; Basic Latin
21    0x0080,  # .. 0x00FF ; Latin-1 Supplement
22    0x0100,  # .. 0x017F ; Latin Extended-A
23    0x0180,  # .. 0x024F ; Latin Extended-B
24    0x0250,  # .. 0x02AF ; IPA Extensions
25    0x02B0,  # .. 0x02FF ; Spacing Modifier Letters
26    0x0300,  # .. 0x036F ; Combining Diacritical Marks
27    0x0370,  # .. 0x03FF ; Greek and Coptic
28    0x0400,  # .. 0x04FF ; Cyrillic
29    0x0500,  # .. 0x052F ; Cyrillic Supplement
30    0x0530,  # .. 0x058F ; Armenian
31    0x0590,  # .. 0x05FF ; Hebrew
32    0x0600,  # .. 0x06FF ; Arabic
33    0x0700,  # .. 0x074F ; Syriac
34    0x0750,  # .. 0x077F ; Arabic Supplement
35    0x0780,  # .. 0x07BF ; Thaana
36    0x07C0,  # .. 0x07FF ; NKo
37    0x0800,  # .. 0x083F ; Samaritan
38    0x0840,  # .. 0x085F ; Mandaic
39    0x0860,  # .. 0x086F ; Syriac Supplement
40    0x0870,  # .. 0x089F ; Arabic Extended-B
41    0x08A0,  # .. 0x08FF ; Arabic Extended-A
42    0x0900,  # .. 0x097F ; Devanagari
43    0x0980,  # .. 0x09FF ; Bengali
44    0x0A00,  # .. 0x0A7F ; Gurmukhi
45    0x0A80,  # .. 0x0AFF ; Gujarati
46    0x0B00,  # .. 0x0B7F ; Oriya
47    0x0B80,  # .. 0x0BFF ; Tamil
48    0x0C00,  # .. 0x0C7F ; Telugu
49    0x0C80,  # .. 0x0CFF ; Kannada
50    0x0D00,  # .. 0x0D7F ; Malayalam
51    0x0D80,  # .. 0x0DFF ; Sinhala
52    0x0E00,  # .. 0x0E7F ; Thai
53    0x0E80,  # .. 0x0EFF ; Lao
54    0x0F00,  # .. 0x0FFF ; Tibetan
55    0x1000,  # .. 0x109F ; Myanmar
56    0x10A0,  # .. 0x10FF ; Georgian
57    0x1100,  # .. 0x11FF ; Hangul Jamo
58    0x1200,  # .. 0x137F ; Ethiopic
59    0x1380,  # .. 0x139F ; Ethiopic Supplement
60    0x13A0,  # .. 0x13FF ; Cherokee
61    0x1400,  # .. 0x167F ; Unified Canadian Aboriginal Syllabics
62    0x1680,  # .. 0x169F ; Ogham
63    0x16A0,  # .. 0x16FF ; Runic
64    0x1700,  # .. 0x171F ; Tagalog
65    0x1720,  # .. 0x173F ; Hanunoo
66    0x1740,  # .. 0x175F ; Buhid
67    0x1760,  # .. 0x177F ; Tagbanwa
68    0x1780,  # .. 0x17FF ; Khmer
69    0x1800,  # .. 0x18AF ; Mongolian
70    0x18B0,  # .. 0x18FF ; Unified Canadian Aboriginal Syllabics Extended
71    0x1900,  # .. 0x194F ; Limbu
72    0x1950,  # .. 0x197F ; Tai Le
73    0x1980,  # .. 0x19DF ; New Tai Lue
74    0x19E0,  # .. 0x19FF ; Khmer Symbols
75    0x1A00,  # .. 0x1A1F ; Buginese
76    0x1A20,  # .. 0x1AAF ; Tai Tham
77    0x1AB0,  # .. 0x1AFF ; Combining Diacritical Marks Extended
78    0x1B00,  # .. 0x1B7F ; Balinese
79    0x1B80,  # .. 0x1BBF ; Sundanese
80    0x1BC0,  # .. 0x1BFF ; Batak
81    0x1C00,  # .. 0x1C4F ; Lepcha
82    0x1C50,  # .. 0x1C7F ; Ol Chiki
83    0x1C80,  # .. 0x1C8F ; Cyrillic Extended-C
84    0x1C90,  # .. 0x1CBF ; Georgian Extended
85    0x1CC0,  # .. 0x1CCF ; Sundanese Supplement
86    0x1CD0,  # .. 0x1CFF ; Vedic Extensions
87    0x1D00,  # .. 0x1D7F ; Phonetic Extensions
88    0x1D80,  # .. 0x1DBF ; Phonetic Extensions Supplement
89    0x1DC0,  # .. 0x1DFF ; Combining Diacritical Marks Supplement
90    0x1E00,  # .. 0x1EFF ; Latin Extended Additional
91    0x1F00,  # .. 0x1FFF ; Greek Extended
92    0x2000,  # .. 0x206F ; General Punctuation
93    0x2070,  # .. 0x209F ; Superscripts and Subscripts
94    0x20A0,  # .. 0x20CF ; Currency Symbols
95    0x20D0,  # .. 0x20FF ; Combining Diacritical Marks for Symbols
96    0x2100,  # .. 0x214F ; Letterlike Symbols
97    0x2150,  # .. 0x218F ; Number Forms
98    0x2190,  # .. 0x21FF ; Arrows
99    0x2200,  # .. 0x22FF ; Mathematical Operators
100    0x2300,  # .. 0x23FF ; Miscellaneous Technical
101    0x2400,  # .. 0x243F ; Control Pictures
102    0x2440,  # .. 0x245F ; Optical Character Recognition
103    0x2460,  # .. 0x24FF ; Enclosed Alphanumerics
104    0x2500,  # .. 0x257F ; Box Drawing
105    0x2580,  # .. 0x259F ; Block Elements
106    0x25A0,  # .. 0x25FF ; Geometric Shapes
107    0x2600,  # .. 0x26FF ; Miscellaneous Symbols
108    0x2700,  # .. 0x27BF ; Dingbats
109    0x27C0,  # .. 0x27EF ; Miscellaneous Mathematical Symbols-A
110    0x27F0,  # .. 0x27FF ; Supplemental Arrows-A
111    0x2800,  # .. 0x28FF ; Braille Patterns
112    0x2900,  # .. 0x297F ; Supplemental Arrows-B
113    0x2980,  # .. 0x29FF ; Miscellaneous Mathematical Symbols-B
114    0x2A00,  # .. 0x2AFF ; Supplemental Mathematical Operators
115    0x2B00,  # .. 0x2BFF ; Miscellaneous Symbols and Arrows
116    0x2C00,  # .. 0x2C5F ; Glagolitic
117    0x2C60,  # .. 0x2C7F ; Latin Extended-C
118    0x2C80,  # .. 0x2CFF ; Coptic
119    0x2D00,  # .. 0x2D2F ; Georgian Supplement
120    0x2D30,  # .. 0x2D7F ; Tifinagh
121    0x2D80,  # .. 0x2DDF ; Ethiopic Extended
122    0x2DE0,  # .. 0x2DFF ; Cyrillic Extended-A
123    0x2E00,  # .. 0x2E7F ; Supplemental Punctuation
124    0x2E80,  # .. 0x2EFF ; CJK Radicals Supplement
125    0x2F00,  # .. 0x2FDF ; Kangxi Radicals
126    0x2FE0,  # .. 0x2FEF ; No_Block
127    0x2FF0,  # .. 0x2FFF ; Ideographic Description Characters
128    0x3000,  # .. 0x303F ; CJK Symbols and Punctuation
129    0x3040,  # .. 0x309F ; Hiragana
130    0x30A0,  # .. 0x30FF ; Katakana
131    0x3100,  # .. 0x312F ; Bopomofo
132    0x3130,  # .. 0x318F ; Hangul Compatibility Jamo
133    0x3190,  # .. 0x319F ; Kanbun
134    0x31A0,  # .. 0x31BF ; Bopomofo Extended
135    0x31C0,  # .. 0x31EF ; CJK Strokes
136    0x31F0,  # .. 0x31FF ; Katakana Phonetic Extensions
137    0x3200,  # .. 0x32FF ; Enclosed CJK Letters and Months
138    0x3300,  # .. 0x33FF ; CJK Compatibility
139    0x3400,  # .. 0x4DBF ; CJK Unified Ideographs Extension A
140    0x4DC0,  # .. 0x4DFF ; Yijing Hexagram Symbols
141    0x4E00,  # .. 0x9FFF ; CJK Unified Ideographs
142    0xA000,  # .. 0xA48F ; Yi Syllables
143    0xA490,  # .. 0xA4CF ; Yi Radicals
144    0xA4D0,  # .. 0xA4FF ; Lisu
145    0xA500,  # .. 0xA63F ; Vai
146    0xA640,  # .. 0xA69F ; Cyrillic Extended-B
147    0xA6A0,  # .. 0xA6FF ; Bamum
148    0xA700,  # .. 0xA71F ; Modifier Tone Letters
149    0xA720,  # .. 0xA7FF ; Latin Extended-D
150    0xA800,  # .. 0xA82F ; Syloti Nagri
151    0xA830,  # .. 0xA83F ; Common Indic Number Forms
152    0xA840,  # .. 0xA87F ; Phags-pa
153    0xA880,  # .. 0xA8DF ; Saurashtra
154    0xA8E0,  # .. 0xA8FF ; Devanagari Extended
155    0xA900,  # .. 0xA92F ; Kayah Li
156    0xA930,  # .. 0xA95F ; Rejang
157    0xA960,  # .. 0xA97F ; Hangul Jamo Extended-A
158    0xA980,  # .. 0xA9DF ; Javanese
159    0xA9E0,  # .. 0xA9FF ; Myanmar Extended-B
160    0xAA00,  # .. 0xAA5F ; Cham
161    0xAA60,  # .. 0xAA7F ; Myanmar Extended-A
162    0xAA80,  # .. 0xAADF ; Tai Viet
163    0xAAE0,  # .. 0xAAFF ; Meetei Mayek Extensions
164    0xAB00,  # .. 0xAB2F ; Ethiopic Extended-A
165    0xAB30,  # .. 0xAB6F ; Latin Extended-E
166    0xAB70,  # .. 0xABBF ; Cherokee Supplement
167    0xABC0,  # .. 0xABFF ; Meetei Mayek
168    0xAC00,  # .. 0xD7AF ; Hangul Syllables
169    0xD7B0,  # .. 0xD7FF ; Hangul Jamo Extended-B
170    0xD800,  # .. 0xDB7F ; High Surrogates
171    0xDB80,  # .. 0xDBFF ; High Private Use Surrogates
172    0xDC00,  # .. 0xDFFF ; Low Surrogates
173    0xE000,  # .. 0xF8FF ; Private Use Area
174    0xF900,  # .. 0xFAFF ; CJK Compatibility Ideographs
175    0xFB00,  # .. 0xFB4F ; Alphabetic Presentation Forms
176    0xFB50,  # .. 0xFDFF ; Arabic Presentation Forms-A
177    0xFE00,  # .. 0xFE0F ; Variation Selectors
178    0xFE10,  # .. 0xFE1F ; Vertical Forms
179    0xFE20,  # .. 0xFE2F ; Combining Half Marks
180    0xFE30,  # .. 0xFE4F ; CJK Compatibility Forms
181    0xFE50,  # .. 0xFE6F ; Small Form Variants
182    0xFE70,  # .. 0xFEFF ; Arabic Presentation Forms-B
183    0xFF00,  # .. 0xFFEF ; Halfwidth and Fullwidth Forms
184    0xFFF0,  # .. 0xFFFF ; Specials
185    0x10000,  # .. 0x1007F ; Linear B Syllabary
186    0x10080,  # .. 0x100FF ; Linear B Ideograms
187    0x10100,  # .. 0x1013F ; Aegean Numbers
188    0x10140,  # .. 0x1018F ; Ancient Greek Numbers
189    0x10190,  # .. 0x101CF ; Ancient Symbols
190    0x101D0,  # .. 0x101FF ; Phaistos Disc
191    0x10200,  # .. 0x1027F ; No_Block
192    0x10280,  # .. 0x1029F ; Lycian
193    0x102A0,  # .. 0x102DF ; Carian
194    0x102E0,  # .. 0x102FF ; Coptic Epact Numbers
195    0x10300,  # .. 0x1032F ; Old Italic
196    0x10330,  # .. 0x1034F ; Gothic
197    0x10350,  # .. 0x1037F ; Old Permic
198    0x10380,  # .. 0x1039F ; Ugaritic
199    0x103A0,  # .. 0x103DF ; Old Persian
200    0x103E0,  # .. 0x103FF ; No_Block
201    0x10400,  # .. 0x1044F ; Deseret
202    0x10450,  # .. 0x1047F ; Shavian
203    0x10480,  # .. 0x104AF ; Osmanya
204    0x104B0,  # .. 0x104FF ; Osage
205    0x10500,  # .. 0x1052F ; Elbasan
206    0x10530,  # .. 0x1056F ; Caucasian Albanian
207    0x10570,  # .. 0x105BF ; Vithkuqi
208    0x105C0,  # .. 0x105FF ; No_Block
209    0x10600,  # .. 0x1077F ; Linear A
210    0x10780,  # .. 0x107BF ; Latin Extended-F
211    0x107C0,  # .. 0x107FF ; No_Block
212    0x10800,  # .. 0x1083F ; Cypriot Syllabary
213    0x10840,  # .. 0x1085F ; Imperial Aramaic
214    0x10860,  # .. 0x1087F ; Palmyrene
215    0x10880,  # .. 0x108AF ; Nabataean
216    0x108B0,  # .. 0x108DF ; No_Block
217    0x108E0,  # .. 0x108FF ; Hatran
218    0x10900,  # .. 0x1091F ; Phoenician
219    0x10920,  # .. 0x1093F ; Lydian
220    0x10940,  # .. 0x1097F ; No_Block
221    0x10980,  # .. 0x1099F ; Meroitic Hieroglyphs
222    0x109A0,  # .. 0x109FF ; Meroitic Cursive
223    0x10A00,  # .. 0x10A5F ; Kharoshthi
224    0x10A60,  # .. 0x10A7F ; Old South Arabian
225    0x10A80,  # .. 0x10A9F ; Old North Arabian
226    0x10AA0,  # .. 0x10ABF ; No_Block
227    0x10AC0,  # .. 0x10AFF ; Manichaean
228    0x10B00,  # .. 0x10B3F ; Avestan
229    0x10B40,  # .. 0x10B5F ; Inscriptional Parthian
230    0x10B60,  # .. 0x10B7F ; Inscriptional Pahlavi
231    0x10B80,  # .. 0x10BAF ; Psalter Pahlavi
232    0x10BB0,  # .. 0x10BFF ; No_Block
233    0x10C00,  # .. 0x10C4F ; Old Turkic
234    0x10C50,  # .. 0x10C7F ; No_Block
235    0x10C80,  # .. 0x10CFF ; Old Hungarian
236    0x10D00,  # .. 0x10D3F ; Hanifi Rohingya
237    0x10D40,  # .. 0x10E5F ; No_Block
238    0x10E60,  # .. 0x10E7F ; Rumi Numeral Symbols
239    0x10E80,  # .. 0x10EBF ; Yezidi
240    0x10EC0,  # .. 0x10EFF ; Arabic Extended-C
241    0x10F00,  # .. 0x10F2F ; Old Sogdian
242    0x10F30,  # .. 0x10F6F ; Sogdian
243    0x10F70,  # .. 0x10FAF ; Old Uyghur
244    0x10FB0,  # .. 0x10FDF ; Chorasmian
245    0x10FE0,  # .. 0x10FFF ; Elymaic
246    0x11000,  # .. 0x1107F ; Brahmi
247    0x11080,  # .. 0x110CF ; Kaithi
248    0x110D0,  # .. 0x110FF ; Sora Sompeng
249    0x11100,  # .. 0x1114F ; Chakma
250    0x11150,  # .. 0x1117F ; Mahajani
251    0x11180,  # .. 0x111DF ; Sharada
252    0x111E0,  # .. 0x111FF ; Sinhala Archaic Numbers
253    0x11200,  # .. 0x1124F ; Khojki
254    0x11250,  # .. 0x1127F ; No_Block
255    0x11280,  # .. 0x112AF ; Multani
256    0x112B0,  # .. 0x112FF ; Khudawadi
257    0x11300,  # .. 0x1137F ; Grantha
258    0x11380,  # .. 0x113FF ; No_Block
259    0x11400,  # .. 0x1147F ; Newa
260    0x11480,  # .. 0x114DF ; Tirhuta
261    0x114E0,  # .. 0x1157F ; No_Block
262    0x11580,  # .. 0x115FF ; Siddham
263    0x11600,  # .. 0x1165F ; Modi
264    0x11660,  # .. 0x1167F ; Mongolian Supplement
265    0x11680,  # .. 0x116CF ; Takri
266    0x116D0,  # .. 0x116FF ; No_Block
267    0x11700,  # .. 0x1174F ; Ahom
268    0x11750,  # .. 0x117FF ; No_Block
269    0x11800,  # .. 0x1184F ; Dogra
270    0x11850,  # .. 0x1189F ; No_Block
271    0x118A0,  # .. 0x118FF ; Warang Citi
272    0x11900,  # .. 0x1195F ; Dives Akuru
273    0x11960,  # .. 0x1199F ; No_Block
274    0x119A0,  # .. 0x119FF ; Nandinagari
275    0x11A00,  # .. 0x11A4F ; Zanabazar Square
276    0x11A50,  # .. 0x11AAF ; Soyombo
277    0x11AB0,  # .. 0x11ABF ; Unified Canadian Aboriginal Syllabics Extended-A
278    0x11AC0,  # .. 0x11AFF ; Pau Cin Hau
279    0x11B00,  # .. 0x11B5F ; Devanagari Extended-A
280    0x11B60,  # .. 0x11BFF ; No_Block
281    0x11C00,  # .. 0x11C6F ; Bhaiksuki
282    0x11C70,  # .. 0x11CBF ; Marchen
283    0x11CC0,  # .. 0x11CFF ; No_Block
284    0x11D00,  # .. 0x11D5F ; Masaram Gondi
285    0x11D60,  # .. 0x11DAF ; Gunjala Gondi
286    0x11DB0,  # .. 0x11EDF ; No_Block
287    0x11EE0,  # .. 0x11EFF ; Makasar
288    0x11F00,  # .. 0x11F5F ; Kawi
289    0x11F60,  # .. 0x11FAF ; No_Block
290    0x11FB0,  # .. 0x11FBF ; Lisu Supplement
291    0x11FC0,  # .. 0x11FFF ; Tamil Supplement
292    0x12000,  # .. 0x123FF ; Cuneiform
293    0x12400,  # .. 0x1247F ; Cuneiform Numbers and Punctuation
294    0x12480,  # .. 0x1254F ; Early Dynastic Cuneiform
295    0x12550,  # .. 0x12F8F ; No_Block
296    0x12F90,  # .. 0x12FFF ; Cypro-Minoan
297    0x13000,  # .. 0x1342F ; Egyptian Hieroglyphs
298    0x13430,  # .. 0x1345F ; Egyptian Hieroglyph Format Controls
299    0x13460,  # .. 0x143FF ; No_Block
300    0x14400,  # .. 0x1467F ; Anatolian Hieroglyphs
301    0x14680,  # .. 0x167FF ; No_Block
302    0x16800,  # .. 0x16A3F ; Bamum Supplement
303    0x16A40,  # .. 0x16A6F ; Mro
304    0x16A70,  # .. 0x16ACF ; Tangsa
305    0x16AD0,  # .. 0x16AFF ; Bassa Vah
306    0x16B00,  # .. 0x16B8F ; Pahawh Hmong
307    0x16B90,  # .. 0x16E3F ; No_Block
308    0x16E40,  # .. 0x16E9F ; Medefaidrin
309    0x16EA0,  # .. 0x16EFF ; No_Block
310    0x16F00,  # .. 0x16F9F ; Miao
311    0x16FA0,  # .. 0x16FDF ; No_Block
312    0x16FE0,  # .. 0x16FFF ; Ideographic Symbols and Punctuation
313    0x17000,  # .. 0x187FF ; Tangut
314    0x18800,  # .. 0x18AFF ; Tangut Components
315    0x18B00,  # .. 0x18CFF ; Khitan Small Script
316    0x18D00,  # .. 0x18D7F ; Tangut Supplement
317    0x18D80,  # .. 0x1AFEF ; No_Block
318    0x1AFF0,  # .. 0x1AFFF ; Kana Extended-B
319    0x1B000,  # .. 0x1B0FF ; Kana Supplement
320    0x1B100,  # .. 0x1B12F ; Kana Extended-A
321    0x1B130,  # .. 0x1B16F ; Small Kana Extension
322    0x1B170,  # .. 0x1B2FF ; Nushu
323    0x1B300,  # .. 0x1BBFF ; No_Block
324    0x1BC00,  # .. 0x1BC9F ; Duployan
325    0x1BCA0,  # .. 0x1BCAF ; Shorthand Format Controls
326    0x1BCB0,  # .. 0x1CEFF ; No_Block
327    0x1CF00,  # .. 0x1CFCF ; Znamenny Musical Notation
328    0x1CFD0,  # .. 0x1CFFF ; No_Block
329    0x1D000,  # .. 0x1D0FF ; Byzantine Musical Symbols
330    0x1D100,  # .. 0x1D1FF ; Musical Symbols
331    0x1D200,  # .. 0x1D24F ; Ancient Greek Musical Notation
332    0x1D250,  # .. 0x1D2BF ; No_Block
333    0x1D2C0,  # .. 0x1D2DF ; Kaktovik Numerals
334    0x1D2E0,  # .. 0x1D2FF ; Mayan Numerals
335    0x1D300,  # .. 0x1D35F ; Tai Xuan Jing Symbols
336    0x1D360,  # .. 0x1D37F ; Counting Rod Numerals
337    0x1D380,  # .. 0x1D3FF ; No_Block
338    0x1D400,  # .. 0x1D7FF ; Mathematical Alphanumeric Symbols
339    0x1D800,  # .. 0x1DAAF ; Sutton SignWriting
340    0x1DAB0,  # .. 0x1DEFF ; No_Block
341    0x1DF00,  # .. 0x1DFFF ; Latin Extended-G
342    0x1E000,  # .. 0x1E02F ; Glagolitic Supplement
343    0x1E030,  # .. 0x1E08F ; Cyrillic Extended-D
344    0x1E090,  # .. 0x1E0FF ; No_Block
345    0x1E100,  # .. 0x1E14F ; Nyiakeng Puachue Hmong
346    0x1E150,  # .. 0x1E28F ; No_Block
347    0x1E290,  # .. 0x1E2BF ; Toto
348    0x1E2C0,  # .. 0x1E2FF ; Wancho
349    0x1E300,  # .. 0x1E4CF ; No_Block
350    0x1E4D0,  # .. 0x1E4FF ; Nag Mundari
351    0x1E500,  # .. 0x1E7DF ; No_Block
352    0x1E7E0,  # .. 0x1E7FF ; Ethiopic Extended-B
353    0x1E800,  # .. 0x1E8DF ; Mende Kikakui
354    0x1E8E0,  # .. 0x1E8FF ; No_Block
355    0x1E900,  # .. 0x1E95F ; Adlam
356    0x1E960,  # .. 0x1EC6F ; No_Block
357    0x1EC70,  # .. 0x1ECBF ; Indic Siyaq Numbers
358    0x1ECC0,  # .. 0x1ECFF ; No_Block
359    0x1ED00,  # .. 0x1ED4F ; Ottoman Siyaq Numbers
360    0x1ED50,  # .. 0x1EDFF ; No_Block
361    0x1EE00,  # .. 0x1EEFF ; Arabic Mathematical Alphabetic Symbols
362    0x1EF00,  # .. 0x1EFFF ; No_Block
363    0x1F000,  # .. 0x1F02F ; Mahjong Tiles
364    0x1F030,  # .. 0x1F09F ; Domino Tiles
365    0x1F0A0,  # .. 0x1F0FF ; Playing Cards
366    0x1F100,  # .. 0x1F1FF ; Enclosed Alphanumeric Supplement
367    0x1F200,  # .. 0x1F2FF ; Enclosed Ideographic Supplement
368    0x1F300,  # .. 0x1F5FF ; Miscellaneous Symbols and Pictographs
369    0x1F600,  # .. 0x1F64F ; Emoticons
370    0x1F650,  # .. 0x1F67F ; Ornamental Dingbats
371    0x1F680,  # .. 0x1F6FF ; Transport and Map Symbols
372    0x1F700,  # .. 0x1F77F ; Alchemical Symbols
373    0x1F780,  # .. 0x1F7FF ; Geometric Shapes Extended
374    0x1F800,  # .. 0x1F8FF ; Supplemental Arrows-C
375    0x1F900,  # .. 0x1F9FF ; Supplemental Symbols and Pictographs
376    0x1FA00,  # .. 0x1FA6F ; Chess Symbols
377    0x1FA70,  # .. 0x1FAFF ; Symbols and Pictographs Extended-A
378    0x1FB00,  # .. 0x1FBFF ; Symbols for Legacy Computing
379    0x1FC00,  # .. 0x1FFFF ; No_Block
380    0x20000,  # .. 0x2A6DF ; CJK Unified Ideographs Extension B
381    0x2A6E0,  # .. 0x2A6FF ; No_Block
382    0x2A700,  # .. 0x2B73F ; CJK Unified Ideographs Extension C
383    0x2B740,  # .. 0x2B81F ; CJK Unified Ideographs Extension D
384    0x2B820,  # .. 0x2CEAF ; CJK Unified Ideographs Extension E
385    0x2CEB0,  # .. 0x2EBEF ; CJK Unified Ideographs Extension F
386    0x2EBF0,  # .. 0x2F7FF ; No_Block
387    0x2F800,  # .. 0x2FA1F ; CJK Compatibility Ideographs Supplement
388    0x2FA20,  # .. 0x2FFFF ; No_Block
389    0x30000,  # .. 0x3134F ; CJK Unified Ideographs Extension G
390    0x31350,  # .. 0x323AF ; CJK Unified Ideographs Extension H
391    0x323B0,  # .. 0xDFFFF ; No_Block
392    0xE0000,  # .. 0xE007F ; Tags
393    0xE0080,  # .. 0xE00FF ; No_Block
394    0xE0100,  # .. 0xE01EF ; Variation Selectors Supplement
395    0xE01F0,  # .. 0xEFFFF ; No_Block
396    0xF0000,  # .. 0xFFFFF ; Supplementary Private Use Area-A
397    0x100000,  # .. 0x10FFFF ; Supplementary Private Use Area-B
398]
399
400VALUES = [
401    "Basic Latin",  # 0000..007F
402    "Latin-1 Supplement",  # 0080..00FF
403    "Latin Extended-A",  # 0100..017F
404    "Latin Extended-B",  # 0180..024F
405    "IPA Extensions",  # 0250..02AF
406    "Spacing Modifier Letters",  # 02B0..02FF
407    "Combining Diacritical Marks",  # 0300..036F
408    "Greek and Coptic",  # 0370..03FF
409    "Cyrillic",  # 0400..04FF
410    "Cyrillic Supplement",  # 0500..052F
411    "Armenian",  # 0530..058F
412    "Hebrew",  # 0590..05FF
413    "Arabic",  # 0600..06FF
414    "Syriac",  # 0700..074F
415    "Arabic Supplement",  # 0750..077F
416    "Thaana",  # 0780..07BF
417    "NKo",  # 07C0..07FF
418    "Samaritan",  # 0800..083F
419    "Mandaic",  # 0840..085F
420    "Syriac Supplement",  # 0860..086F
421    "Arabic Extended-B",  # 0870..089F
422    "Arabic Extended-A",  # 08A0..08FF
423    "Devanagari",  # 0900..097F
424    "Bengali",  # 0980..09FF
425    "Gurmukhi",  # 0A00..0A7F
426    "Gujarati",  # 0A80..0AFF
427    "Oriya",  # 0B00..0B7F
428    "Tamil",  # 0B80..0BFF
429    "Telugu",  # 0C00..0C7F
430    "Kannada",  # 0C80..0CFF
431    "Malayalam",  # 0D00..0D7F
432    "Sinhala",  # 0D80..0DFF
433    "Thai",  # 0E00..0E7F
434    "Lao",  # 0E80..0EFF
435    "Tibetan",  # 0F00..0FFF
436    "Myanmar",  # 1000..109F
437    "Georgian",  # 10A0..10FF
438    "Hangul Jamo",  # 1100..11FF
439    "Ethiopic",  # 1200..137F
440    "Ethiopic Supplement",  # 1380..139F
441    "Cherokee",  # 13A0..13FF
442    "Unified Canadian Aboriginal Syllabics",  # 1400..167F
443    "Ogham",  # 1680..169F
444    "Runic",  # 16A0..16FF
445    "Tagalog",  # 1700..171F
446    "Hanunoo",  # 1720..173F
447    "Buhid",  # 1740..175F
448    "Tagbanwa",  # 1760..177F
449    "Khmer",  # 1780..17FF
450    "Mongolian",  # 1800..18AF
451    "Unified Canadian Aboriginal Syllabics Extended",  # 18B0..18FF
452    "Limbu",  # 1900..194F
453    "Tai Le",  # 1950..197F
454    "New Tai Lue",  # 1980..19DF
455    "Khmer Symbols",  # 19E0..19FF
456    "Buginese",  # 1A00..1A1F
457    "Tai Tham",  # 1A20..1AAF
458    "Combining Diacritical Marks Extended",  # 1AB0..1AFF
459    "Balinese",  # 1B00..1B7F
460    "Sundanese",  # 1B80..1BBF
461    "Batak",  # 1BC0..1BFF
462    "Lepcha",  # 1C00..1C4F
463    "Ol Chiki",  # 1C50..1C7F
464    "Cyrillic Extended-C",  # 1C80..1C8F
465    "Georgian Extended",  # 1C90..1CBF
466    "Sundanese Supplement",  # 1CC0..1CCF
467    "Vedic Extensions",  # 1CD0..1CFF
468    "Phonetic Extensions",  # 1D00..1D7F
469    "Phonetic Extensions Supplement",  # 1D80..1DBF
470    "Combining Diacritical Marks Supplement",  # 1DC0..1DFF
471    "Latin Extended Additional",  # 1E00..1EFF
472    "Greek Extended",  # 1F00..1FFF
473    "General Punctuation",  # 2000..206F
474    "Superscripts and Subscripts",  # 2070..209F
475    "Currency Symbols",  # 20A0..20CF
476    "Combining Diacritical Marks for Symbols",  # 20D0..20FF
477    "Letterlike Symbols",  # 2100..214F
478    "Number Forms",  # 2150..218F
479    "Arrows",  # 2190..21FF
480    "Mathematical Operators",  # 2200..22FF
481    "Miscellaneous Technical",  # 2300..23FF
482    "Control Pictures",  # 2400..243F
483    "Optical Character Recognition",  # 2440..245F
484    "Enclosed Alphanumerics",  # 2460..24FF
485    "Box Drawing",  # 2500..257F
486    "Block Elements",  # 2580..259F
487    "Geometric Shapes",  # 25A0..25FF
488    "Miscellaneous Symbols",  # 2600..26FF
489    "Dingbats",  # 2700..27BF
490    "Miscellaneous Mathematical Symbols-A",  # 27C0..27EF
491    "Supplemental Arrows-A",  # 27F0..27FF
492    "Braille Patterns",  # 2800..28FF
493    "Supplemental Arrows-B",  # 2900..297F
494    "Miscellaneous Mathematical Symbols-B",  # 2980..29FF
495    "Supplemental Mathematical Operators",  # 2A00..2AFF
496    "Miscellaneous Symbols and Arrows",  # 2B00..2BFF
497    "Glagolitic",  # 2C00..2C5F
498    "Latin Extended-C",  # 2C60..2C7F
499    "Coptic",  # 2C80..2CFF
500    "Georgian Supplement",  # 2D00..2D2F
501    "Tifinagh",  # 2D30..2D7F
502    "Ethiopic Extended",  # 2D80..2DDF
503    "Cyrillic Extended-A",  # 2DE0..2DFF
504    "Supplemental Punctuation",  # 2E00..2E7F
505    "CJK Radicals Supplement",  # 2E80..2EFF
506    "Kangxi Radicals",  # 2F00..2FDF
507    "No_Block",  # 2FE0..2FEF
508    "Ideographic Description Characters",  # 2FF0..2FFF
509    "CJK Symbols and Punctuation",  # 3000..303F
510    "Hiragana",  # 3040..309F
511    "Katakana",  # 30A0..30FF
512    "Bopomofo",  # 3100..312F
513    "Hangul Compatibility Jamo",  # 3130..318F
514    "Kanbun",  # 3190..319F
515    "Bopomofo Extended",  # 31A0..31BF
516    "CJK Strokes",  # 31C0..31EF
517    "Katakana Phonetic Extensions",  # 31F0..31FF
518    "Enclosed CJK Letters and Months",  # 3200..32FF
519    "CJK Compatibility",  # 3300..33FF
520    "CJK Unified Ideographs Extension A",  # 3400..4DBF
521    "Yijing Hexagram Symbols",  # 4DC0..4DFF
522    "CJK Unified Ideographs",  # 4E00..9FFF
523    "Yi Syllables",  # A000..A48F
524    "Yi Radicals",  # A490..A4CF
525    "Lisu",  # A4D0..A4FF
526    "Vai",  # A500..A63F
527    "Cyrillic Extended-B",  # A640..A69F
528    "Bamum",  # A6A0..A6FF
529    "Modifier Tone Letters",  # A700..A71F
530    "Latin Extended-D",  # A720..A7FF
531    "Syloti Nagri",  # A800..A82F
532    "Common Indic Number Forms",  # A830..A83F
533    "Phags-pa",  # A840..A87F
534    "Saurashtra",  # A880..A8DF
535    "Devanagari Extended",  # A8E0..A8FF
536    "Kayah Li",  # A900..A92F
537    "Rejang",  # A930..A95F
538    "Hangul Jamo Extended-A",  # A960..A97F
539    "Javanese",  # A980..A9DF
540    "Myanmar Extended-B",  # A9E0..A9FF
541    "Cham",  # AA00..AA5F
542    "Myanmar Extended-A",  # AA60..AA7F
543    "Tai Viet",  # AA80..AADF
544    "Meetei Mayek Extensions",  # AAE0..AAFF
545    "Ethiopic Extended-A",  # AB00..AB2F
546    "Latin Extended-E",  # AB30..AB6F
547    "Cherokee Supplement",  # AB70..ABBF
548    "Meetei Mayek",  # ABC0..ABFF
549    "Hangul Syllables",  # AC00..D7AF
550    "Hangul Jamo Extended-B",  # D7B0..D7FF
551    "High Surrogates",  # D800..DB7F
552    "High Private Use Surrogates",  # DB80..DBFF
553    "Low Surrogates",  # DC00..DFFF
554    "Private Use Area",  # E000..F8FF
555    "CJK Compatibility Ideographs",  # F900..FAFF
556    "Alphabetic Presentation Forms",  # FB00..FB4F
557    "Arabic Presentation Forms-A",  # FB50..FDFF
558    "Variation Selectors",  # FE00..FE0F
559    "Vertical Forms",  # FE10..FE1F
560    "Combining Half Marks",  # FE20..FE2F
561    "CJK Compatibility Forms",  # FE30..FE4F
562    "Small Form Variants",  # FE50..FE6F
563    "Arabic Presentation Forms-B",  # FE70..FEFF
564    "Halfwidth and Fullwidth Forms",  # FF00..FFEF
565    "Specials",  # FFF0..FFFF
566    "Linear B Syllabary",  # 10000..1007F
567    "Linear B Ideograms",  # 10080..100FF
568    "Aegean Numbers",  # 10100..1013F
569    "Ancient Greek Numbers",  # 10140..1018F
570    "Ancient Symbols",  # 10190..101CF
571    "Phaistos Disc",  # 101D0..101FF
572    "No_Block",  # 10200..1027F
573    "Lycian",  # 10280..1029F
574    "Carian",  # 102A0..102DF
575    "Coptic Epact Numbers",  # 102E0..102FF
576    "Old Italic",  # 10300..1032F
577    "Gothic",  # 10330..1034F
578    "Old Permic",  # 10350..1037F
579    "Ugaritic",  # 10380..1039F
580    "Old Persian",  # 103A0..103DF
581    "No_Block",  # 103E0..103FF
582    "Deseret",  # 10400..1044F
583    "Shavian",  # 10450..1047F
584    "Osmanya",  # 10480..104AF
585    "Osage",  # 104B0..104FF
586    "Elbasan",  # 10500..1052F
587    "Caucasian Albanian",  # 10530..1056F
588    "Vithkuqi",  # 10570..105BF
589    "No_Block",  # 105C0..105FF
590    "Linear A",  # 10600..1077F
591    "Latin Extended-F",  # 10780..107BF
592    "No_Block",  # 107C0..107FF
593    "Cypriot Syllabary",  # 10800..1083F
594    "Imperial Aramaic",  # 10840..1085F
595    "Palmyrene",  # 10860..1087F
596    "Nabataean",  # 10880..108AF
597    "No_Block",  # 108B0..108DF
598    "Hatran",  # 108E0..108FF
599    "Phoenician",  # 10900..1091F
600    "Lydian",  # 10920..1093F
601    "No_Block",  # 10940..1097F
602    "Meroitic Hieroglyphs",  # 10980..1099F
603    "Meroitic Cursive",  # 109A0..109FF
604    "Kharoshthi",  # 10A00..10A5F
605    "Old South Arabian",  # 10A60..10A7F
606    "Old North Arabian",  # 10A80..10A9F
607    "No_Block",  # 10AA0..10ABF
608    "Manichaean",  # 10AC0..10AFF
609    "Avestan",  # 10B00..10B3F
610    "Inscriptional Parthian",  # 10B40..10B5F
611    "Inscriptional Pahlavi",  # 10B60..10B7F
612    "Psalter Pahlavi",  # 10B80..10BAF
613    "No_Block",  # 10BB0..10BFF
614    "Old Turkic",  # 10C00..10C4F
615    "No_Block",  # 10C50..10C7F
616    "Old Hungarian",  # 10C80..10CFF
617    "Hanifi Rohingya",  # 10D00..10D3F
618    "No_Block",  # 10D40..10E5F
619    "Rumi Numeral Symbols",  # 10E60..10E7F
620    "Yezidi",  # 10E80..10EBF
621    "Arabic Extended-C",  # 10EC0..10EFF
622    "Old Sogdian",  # 10F00..10F2F
623    "Sogdian",  # 10F30..10F6F
624    "Old Uyghur",  # 10F70..10FAF
625    "Chorasmian",  # 10FB0..10FDF
626    "Elymaic",  # 10FE0..10FFF
627    "Brahmi",  # 11000..1107F
628    "Kaithi",  # 11080..110CF
629    "Sora Sompeng",  # 110D0..110FF
630    "Chakma",  # 11100..1114F
631    "Mahajani",  # 11150..1117F
632    "Sharada",  # 11180..111DF
633    "Sinhala Archaic Numbers",  # 111E0..111FF
634    "Khojki",  # 11200..1124F
635    "No_Block",  # 11250..1127F
636    "Multani",  # 11280..112AF
637    "Khudawadi",  # 112B0..112FF
638    "Grantha",  # 11300..1137F
639    "No_Block",  # 11380..113FF
640    "Newa",  # 11400..1147F
641    "Tirhuta",  # 11480..114DF
642    "No_Block",  # 114E0..1157F
643    "Siddham",  # 11580..115FF
644    "Modi",  # 11600..1165F
645    "Mongolian Supplement",  # 11660..1167F
646    "Takri",  # 11680..116CF
647    "No_Block",  # 116D0..116FF
648    "Ahom",  # 11700..1174F
649    "No_Block",  # 11750..117FF
650    "Dogra",  # 11800..1184F
651    "No_Block",  # 11850..1189F
652    "Warang Citi",  # 118A0..118FF
653    "Dives Akuru",  # 11900..1195F
654    "No_Block",  # 11960..1199F
655    "Nandinagari",  # 119A0..119FF
656    "Zanabazar Square",  # 11A00..11A4F
657    "Soyombo",  # 11A50..11AAF
658    "Unified Canadian Aboriginal Syllabics Extended-A",  # 11AB0..11ABF
659    "Pau Cin Hau",  # 11AC0..11AFF
660    "Devanagari Extended-A",  # 11B00..11B5F
661    "No_Block",  # 11B60..11BFF
662    "Bhaiksuki",  # 11C00..11C6F
663    "Marchen",  # 11C70..11CBF
664    "No_Block",  # 11CC0..11CFF
665    "Masaram Gondi",  # 11D00..11D5F
666    "Gunjala Gondi",  # 11D60..11DAF
667    "No_Block",  # 11DB0..11EDF
668    "Makasar",  # 11EE0..11EFF
669    "Kawi",  # 11F00..11F5F
670    "No_Block",  # 11F60..11FAF
671    "Lisu Supplement",  # 11FB0..11FBF
672    "Tamil Supplement",  # 11FC0..11FFF
673    "Cuneiform",  # 12000..123FF
674    "Cuneiform Numbers and Punctuation",  # 12400..1247F
675    "Early Dynastic Cuneiform",  # 12480..1254F
676    "No_Block",  # 12550..12F8F
677    "Cypro-Minoan",  # 12F90..12FFF
678    "Egyptian Hieroglyphs",  # 13000..1342F
679    "Egyptian Hieroglyph Format Controls",  # 13430..1345F
680    "No_Block",  # 13460..143FF
681    "Anatolian Hieroglyphs",  # 14400..1467F
682    "No_Block",  # 14680..167FF
683    "Bamum Supplement",  # 16800..16A3F
684    "Mro",  # 16A40..16A6F
685    "Tangsa",  # 16A70..16ACF
686    "Bassa Vah",  # 16AD0..16AFF
687    "Pahawh Hmong",  # 16B00..16B8F
688    "No_Block",  # 16B90..16E3F
689    "Medefaidrin",  # 16E40..16E9F
690    "No_Block",  # 16EA0..16EFF
691    "Miao",  # 16F00..16F9F
692    "No_Block",  # 16FA0..16FDF
693    "Ideographic Symbols and Punctuation",  # 16FE0..16FFF
694    "Tangut",  # 17000..187FF
695    "Tangut Components",  # 18800..18AFF
696    "Khitan Small Script",  # 18B00..18CFF
697    "Tangut Supplement",  # 18D00..18D7F
698    "No_Block",  # 18D80..1AFEF
699    "Kana Extended-B",  # 1AFF0..1AFFF
700    "Kana Supplement",  # 1B000..1B0FF
701    "Kana Extended-A",  # 1B100..1B12F
702    "Small Kana Extension",  # 1B130..1B16F
703    "Nushu",  # 1B170..1B2FF
704    "No_Block",  # 1B300..1BBFF
705    "Duployan",  # 1BC00..1BC9F
706    "Shorthand Format Controls",  # 1BCA0..1BCAF
707    "No_Block",  # 1BCB0..1CEFF
708    "Znamenny Musical Notation",  # 1CF00..1CFCF
709    "No_Block",  # 1CFD0..1CFFF
710    "Byzantine Musical Symbols",  # 1D000..1D0FF
711    "Musical Symbols",  # 1D100..1D1FF
712    "Ancient Greek Musical Notation",  # 1D200..1D24F
713    "No_Block",  # 1D250..1D2BF
714    "Kaktovik Numerals",  # 1D2C0..1D2DF
715    "Mayan Numerals",  # 1D2E0..1D2FF
716    "Tai Xuan Jing Symbols",  # 1D300..1D35F
717    "Counting Rod Numerals",  # 1D360..1D37F
718    "No_Block",  # 1D380..1D3FF
719    "Mathematical Alphanumeric Symbols",  # 1D400..1D7FF
720    "Sutton SignWriting",  # 1D800..1DAAF
721    "No_Block",  # 1DAB0..1DEFF
722    "Latin Extended-G",  # 1DF00..1DFFF
723    "Glagolitic Supplement",  # 1E000..1E02F
724    "Cyrillic Extended-D",  # 1E030..1E08F
725    "No_Block",  # 1E090..1E0FF
726    "Nyiakeng Puachue Hmong",  # 1E100..1E14F
727    "No_Block",  # 1E150..1E28F
728    "Toto",  # 1E290..1E2BF
729    "Wancho",  # 1E2C0..1E2FF
730    "No_Block",  # 1E300..1E4CF
731    "Nag Mundari",  # 1E4D0..1E4FF
732    "No_Block",  # 1E500..1E7DF
733    "Ethiopic Extended-B",  # 1E7E0..1E7FF
734    "Mende Kikakui",  # 1E800..1E8DF
735    "No_Block",  # 1E8E0..1E8FF
736    "Adlam",  # 1E900..1E95F
737    "No_Block",  # 1E960..1EC6F
738    "Indic Siyaq Numbers",  # 1EC70..1ECBF
739    "No_Block",  # 1ECC0..1ECFF
740    "Ottoman Siyaq Numbers",  # 1ED00..1ED4F
741    "No_Block",  # 1ED50..1EDFF
742    "Arabic Mathematical Alphabetic Symbols",  # 1EE00..1EEFF
743    "No_Block",  # 1EF00..1EFFF
744    "Mahjong Tiles",  # 1F000..1F02F
745    "Domino Tiles",  # 1F030..1F09F
746    "Playing Cards",  # 1F0A0..1F0FF
747    "Enclosed Alphanumeric Supplement",  # 1F100..1F1FF
748    "Enclosed Ideographic Supplement",  # 1F200..1F2FF
749    "Miscellaneous Symbols and Pictographs",  # 1F300..1F5FF
750    "Emoticons",  # 1F600..1F64F
751    "Ornamental Dingbats",  # 1F650..1F67F
752    "Transport and Map Symbols",  # 1F680..1F6FF
753    "Alchemical Symbols",  # 1F700..1F77F
754    "Geometric Shapes Extended",  # 1F780..1F7FF
755    "Supplemental Arrows-C",  # 1F800..1F8FF
756    "Supplemental Symbols and Pictographs",  # 1F900..1F9FF
757    "Chess Symbols",  # 1FA00..1FA6F
758    "Symbols and Pictographs Extended-A",  # 1FA70..1FAFF
759    "Symbols for Legacy Computing",  # 1FB00..1FBFF
760    "No_Block",  # 1FC00..1FFFF
761    "CJK Unified Ideographs Extension B",  # 20000..2A6DF
762    "No_Block",  # 2A6E0..2A6FF
763    "CJK Unified Ideographs Extension C",  # 2A700..2B73F
764    "CJK Unified Ideographs Extension D",  # 2B740..2B81F
765    "CJK Unified Ideographs Extension E",  # 2B820..2CEAF
766    "CJK Unified Ideographs Extension F",  # 2CEB0..2EBEF
767    "No_Block",  # 2EBF0..2F7FF
768    "CJK Compatibility Ideographs Supplement",  # 2F800..2FA1F
769    "No_Block",  # 2FA20..2FFFF
770    "CJK Unified Ideographs Extension G",  # 30000..3134F
771    "CJK Unified Ideographs Extension H",  # 31350..323AF
772    "No_Block",  # 323B0..DFFFF
773    "Tags",  # E0000..E007F
774    "No_Block",  # E0080..E00FF
775    "Variation Selectors Supplement",  # E0100..E01EF
776    "No_Block",  # E01F0..EFFFF
777    "Supplementary Private Use Area-A",  # F0000..FFFFF
778    "Supplementary Private Use Area-B",  # 100000..10FFFF
779]
780