summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorChris Young <chris@unsatisfactorysoftware.co.uk>2014-05-30 20:00:49 +0100
committerDaniel Silverstone <dsilvers@digital-scurf.org>2014-06-04 13:24:24 +0100
commite5d5e68eb543fdacc3d81f1603ebcf22ee9c6d04 (patch)
treebc681a1c9cd3652d13422f2d2b30edbc7313b0d2 /utils
parenta4940bb56c2ac232fa944bdfd560cefda501961b (diff)
downloadnetsurf-e5d5e68eb543fdacc3d81f1603ebcf22ee9c6d04.tar.gz
netsurf-e5d5e68eb543fdacc3d81f1603ebcf22ee9c6d04.tar.bz2
Required IDNA/Unicode properties files and generation.
Diffstat (limited to 'utils')
-rw-r--r--utils/DerivedJoiningType.txt318
-rw-r--r--utils/idna-derived-props-gen.pl96
-rw-r--r--utils/idna-tables-5.2.0-properties.csv2322
-rw-r--r--utils/idna_props.h2634
4 files changed, 5370 insertions, 0 deletions
diff --git a/utils/DerivedJoiningType.txt b/utils/DerivedJoiningType.txt
new file mode 100644
index 000000000..d4dcc85f6
--- /dev/null
+++ b/utils/DerivedJoiningType.txt
@@ -0,0 +1,318 @@
+# DerivedJoiningType-5.2.0.txt
+# Date: 2009-05-28, 20:37:39 GMT [MD]
+#
+# Unicode Character Database
+# Copyright (c) 1991-2009 Unicode, Inc.
+# For terms of use, see http://www.unicode.org/terms_of_use.html
+# For documentation, see http://www.unicode.org/reports/tr44/
+
+# ================================================
+
+# Type T is derived, as described in ArabicShaping.txt
+
+# All code points not explicitly listed for Joining_Type
+# have the value Non_Joining (U).
+
+# @missing: 0000..10FFFF; Non_Joining
+
+# ================================================
+
+# Joining_Type=Join_Causing
+
+0640 ; C # Lm ARABIC TATWEEL
+07FA ; C # Lm NKO LAJANYALAN
+200D ; C # Cf ZERO WIDTH JOINER
+
+# Total code points: 3
+
+# ================================================
+
+# Joining_Type=Dual_Joining
+
+0626 ; D # Lo ARABIC LETTER YEH WITH HAMZA ABOVE
+0628 ; D # Lo ARABIC LETTER BEH
+062A..062E ; D # Lo [5] ARABIC LETTER TEH..ARABIC LETTER KHAH
+0633..063F ; D # Lo [13] ARABIC LETTER SEEN..ARABIC LETTER FARSI YEH WITH THREE DOTS ABOVE
+0641..0647 ; D # Lo [7] ARABIC LETTER FEH..ARABIC LETTER HEH
+0649..064A ; D # Lo [2] ARABIC LETTER ALEF MAKSURA..ARABIC LETTER YEH
+066E..066F ; D # Lo [2] ARABIC LETTER DOTLESS BEH..ARABIC LETTER DOTLESS QAF
+0678..0687 ; D # Lo [16] ARABIC LETTER HIGH HAMZA YEH..ARABIC LETTER TCHEHEH
+069A..06BF ; D # Lo [38] ARABIC LETTER SEEN WITH DOT BELOW AND DOT ABOVE..ARABIC LETTER TCHEH WITH DOT ABOVE
+06C1..06C2 ; D # Lo [2] ARABIC LETTER HEH GOAL..ARABIC LETTER HEH GOAL WITH HAMZA ABOVE
+06CC ; D # Lo ARABIC LETTER FARSI YEH
+06CE ; D # Lo ARABIC LETTER YEH WITH SMALL V
+06D0..06D1 ; D # Lo [2] ARABIC LETTER E..ARABIC LETTER YEH WITH THREE DOTS BELOW
+06FA..06FC ; D # Lo [3] ARABIC LETTER SHEEN WITH DOT BELOW..ARABIC LETTER GHAIN WITH DOT BELOW
+06FF ; D # Lo ARABIC LETTER HEH WITH INVERTED V
+0712..0714 ; D # Lo [3] SYRIAC LETTER BETH..SYRIAC LETTER GAMAL GARSHUNI
+071A..071D ; D # Lo [4] SYRIAC LETTER HETH..SYRIAC LETTER YUDH
+071F..0727 ; D # Lo [9] SYRIAC LETTER KAPH..SYRIAC LETTER REVERSED PE
+0729 ; D # Lo SYRIAC LETTER QAPH
+072B ; D # Lo SYRIAC LETTER SHIN
+072D..072E ; D # Lo [2] SYRIAC LETTER PERSIAN BHETH..SYRIAC LETTER PERSIAN GHAMAL
+074E..0758 ; D # Lo [11] SYRIAC LETTER SOGDIAN KHAPH..ARABIC LETTER HAH WITH THREE DOTS POINTING UPWARDS BELOW
+075C..076A ; D # Lo [15] ARABIC LETTER SEEN WITH FOUR DOTS ABOVE..ARABIC LETTER LAM WITH BAR
+076D..0770 ; D # Lo [4] ARABIC LETTER SEEN WITH TWO DOTS VERTICALLY ABOVE..ARABIC LETTER SEEN WITH SMALL ARABIC LETTER TAH AND TWO DOTS
+0772 ; D # Lo ARABIC LETTER HAH WITH SMALL ARABIC LETTER TAH ABOVE
+0775..0777 ; D # Lo [3] ARABIC LETTER FARSI YEH WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE..ARABIC LETTER FARSI YEH WITH EXTENDED ARABIC-INDIC DIGIT FOUR BELOW
+077A..077F ; D # Lo [6] ARABIC LETTER YEH BARREE WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE..ARABIC LETTER KAF WITH TWO DOTS ABOVE
+07CA..07EA ; D # Lo [33] NKO LETTER A..NKO LETTER JONA RA
+
+# Total code points: 188
+
+# ================================================
+
+# Joining_Type=Right_Joining
+
+0622..0625 ; R # Lo [4] ARABIC LETTER ALEF WITH MADDA ABOVE..ARABIC LETTER ALEF WITH HAMZA BELOW
+0627 ; R # Lo ARABIC LETTER ALEF
+0629 ; R # Lo ARABIC LETTER TEH MARBUTA
+062F..0632 ; R # Lo [4] ARABIC LETTER DAL..ARABIC LETTER ZAIN
+0648 ; R # Lo ARABIC LETTER WAW
+0671..0673 ; R # Lo [3] ARABIC LETTER ALEF WASLA..ARABIC LETTER ALEF WITH WAVY HAMZA BELOW
+0675..0677 ; R # Lo [3] ARABIC LETTER HIGH HAMZA ALEF..ARABIC LETTER U WITH HAMZA ABOVE
+0688..0699 ; R # Lo [18] ARABIC LETTER DDAL..ARABIC LETTER REH WITH FOUR DOTS ABOVE
+06C0 ; R # Lo ARABIC LETTER HEH WITH YEH ABOVE
+06C3..06CB ; R # Lo [9] ARABIC LETTER TEH MARBUTA GOAL..ARABIC LETTER VE
+06CD ; R # Lo ARABIC LETTER YEH WITH TAIL
+06CF ; R # Lo ARABIC LETTER WAW WITH DOT ABOVE
+06D2..06D3 ; R # Lo [2] ARABIC LETTER YEH BARREE..ARABIC LETTER YEH BARREE WITH HAMZA ABOVE
+06D5 ; R # Lo ARABIC LETTER AE
+06EE..06EF ; R # Lo [2] ARABIC LETTER DAL WITH INVERTED V..ARABIC LETTER REH WITH INVERTED V
+0710 ; R # Lo SYRIAC LETTER ALAPH
+0715..0719 ; R # Lo [5] SYRIAC LETTER DALATH..SYRIAC LETTER ZAIN
+071E ; R # Lo SYRIAC LETTER YUDH HE
+0728 ; R # Lo SYRIAC LETTER SADHE
+072A ; R # Lo SYRIAC LETTER RISH
+072C ; R # Lo SYRIAC LETTER TAW
+072F ; R # Lo SYRIAC LETTER PERSIAN DHALATH
+074D ; R # Lo SYRIAC LETTER SOGDIAN ZHAIN
+0759..075B ; R # Lo [3] ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW AND SMALL TAH..ARABIC LETTER REH WITH STROKE
+076B..076C ; R # Lo [2] ARABIC LETTER REH WITH TWO DOTS VERTICALLY ABOVE..ARABIC LETTER REH WITH HAMZA ABOVE
+0771 ; R # Lo ARABIC LETTER REH WITH SMALL ARABIC LETTER TAH AND TWO DOTS
+0773..0774 ; R # Lo [2] ARABIC LETTER ALEF WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE..ARABIC LETTER ALEF WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE
+0778..0779 ; R # Lo [2] ARABIC LETTER WAW WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE..ARABIC LETTER WAW WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE
+
+# Total code points: 74
+
+# ================================================
+
+# Joining_Type=Transparent
+
+00AD ; T # Cf SOFT HYPHEN
+0300..036F ; T # Mn [112] COMBINING GRAVE ACCENT..COMBINING LATIN SMALL LETTER X
+0483..0487 ; T # Mn [5] COMBINING CYRILLIC TITLO..COMBINING CYRILLIC POKRYTIE
+0488..0489 ; T # Me [2] COMBINING CYRILLIC HUNDRED THOUSANDS SIGN..COMBINING CYRILLIC MILLIONS SIGN
+0591..05BD ; T # Mn [45] HEBREW ACCENT ETNAHTA..HEBREW POINT METEG
+05BF ; T # Mn HEBREW POINT RAFE
+05C1..05C2 ; T # Mn [2] HEBREW POINT SHIN DOT..HEBREW POINT SIN DOT
+05C4..05C5 ; T # Mn [2] HEBREW MARK UPPER DOT..HEBREW MARK LOWER DOT
+05C7 ; T # Mn HEBREW POINT QAMATS QATAN
+0610..061A ; T # Mn [11] ARABIC SIGN SALLALLAHOU ALAYHE WASSALLAM..ARABIC SMALL KASRA
+064B..065E ; T # Mn [20] ARABIC FATHATAN..ARABIC FATHA WITH TWO DOTS
+0670 ; T # Mn ARABIC LETTER SUPERSCRIPT ALEF
+06D6..06DC ; T # Mn [7] ARABIC SMALL HIGH LIGATURE SAD WITH LAM WITH ALEF MAKSURA..ARABIC SMALL HIGH SEEN
+06DE ; T # Me ARABIC START OF RUB EL HIZB
+06DF..06E4 ; T # Mn [6] ARABIC SMALL HIGH ROUNDED ZERO..ARABIC SMALL HIGH MADDA
+06E7..06E8 ; T # Mn [2] ARABIC SMALL HIGH YEH..ARABIC SMALL HIGH NOON
+06EA..06ED ; T # Mn [4] ARABIC EMPTY CENTRE LOW STOP..ARABIC SMALL LOW MEEM
+070F ; T # Cf SYRIAC ABBREVIATION MARK
+0711 ; T # Mn SYRIAC LETTER SUPERSCRIPT ALAPH
+0730..074A ; T # Mn [27] SYRIAC PTHAHA ABOVE..SYRIAC BARREKH
+07A6..07B0 ; T # Mn [11] THAANA ABAFILI..THAANA SUKUN
+07EB..07F3 ; T # Mn [9] NKO COMBINING SHORT HIGH TONE..NKO COMBINING DOUBLE DOT ABOVE
+0816..0819 ; T # Mn [4] SAMARITAN MARK IN..SAMARITAN MARK DAGESH
+081B..0823 ; T # Mn [9] SAMARITAN MARK EPENTHETIC YUT..SAMARITAN VOWEL SIGN A
+0825..0827 ; T # Mn [3] SAMARITAN VOWEL SIGN SHORT A..SAMARITAN VOWEL SIGN U
+0829..082D ; T # Mn [5] SAMARITAN VOWEL SIGN LONG I..SAMARITAN MARK NEQUDAA
+0900..0902 ; T # Mn [3] DEVANAGARI SIGN INVERTED CANDRABINDU..DEVANAGARI SIGN ANUSVARA
+093C ; T # Mn DEVANAGARI SIGN NUKTA
+0941..0948 ; T # Mn [8] DEVANAGARI VOWEL SIGN U..DEVANAGARI VOWEL SIGN AI
+094D ; T # Mn DEVANAGARI SIGN VIRAMA
+0951..0955 ; T # Mn [5] DEVANAGARI STRESS SIGN UDATTA..DEVANAGARI VOWEL SIGN CANDRA LONG E
+0962..0963 ; T # Mn [2] DEVANAGARI VOWEL SIGN VOCALIC L..DEVANAGARI VOWEL SIGN VOCALIC LL
+0981 ; T # Mn BENGALI SIGN CANDRABINDU
+09BC ; T # Mn BENGALI SIGN NUKTA
+09C1..09C4 ; T # Mn [4] BENGALI VOWEL SIGN U..BENGALI VOWEL SIGN VOCALIC RR
+09CD ; T # Mn BENGALI SIGN VIRAMA
+09E2..09E3 ; T # Mn [2] BENGALI VOWEL SIGN VOCALIC L..BENGALI VOWEL SIGN VOCALIC LL
+0A01..0A02 ; T # Mn [2] GURMUKHI SIGN ADAK BINDI..GURMUKHI SIGN BINDI
+0A3C ; T # Mn GURMUKHI SIGN NUKTA
+0A41..0A42 ; T # Mn [2] GURMUKHI VOWEL SIGN U..GURMUKHI VOWEL SIGN UU
+0A47..0A48 ; T # Mn [2] GURMUKHI VOWEL SIGN EE..GURMUKHI VOWEL SIGN AI
+0A4B..0A4D ; T # Mn [3] GURMUKHI VOWEL SIGN OO..GURMUKHI SIGN VIRAMA
+0A51 ; T # Mn GURMUKHI SIGN UDAAT
+0A70..0A71 ; T # Mn [2] GURMUKHI TIPPI..GURMUKHI ADDAK
+0A75 ; T # Mn GURMUKHI SIGN YAKASH
+0A81..0A82 ; T # Mn [2] GUJARATI SIGN CANDRABINDU..GUJARATI SIGN ANUSVARA
+0ABC ; T # Mn GUJARATI SIGN NUKTA
+0AC1..0AC5 ; T # Mn [5] GUJARATI VOWEL SIGN U..GUJARATI VOWEL SIGN CANDRA E
+0AC7..0AC8 ; T # Mn [2] GUJARATI VOWEL SIGN E..GUJARATI VOWEL SIGN AI
+0ACD ; T # Mn GUJARATI SIGN VIRAMA
+0AE2..0AE3 ; T # Mn [2] GUJARATI VOWEL SIGN VOCALIC L..GUJARATI VOWEL SIGN VOCALIC LL
+0B01 ; T # Mn ORIYA SIGN CANDRABINDU
+0B3C ; T # Mn ORIYA SIGN NUKTA
+0B3F ; T # Mn ORIYA VOWEL SIGN I
+0B41..0B44 ; T # Mn [4] ORIYA VOWEL SIGN U..ORIYA VOWEL SIGN VOCALIC RR
+0B4D ; T # Mn ORIYA SIGN VIRAMA
+0B56 ; T # Mn ORIYA AI LENGTH MARK
+0B62..0B63 ; T # Mn [2] ORIYA VOWEL SIGN VOCALIC L..ORIYA VOWEL SIGN VOCALIC LL
+0B82 ; T # Mn TAMIL SIGN ANUSVARA
+0BC0 ; T # Mn TAMIL VOWEL SIGN II
+0BCD ; T # Mn TAMIL SIGN VIRAMA
+0C3E..0C40 ; T # Mn [3] TELUGU VOWEL SIGN AA..TELUGU VOWEL SIGN II
+0C46..0C48 ; T # Mn [3] TELUGU VOWEL SIGN E..TELUGU VOWEL SIGN AI
+0C4A..0C4D ; T # Mn [4] TELUGU VOWEL SIGN O..TELUGU SIGN VIRAMA
+0C55..0C56 ; T # Mn [2] TELUGU LENGTH MARK..TELUGU AI LENGTH MARK
+0C62..0C63 ; T # Mn [2] TELUGU VOWEL SIGN VOCALIC L..TELUGU VOWEL SIGN VOCALIC LL
+0CBC ; T # Mn KANNADA SIGN NUKTA
+0CBF ; T # Mn KANNADA VOWEL SIGN I
+0CC6 ; T # Mn KANNADA VOWEL SIGN E
+0CCC..0CCD ; T # Mn [2] KANNADA VOWEL SIGN AU..KANNADA SIGN VIRAMA
+0CE2..0CE3 ; T # Mn [2] KANNADA VOWEL SIGN VOCALIC L..KANNADA VOWEL SIGN VOCALIC LL
+0D41..0D44 ; T # Mn [4] MALAYALAM VOWEL SIGN U..MALAYALAM VOWEL SIGN VOCALIC RR
+0D4D ; T # Mn MALAYALAM SIGN VIRAMA
+0D62..0D63 ; T # Mn [2] MALAYALAM VOWEL SIGN VOCALIC L..MALAYALAM VOWEL SIGN VOCALIC LL
+0DCA ; T # Mn SINHALA SIGN AL-LAKUNA
+0DD2..0DD4 ; T # Mn [3] SINHALA VOWEL SIGN KETTI IS-PILLA..SINHALA VOWEL SIGN KETTI PAA-PILLA
+0DD6 ; T # Mn SINHALA VOWEL SIGN DIGA PAA-PILLA
+0E31 ; T # Mn THAI CHARACTER MAI HAN-AKAT
+0E34..0E3A ; T # Mn [7] THAI CHARACTER SARA I..THAI CHARACTER PHINTHU
+0E47..0E4E ; T # Mn [8] THAI CHARACTER MAITAIKHU..THAI CHARACTER YAMAKKAN
+0EB1 ; T # Mn LAO VOWEL SIGN MAI KAN
+0EB4..0EB9 ; T # Mn [6] LAO VOWEL SIGN I..LAO VOWEL SIGN UU
+0EBB..0EBC ; T # Mn [2] LAO VOWEL SIGN MAI KON..LAO SEMIVOWEL SIGN LO
+0EC8..0ECD ; T # Mn [6] LAO TONE MAI EK..LAO NIGGAHITA
+0F18..0F19 ; T # Mn [2] TIBETAN ASTROLOGICAL SIGN -KHYUD PA..TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS
+0F35 ; T # Mn TIBETAN MARK NGAS BZUNG NYI ZLA
+0F37 ; T # Mn TIBETAN MARK NGAS BZUNG SGOR RTAGS
+0F39 ; T # Mn TIBETAN MARK TSA -PHRU
+0F71..0F7E ; T # Mn [14] TIBETAN VOWEL SIGN AA..TIBETAN SIGN RJES SU NGA RO
+0F80..0F84 ; T # Mn [5] TIBETAN VOWEL SIGN REVERSED I..TIBETAN MARK HALANTA
+0F86..0F87 ; T # Mn [2] TIBETAN SIGN LCI RTAGS..TIBETAN SIGN YANG RTAGS
+0F90..0F97 ; T # Mn [8] TIBETAN SUBJOINED LETTER KA..TIBETAN SUBJOINED LETTER JA
+0F99..0FBC ; T # Mn [36] TIBETAN SUBJOINED LETTER NYA..TIBETAN SUBJOINED LETTER FIXED-FORM RA
+0FC6 ; T # Mn TIBETAN SYMBOL PADMA GDAN
+102D..1030 ; T # Mn [4] MYANMAR VOWEL SIGN I..MYANMAR VOWEL SIGN UU
+1032..1037 ; T # Mn [6] MYANMAR VOWEL SIGN AI..MYANMAR SIGN DOT BELOW
+1039..103A ; T # Mn [2] MYANMAR SIGN VIRAMA..MYANMAR SIGN ASAT
+103D..103E ; T # Mn [2] MYANMAR CONSONANT SIGN MEDIAL WA..MYANMAR CONSONANT SIGN MEDIAL HA
+1058..1059 ; T # Mn [2] MYANMAR VOWEL SIGN VOCALIC L..MYANMAR VOWEL SIGN VOCALIC LL
+105E..1060 ; T # Mn [3] MYANMAR CONSONANT SIGN MON MEDIAL NA..MYANMAR CONSONANT SIGN MON MEDIAL LA
+1071..1074 ; T # Mn [4] MYANMAR VOWEL SIGN GEBA KAREN I..MYANMAR VOWEL SIGN KAYAH EE
+1082 ; T # Mn MYANMAR CONSONANT SIGN SHAN MEDIAL WA
+1085..1086 ; T # Mn [2] MYANMAR VOWEL SIGN SHAN E ABOVE..MYANMAR VOWEL SIGN SHAN FINAL Y
+108D ; T # Mn MYANMAR SIGN SHAN COUNCIL EMPHATIC TONE
+109D ; T # Mn MYANMAR VOWEL SIGN AITON AI
+135F ; T # Mn ETHIOPIC COMBINING GEMINATION MARK
+1712..1714 ; T # Mn [3] TAGALOG VOWEL SIGN I..TAGALOG SIGN VIRAMA
+1732..1734 ; T # Mn [3] HANUNOO VOWEL SIGN I..HANUNOO SIGN PAMUDPOD
+1752..1753 ; T # Mn [2] BUHID VOWEL SIGN I..BUHID VOWEL SIGN U
+1772..1773 ; T # Mn [2] TAGBANWA VOWEL SIGN I..TAGBANWA VOWEL SIGN U
+17B4..17B5 ; T # Cf [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA
+17B7..17BD ; T # Mn [7] KHMER VOWEL SIGN I..KHMER VOWEL SIGN UA
+17C6 ; T # Mn KHMER SIGN NIKAHIT
+17C9..17D3 ; T # Mn [11] KHMER SIGN MUUSIKATOAN..KHMER SIGN BATHAMASAT
+17DD ; T # Mn KHMER SIGN ATTHACAN
+180B..180D ; T # Mn [3] MONGOLIAN FREE VARIATION SELECTOR ONE..MONGOLIAN FREE VARIATION SELECTOR THREE
+18A9 ; T # Mn MONGOLIAN LETTER ALI GALI DAGALGA
+1920..1922 ; T # Mn [3] LIMBU VOWEL SIGN A..LIMBU VOWEL SIGN U
+1927..1928 ; T # Mn [2] LIMBU VOWEL SIGN E..LIMBU VOWEL SIGN O
+1932 ; T # Mn LIMBU SMALL LETTER ANUSVARA
+1939..193B ; T # Mn [3] LIMBU SIGN MUKPHRENG..LIMBU SIGN SA-I
+1A17..1A18 ; T # Mn [2] BUGINESE VOWEL SIGN I..BUGINESE VOWEL SIGN U
+1A56 ; T # Mn TAI THAM CONSONANT SIGN MEDIAL LA
+1A58..1A5E ; T # Mn [7] TAI THAM SIGN MAI KANG LAI..TAI THAM CONSONANT SIGN SA
+1A60 ; T # Mn TAI THAM SIGN SAKOT
+1A62 ; T # Mn TAI THAM VOWEL SIGN MAI SAT
+1A65..1A6C ; T # Mn [8] TAI THAM VOWEL SIGN I..TAI THAM VOWEL SIGN OA BELOW
+1A73..1A7C ; T # Mn [10] TAI THAM VOWEL SIGN OA ABOVE..TAI THAM SIGN KHUEN-LUE KARAN
+1A7F ; T # Mn TAI THAM COMBINING CRYPTOGRAMMIC DOT
+1B00..1B03 ; T # Mn [4] BALINESE SIGN ULU RICEM..BALINESE SIGN SURANG
+1B34 ; T # Mn BALINESE SIGN REREKAN
+1B36..1B3A ; T # Mn [5] BALINESE VOWEL SIGN ULU..BALINESE VOWEL SIGN RA REPA
+1B3C ; T # Mn BALINESE VOWEL SIGN LA LENGA
+1B42 ; T # Mn BALINESE VOWEL SIGN PEPET
+1B6B..1B73 ; T # Mn [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG
+1B80..1B81 ; T # Mn [2] SUNDANESE SIGN PANYECEK..SUNDANESE SIGN PANGLAYAR
+1BA2..1BA5 ; T # Mn [4] SUNDANESE CONSONANT SIGN PANYAKRA..SUNDANESE VOWEL SIGN PANYUKU
+1BA8..1BA9 ; T # Mn [2] SUNDANESE VOWEL SIGN PAMEPET..SUNDANESE VOWEL SIGN PANEULEUNG
+1C2C..1C33 ; T # Mn [8] LEPCHA VOWEL SIGN E..LEPCHA CONSONANT SIGN T
+1C36..1C37 ; T # Mn [2] LEPCHA SIGN RAN..LEPCHA SIGN NUKTA
+1CD0..1CD2 ; T # Mn [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA
+1CD4..1CE0 ; T # Mn [13] VEDIC SIGN YAJURVEDIC MIDLINE SVARITA..VEDIC TONE RIGVEDIC KASHMIRI INDEPENDENT SVARITA
+1CE2..1CE8 ; T # Mn [7] VEDIC SIGN VISARGA SVARITA..VEDIC SIGN VISARGA ANUDATTA WITH TAIL
+1CED ; T # Mn VEDIC SIGN TIRYAK
+1DC0..1DE6 ; T # Mn [39] COMBINING DOTTED GRAVE ACCENT..COMBINING LATIN SMALL LETTER Z
+1DFD..1DFF ; T # Mn [3] COMBINING ALMOST EQUAL TO BELOW..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW
+200B ; T # Cf ZERO WIDTH SPACE
+200E..200F ; T # Cf [2] LEFT-TO-RIGHT MARK..RIGHT-TO-LEFT MARK
+202A..202E ; T # Cf [5] LEFT-TO-RIGHT EMBEDDING..RIGHT-TO-LEFT OVERRIDE
+2060..2064 ; T # Cf [5] WORD JOINER..INVISIBLE PLUS
+206A..206F ; T # Cf [6] INHIBIT SYMMETRIC SWAPPING..NOMINAL DIGIT SHAPES
+20D0..20DC ; T # Mn [13] COMBINING LEFT HARPOON ABOVE..COMBINING FOUR DOTS ABOVE
+20DD..20E0 ; T # Me [4] COMBINING ENCLOSING CIRCLE..COMBINING ENCLOSING CIRCLE BACKSLASH
+20E1 ; T # Mn COMBINING LEFT RIGHT ARROW ABOVE
+20E2..20E4 ; T # Me [3] COMBINING ENCLOSING SCREEN..COMBINING ENCLOSING UPWARD POINTING TRIANGLE
+20E5..20F0 ; T # Mn [12] COMBINING REVERSE SOLIDUS OVERLAY..COMBINING ASTERISK ABOVE
+2CEF..2CF1 ; T # Mn [3] COPTIC COMBINING NI ABOVE..COPTIC COMBINING SPIRITUS LENIS
+2DE0..2DFF ; T # Mn [32] COMBINING CYRILLIC LETTER BE..COMBINING CYRILLIC LETTER IOTIFIED BIG YUS
+302A..302F ; T # Mn [6] IDEOGRAPHIC LEVEL TONE MARK..HANGUL DOUBLE DOT TONE MARK
+3099..309A ; T # Mn [2] COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
+A66F ; T # Mn COMBINING CYRILLIC VZMET
+A670..A672 ; T # Me [3] COMBINING CYRILLIC TEN MILLIONS SIGN..COMBINING CYRILLIC THOUSAND MILLIONS SIGN
+A67C..A67D ; T # Mn [2] COMBINING CYRILLIC KAVYKA..COMBINING CYRILLIC PAYEROK
+A6F0..A6F1 ; T # Mn [2] BAMUM COMBINING MARK KOQNDON..BAMUM COMBINING MARK TUKWENTIS
+A802 ; T # Mn SYLOTI NAGRI SIGN DVISVARA
+A806 ; T # Mn SYLOTI NAGRI SIGN HASANTA
+A80B ; T # Mn SYLOTI NAGRI SIGN ANUSVARA
+A825..A826 ; T # Mn [2] SYLOTI NAGRI VOWEL SIGN U..SYLOTI NAGRI VOWEL SIGN E
+A8C4 ; T # Mn SAURASHTRA SIGN VIRAMA
+A8E0..A8F1 ; T # Mn [18] COMBINING DEVANAGARI DIGIT ZERO..COMBINING DEVANAGARI SIGN AVAGRAHA
+A926..A92D ; T # Mn [8] KAYAH LI VOWEL UE..KAYAH LI TONE CALYA PLOPHU
+A947..A951 ; T # Mn [11] REJANG VOWEL SIGN I..REJANG CONSONANT SIGN R
+A980..A982 ; T # Mn [3] JAVANESE SIGN PANYANGGA..JAVANESE SIGN LAYAR
+A9B3 ; T # Mn JAVANESE SIGN CECAK TELU
+A9B6..A9B9 ; T # Mn [4] JAVANESE VOWEL SIGN WULU..JAVANESE VOWEL SIGN SUKU MENDUT
+A9BC ; T # Mn JAVANESE VOWEL SIGN PEPET
+AA29..AA2E ; T # Mn [6] CHAM VOWEL SIGN AA..CHAM VOWEL SIGN OE
+AA31..AA32 ; T # Mn [2] CHAM VOWEL SIGN AU..CHAM VOWEL SIGN UE
+AA35..AA36 ; T # Mn [2] CHAM CONSONANT SIGN LA..CHAM CONSONANT SIGN WA
+AA43 ; T # Mn CHAM CONSONANT SIGN FINAL NG
+AA4C ; T # Mn CHAM CONSONANT SIGN FINAL M
+AAB0 ; T # Mn TAI VIET MAI KANG
+AAB2..AAB4 ; T # Mn [3] TAI VIET VOWEL I..TAI VIET VOWEL U
+AAB7..AAB8 ; T # Mn [2] TAI VIET MAI KHIT..TAI VIET VOWEL IA
+AABE..AABF ; T # Mn [2] TAI VIET VOWEL AM..TAI VIET TONE MAI EK
+AAC1 ; T # Mn TAI VIET TONE MAI THO
+ABE5 ; T # Mn MEETEI MAYEK VOWEL SIGN ANAP
+ABE8 ; T # Mn MEETEI MAYEK VOWEL SIGN UNAP
+ABED ; T # Mn MEETEI MAYEK APUN IYEK
+FB1E ; T # Mn HEBREW POINT JUDEO-SPANISH VARIKA
+FE00..FE0F ; T # Mn [16] VARIATION SELECTOR-1..VARIATION SELECTOR-16
+FE20..FE26 ; T # Mn [7] COMBINING LIGATURE LEFT HALF..COMBINING CONJOINING MACRON
+FEFF ; T # Cf ZERO WIDTH NO-BREAK SPACE
+FFF9..FFFB ; T # Cf [3] INTERLINEAR ANNOTATION ANCHOR..INTERLINEAR ANNOTATION TERMINATOR
+101FD ; T # Mn PHAISTOS DISC SIGN COMBINING OBLIQUE STROKE
+10A01..10A03 ; T # Mn [3] KHAROSHTHI VOWEL SIGN I..KHAROSHTHI VOWEL SIGN VOCALIC R
+10A05..10A06 ; T # Mn [2] KHAROSHTHI VOWEL SIGN E..KHAROSHTHI VOWEL SIGN O
+10A0C..10A0F ; T # Mn [4] KHAROSHTHI VOWEL LENGTH MARK..KHAROSHTHI SIGN VISARGA
+10A38..10A3A ; T # Mn [3] KHAROSHTHI SIGN BAR ABOVE..KHAROSHTHI SIGN DOT BELOW
+10A3F ; T # Mn KHAROSHTHI VIRAMA
+11080..11081 ; T # Mn [2] KAITHI SIGN CANDRABINDU..KAITHI SIGN ANUSVARA
+110B3..110B6 ; T # Mn [4] KAITHI VOWEL SIGN U..KAITHI VOWEL SIGN AI
+110B9..110BA ; T # Mn [2] KAITHI SIGN VIRAMA..KAITHI SIGN NUKTA
+110BD ; T # Cf KAITHI NUMBER SIGN
+1D167..1D169 ; T # Mn [3] MUSICAL SYMBOL COMBINING TREMOLO-1..MUSICAL SYMBOL COMBINING TREMOLO-3
+1D173..1D17A ; T # Cf [8] MUSICAL SYMBOL BEGIN BEAM..MUSICAL SYMBOL END PHRASE
+1D17B..1D182 ; T # Mn [8] MUSICAL SYMBOL COMBINING ACCENT..MUSICAL SYMBOL COMBINING LOURE
+1D185..1D18B ; T # Mn [7] MUSICAL SYMBOL COMBINING DOIT..MUSICAL SYMBOL COMBINING TRIPLE TONGUE
+1D1AA..1D1AD ; T # Mn [4] MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO
+1D242..1D244 ; T # Mn [3] COMBINING GREEK MUSICAL TRISEME..COMBINING GREEK MUSICAL PENTASEME
+E0001 ; T # Cf LANGUAGE TAG
+E0020..E007F ; T # Cf [96] TAG SPACE..CANCEL TAG
+E0100..E01EF ; T # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256
+
+# Total code points: 1308
+
+# EOF
diff --git a/utils/idna-derived-props-gen.pl b/utils/idna-derived-props-gen.pl
new file mode 100644
index 000000000..515f62a40
--- /dev/null
+++ b/utils/idna-derived-props-gen.pl
@@ -0,0 +1,96 @@
+#!/usr/bin/perl
+#
+# Copyright 2014 Chris Young <chris@unsatisfactorysoftware.co.uk>
+#
+# This file is part of NetSurf, http://www.netsurf-browser.org/
+#
+# NetSurf is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# NetSurf is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+print <<HEADER;
+/* This file is generated by idna-derived-props-gen.pl
+ * DO NOT EDIT BY HAND
+ */
+#ifndef _NETSURF_UTILS_IDNA_PROPS_H_
+#define _NETSURF_UTILS_IDNA_PROPS_H_
+
+typedef enum idna_property {
+ IDNA_P_PVALID = 1,
+ IDNA_P_CONTEXTJ = 2,
+ IDNA_P_CONTEXTO = 3,
+ IDNA_P_DISALLOWED = 4,
+ IDNA_P_UNASSIGNED = 5
+} idna_property;
+
+typedef enum idna_unicode_jt {
+ IDNA_UNICODE_JT_U = 0,
+ IDNA_UNICODE_JT_C = 1,
+ IDNA_UNICODE_JT_D = 2,
+ IDNA_UNICODE_JT_R = 3,
+ IDNA_UNICODE_JT_T = 4,
+ IDNA_UNICODE_JT_L = 5
+} idna_unicode_jt;
+
+
+typedef struct idna_table {
+ int32_t start;
+ int32_t end;
+ union p {
+ idna_property property;
+ idna_unicode_jt jt;
+ } p;
+} idna_table;
+
+idna_table idna_derived[] = {
+HEADER
+
+open(CSVFILE, "idna-tables-5.2.0-properties.csv");
+$line = <CSVFILE>; # discard header line
+
+while($line = <CSVFILE>) {
+ @items = split(/\,/, $line);
+ @codepoints = split(/-/, $items[0]);
+ if($#codepoints == 0) { $codepoints[1] = $codepoints[0]; }
+ print "\t{ 0x" . $codepoints[0] . ", 0x" . $codepoints[1] . ", .p.property = IDNA_P_" . $items[1] . " },\n";
+}
+
+close(CSVFILE);
+
+print <<HEADER;
+ { 0, 0, .p.property = 0}
+};
+
+idna_table idna_joiningtype[] = {
+HEADER
+
+
+open(TXTFILE, "DerivedJoiningType.txt");
+
+while($line = <TXTFILE>) {
+ chop($line);
+ if(substr($line, 0, 1) eq '#') {next;}
+ if(length($line) == 0) {next;}
+ @items = split(/;/, $line);
+ @codepoints = split(/\./, $items[0]);
+ if($#codepoints == 0) { $codepoints[2] = $codepoints[0]; }
+ print "\t{ 0x" . $codepoints[0] . ", 0x" . $codepoints[2] . ", .p.jt = IDNA_UNICODE_JT_" . substr($items[1], 1, 1) . " },\n";
+}
+
+close(TXTFILE);
+
+print <<HEADER;
+ { 0, 0, .p.jt = 0}
+};
+#endif
+HEADER
+
+
diff --git a/utils/idna-tables-5.2.0-properties.csv b/utils/idna-tables-5.2.0-properties.csv
new file mode 100644
index 000000000..a74547bc9
--- /dev/null
+++ b/utils/idna-tables-5.2.0-properties.csv
@@ -0,0 +1,2322 @@
+Codepoint,Property,Description
+0000-002C,DISALLOWED,NULL..COMMA
+002D,PVALID,HYPHEN-MINUS
+002E-002F,DISALLOWED,FULL STOP..SOLIDUS
+0030-0039,PVALID,DIGIT ZERO..DIGIT NINE
+003A-0060,DISALLOWED,COLON..GRAVE ACCENT
+0061-007A,PVALID,LATIN SMALL LETTER A..LATIN SMALL LETTER Z
+007B-00B6,DISALLOWED,LEFT CURLY BRACKET..PILCROW SIGN
+00B7,CONTEXTO,MIDDLE DOT
+00B8-00DE,DISALLOWED,CEDILLA..LATIN CAPITAL LETTER THORN
+00DF-00F6,PVALID,LATIN SMALL LETTER SHARP S..LATIN SMALL LETTER O WITH DIAERESIS
+00F7,DISALLOWED,DIVISION SIGN
+00F8-00FF,PVALID,LATIN SMALL LETTER O WITH STROKE..LATIN SMALL LETTER Y WITH DIAERESIS
+0100,DISALLOWED,LATIN CAPITAL LETTER A WITH MACRON
+0101,PVALID,LATIN SMALL LETTER A WITH MACRON
+0102,DISALLOWED,LATIN CAPITAL LETTER A WITH BREVE
+0103,PVALID,LATIN SMALL LETTER A WITH BREVE
+0104,DISALLOWED,LATIN CAPITAL LETTER A WITH OGONEK
+0105,PVALID,LATIN SMALL LETTER A WITH OGONEK
+0106,DISALLOWED,LATIN CAPITAL LETTER C WITH ACUTE
+0107,PVALID,LATIN SMALL LETTER C WITH ACUTE
+0108,DISALLOWED,LATIN CAPITAL LETTER C WITH CIRCUMFLEX
+0109,PVALID,LATIN SMALL LETTER C WITH CIRCUMFLEX
+010A,DISALLOWED,LATIN CAPITAL LETTER C WITH DOT ABOVE
+010B,PVALID,LATIN SMALL LETTER C WITH DOT ABOVE
+010C,DISALLOWED,LATIN CAPITAL LETTER C WITH CARON
+010D,PVALID,LATIN SMALL LETTER C WITH CARON
+010E,DISALLOWED,LATIN CAPITAL LETTER D WITH CARON
+010F,PVALID,LATIN SMALL LETTER D WITH CARON
+0110,DISALLOWED,LATIN CAPITAL LETTER D WITH STROKE
+0111,PVALID,LATIN SMALL LETTER D WITH STROKE
+0112,DISALLOWED,LATIN CAPITAL LETTER E WITH MACRON
+0113,PVALID,LATIN SMALL LETTER E WITH MACRON
+0114,DISALLOWED,LATIN CAPITAL LETTER E WITH BREVE
+0115,PVALID,LATIN SMALL LETTER E WITH BREVE
+0116,DISALLOWED,LATIN CAPITAL LETTER E WITH DOT ABOVE
+0117,PVALID,LATIN SMALL LETTER E WITH DOT ABOVE
+0118,DISALLOWED,LATIN CAPITAL LETTER E WITH OGONEK
+0119,PVALID,LATIN SMALL LETTER E WITH OGONEK
+011A,DISALLOWED,LATIN CAPITAL LETTER E WITH CARON
+011B,PVALID,LATIN SMALL LETTER E WITH CARON
+011C,DISALLOWED,LATIN CAPITAL LETTER G WITH CIRCUMFLEX
+011D,PVALID,LATIN SMALL LETTER G WITH CIRCUMFLEX
+011E,DISALLOWED,LATIN CAPITAL LETTER G WITH BREVE
+011F,PVALID,LATIN SMALL LETTER G WITH BREVE
+0120,DISALLOWED,LATIN CAPITAL LETTER G WITH DOT ABOVE
+0121,PVALID,LATIN SMALL LETTER G WITH DOT ABOVE
+0122,DISALLOWED,LATIN CAPITAL LETTER G WITH CEDILLA
+0123,PVALID,LATIN SMALL LETTER G WITH CEDILLA
+0124,DISALLOWED,LATIN CAPITAL LETTER H WITH CIRCUMFLEX
+0125,PVALID,LATIN SMALL LETTER H WITH CIRCUMFLEX
+0126,DISALLOWED,LATIN CAPITAL LETTER H WITH STROKE
+0127,PVALID,LATIN SMALL LETTER H WITH STROKE
+0128,DISALLOWED,LATIN CAPITAL LETTER I WITH TILDE
+0129,PVALID,LATIN SMALL LETTER I WITH TILDE
+012A,DISALLOWED,LATIN CAPITAL LETTER I WITH MACRON
+012B,PVALID,LATIN SMALL LETTER I WITH MACRON
+012C,DISALLOWED,LATIN CAPITAL LETTER I WITH BREVE
+012D,PVALID,LATIN SMALL LETTER I WITH BREVE
+012E,DISALLOWED,LATIN CAPITAL LETTER I WITH OGONEK
+012F,PVALID,LATIN SMALL LETTER I WITH OGONEK
+0130,DISALLOWED,LATIN CAPITAL LETTER I WITH DOT ABOVE
+0131,PVALID,LATIN SMALL LETTER DOTLESS I
+0132-0134,DISALLOWED,LATIN CAPITAL LIGATURE IJ..LATIN CAPITAL LETTER J WITH CIRCUMFLEX
+0135,PVALID,LATIN SMALL LETTER J WITH CIRCUMFLEX
+0136,DISALLOWED,LATIN CAPITAL LETTER K WITH CEDILLA
+0137-0138,PVALID,LATIN SMALL LETTER K WITH CEDILLA..LATIN SMALL LETTER KRA
+0139,DISALLOWED,LATIN CAPITAL LETTER L WITH ACUTE
+013A,PVALID,LATIN SMALL LETTER L WITH ACUTE
+013B,DISALLOWED,LATIN CAPITAL LETTER L WITH CEDILLA
+013C,PVALID,LATIN SMALL LETTER L WITH CEDILLA
+013D,DISALLOWED,LATIN CAPITAL LETTER L WITH CARON
+013E,PVALID,LATIN SMALL LETTER L WITH CARON
+013F-0141,DISALLOWED,LATIN CAPITAL LETTER L WITH MIDDLE DOT..LATIN CAPITAL LETTER L WITH STROKE
+0142,PVALID,LATIN SMALL LETTER L WITH STROKE
+0143,DISALLOWED,LATIN CAPITAL LETTER N WITH ACUTE
+0144,PVALID,LATIN SMALL LETTER N WITH ACUTE
+0145,DISALLOWED,LATIN CAPITAL LETTER N WITH CEDILLA
+0146,PVALID,LATIN SMALL LETTER N WITH CEDILLA
+0147,DISALLOWED,LATIN CAPITAL LETTER N WITH CARON
+0148,PVALID,LATIN SMALL LETTER N WITH CARON
+0149-014A,DISALLOWED,LATIN SMALL LETTER N PRECEDED BY APOSTROPHE..LATIN CAPITAL LETTER ENG
+014B,PVALID,LATIN SMALL LETTER ENG
+014C,DISALLOWED,LATIN CAPITAL LETTER O WITH MACRON
+014D,PVALID,LATIN SMALL LETTER O WITH MACRON
+014E,DISALLOWED,LATIN CAPITAL LETTER O WITH BREVE
+014F,PVALID,LATIN SMALL LETTER O WITH BREVE
+0150,DISALLOWED,LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
+0151,PVALID,LATIN SMALL LETTER O WITH DOUBLE ACUTE
+0152,DISALLOWED,LATIN CAPITAL LIGATURE OE
+0153,PVALID,LATIN SMALL LIGATURE OE
+0154,DISALLOWED,LATIN CAPITAL LETTER R WITH ACUTE
+0155,PVALID,LATIN SMALL LETTER R WITH ACUTE
+0156,DISALLOWED,LATIN CAPITAL LETTER R WITH CEDILLA
+0157,PVALID,LATIN SMALL LETTER R WITH CEDILLA
+0158,DISALLOWED,LATIN CAPITAL LETTER R WITH CARON
+0159,PVALID,LATIN SMALL LETTER R WITH CARON
+015A,DISALLOWED,LATIN CAPITAL LETTER S WITH ACUTE
+015B,PVALID,LATIN SMALL LETTER S WITH ACUTE
+015C,DISALLOWED,LATIN CAPITAL LETTER S WITH CIRCUMFLEX
+015D,PVALID,LATIN SMALL LETTER S WITH CIRCUMFLEX
+015E,DISALLOWED,LATIN CAPITAL LETTER S WITH CEDILLA
+015F,PVALID,LATIN SMALL LETTER S WITH CEDILLA
+0160,DISALLOWED,LATIN CAPITAL LETTER S WITH CARON
+0161,PVALID,LATIN SMALL LETTER S WITH CARON
+0162,DISALLOWED,LATIN CAPITAL LETTER T WITH CEDILLA
+0163,PVALID,LATIN SMALL LETTER T WITH CEDILLA
+0164,DISALLOWED,LATIN CAPITAL LETTER T WITH CARON
+0165,PVALID,LATIN SMALL LETTER T WITH CARON
+0166,DISALLOWED,LATIN CAPITAL LETTER T WITH STROKE
+0167,PVALID,LATIN SMALL LETTER T WITH STROKE
+0168,DISALLOWED,LATIN CAPITAL LETTER U WITH TILDE
+0169,PVALID,LATIN SMALL LETTER U WITH TILDE
+016A,DISALLOWED,LATIN CAPITAL LETTER U WITH MACRON
+016B,PVALID,LATIN SMALL LETTER U WITH MACRON
+016C,DISALLOWED,LATIN CAPITAL LETTER U WITH BREVE
+016D,PVALID,LATIN SMALL LETTER U WITH BREVE
+016E,DISALLOWED,LATIN CAPITAL LETTER U WITH RING ABOVE
+016F,PVALID,LATIN SMALL LETTER U WITH RING ABOVE
+0170,DISALLOWED,LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
+0171,PVALID,LATIN SMALL LETTER U WITH DOUBLE ACUTE
+0172,DISALLOWED,LATIN CAPITAL LETTER U WITH OGONEK
+0173,PVALID,LATIN SMALL LETTER U WITH OGONEK
+0174,DISALLOWED,LATIN CAPITAL LETTER W WITH CIRCUMFLEX
+0175,PVALID,LATIN SMALL LETTER W WITH CIRCUMFLEX
+0176,DISALLOWED,LATIN CAPITAL LETTER Y WITH CIRCUMFLEX
+0177,PVALID,LATIN SMALL LETTER Y WITH CIRCUMFLEX
+0178-0179,DISALLOWED,LATIN CAPITAL LETTER Y WITH DIAERESIS..LATIN CAPITAL LETTER Z WITH ACUTE
+017A,PVALID,LATIN SMALL LETTER Z WITH ACUTE
+017B,DISALLOWED,LATIN CAPITAL LETTER Z WITH DOT ABOVE
+017C,PVALID,LATIN SMALL LETTER Z WITH DOT ABOVE
+017D,DISALLOWED,LATIN CAPITAL LETTER Z WITH CARON
+017E,PVALID,LATIN SMALL LETTER Z WITH CARON
+017F,DISALLOWED,LATIN SMALL LETTER LONG S
+0180,PVALID,LATIN SMALL LETTER B WITH STROKE
+0181-0182,DISALLOWED,LATIN CAPITAL LETTER B WITH HOOK..LATIN CAPITAL LETTER B WITH TOPBAR
+0183,PVALID,LATIN SMALL LETTER B WITH TOPBAR
+0184,DISALLOWED,LATIN CAPITAL LETTER TONE SIX
+0185,PVALID,LATIN SMALL LETTER TONE SIX
+0186-0187,DISALLOWED,LATIN CAPITAL LETTER OPEN O..LATIN CAPITAL LETTER C WITH HOOK
+0188,PVALID,LATIN SMALL LETTER C WITH HOOK
+0189-018B,DISALLOWED,LATIN CAPITAL LETTER AFRICAN D..LATIN CAPITAL LETTER D WITH TOPBAR
+018C-018D,PVALID,LATIN SMALL LETTER D WITH TOPBAR..LATIN SMALL LETTER TURNED DELTA
+018E-0191,DISALLOWED,LATIN CAPITAL LETTER REVERSED E..LATIN CAPITAL LETTER F WITH HOOK
+0192,PVALID,LATIN SMALL LETTER F WITH HOOK
+0193-0194,DISALLOWED,LATIN CAPITAL LETTER G WITH HOOK..LATIN CAPITAL LETTER GAMMA
+0195,PVALID,LATIN SMALL LETTER HV
+0196-0198,DISALLOWED,LATIN CAPITAL LETTER IOTA..LATIN CAPITAL LETTER K WITH HOOK
+0199-019B,PVALID,LATIN SMALL LETTER K WITH HOOK..LATIN SMALL LETTER LAMBDA WITH STROKE
+019C-019D,DISALLOWED,LATIN CAPITAL LETTER TURNED M..LATIN CAPITAL LETTER N WITH LEFT HOOK
+019E,PVALID,LATIN SMALL LETTER N WITH LONG RIGHT LEG
+019F-01A0,DISALLOWED,LATIN CAPITAL LETTER O WITH MIDDLE TILDE..LATIN CAPITAL LETTER O WITH HORN
+01A1,PVALID,LATIN SMALL LETTER O WITH HORN
+01A2,DISALLOWED,LATIN CAPITAL LETTER OI
+01A3,PVALID,LATIN SMALL LETTER OI
+01A4,DISALLOWED,LATIN CAPITAL LETTER P WITH HOOK
+01A5,PVALID,LATIN SMALL LETTER P WITH HOOK
+01A6-01A7,DISALLOWED,LATIN LETTER YR..LATIN CAPITAL LETTER TONE TWO
+01A8,PVALID,LATIN SMALL LETTER TONE TWO
+01A9,DISALLOWED,LATIN CAPITAL LETTER ESH
+01AA-01AB,PVALID,LATIN LETTER REVERSED ESH LOOP..LATIN SMALL LETTER T WITH PALATAL HOOK
+01AC,DISALLOWED,LATIN CAPITAL LETTER T WITH HOOK
+01AD,PVALID,LATIN SMALL LETTER T WITH HOOK
+01AE-01AF,DISALLOWED,LATIN CAPITAL LETTER T WITH RETROFLEX HOOK..LATIN CAPITAL LETTER U WITH HORN
+01B0,PVALID,LATIN SMALL LETTER U WITH HORN
+01B1-01B3,DISALLOWED,LATIN CAPITAL LETTER UPSILON..LATIN CAPITAL LETTER Y WITH HOOK
+01B4,PVALID,LATIN SMALL LETTER Y WITH HOOK
+01B5,DISALLOWED,LATIN CAPITAL LETTER Z WITH STROKE
+01B6,PVALID,LATIN SMALL LETTER Z WITH STROKE
+01B7-01B8,DISALLOWED,LATIN CAPITAL LETTER EZH..LATIN CAPITAL LETTER EZH REVERSED
+01B9-01BB,PVALID,LATIN SMALL LETTER EZH REVERSED..LATIN LETTER TWO WITH STROKE
+01BC,DISALLOWED,LATIN CAPITAL LETTER TONE FIVE
+01BD-01C3,PVALID,LATIN SMALL LETTER TONE FIVE..LATIN LETTER RETROFLEX CLICK
+01C4-01CD,DISALLOWED,LATIN CAPITAL LETTER DZ WITH CARON..LATIN CAPITAL LETTER A WITH CARON
+01CE,PVALID,LATIN SMALL LETTER A WITH CARON
+01CF,DISALLOWED,LATIN CAPITAL LETTER I WITH CARON
+01D0,PVALID,LATIN SMALL LETTER I WITH CARON
+01D1,DISALLOWED,LATIN CAPITAL LETTER O WITH CARON
+01D2,PVALID,LATIN SMALL LETTER O WITH CARON
+01D3,DISALLOWED,LATIN CAPITAL LETTER U WITH CARON
+01D4,PVALID,LATIN SMALL LETTER U WITH CARON
+01D5,DISALLOWED,LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON
+01D6,PVALID,LATIN SMALL LETTER U WITH DIAERESIS AND MACRON
+01D7,DISALLOWED,LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE
+01D8,PVALID,LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE
+01D9,DISALLOWED,LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON
+01DA,PVALID,LATIN SMALL LETTER U WITH DIAERESIS AND CARON
+01DB,DISALLOWED,LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE
+01DC-01DD,PVALID,LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE..LATIN SMALL LETTER TURNED E
+01DE,DISALLOWED,LATIN CAPITAL LETTER A WITH DIAERESIS AND MACRON
+01DF,PVALID,LATIN SMALL LETTER A WITH DIAERESIS AND MACRON
+01E0,DISALLOWED,LATIN CAPITAL LETTER A WITH DOT ABOVE AND MACRON
+01E1,PVALID,LATIN SMALL LETTER A WITH DOT ABOVE AND MACRON
+01E2,DISALLOWED,LATIN CAPITAL LETTER AE WITH MACRON
+01E3,PVALID,LATIN SMALL LETTER AE WITH MACRON
+01E4,DISALLOWED,LATIN CAPITAL LETTER G WITH STROKE
+01E5,PVALID,LATIN SMALL LETTER G WITH STROKE
+01E6,DISALLOWED,LATIN CAPITAL LETTER G WITH CARON
+01E7,PVALID,LATIN SMALL LETTER G WITH CARON
+01E8,DISALLOWED,LATIN CAPITAL LETTER K WITH CARON
+01E9,PVALID,LATIN SMALL LETTER K WITH CARON
+01EA,DISALLOWED,LATIN CAPITAL LETTER O WITH OGONEK
+01EB,PVALID,LATIN SMALL LETTER O WITH OGONEK
+01EC,DISALLOWED,LATIN CAPITAL LETTER O WITH OGONEK AND MACRON
+01ED,PVALID,LATIN SMALL LETTER O WITH OGONEK AND MACRON
+01EE,DISALLOWED,LATIN CAPITAL LETTER EZH WITH CARON
+01EF-01F0,PVALID,LATIN SMALL LETTER EZH WITH CARON..LATIN SMALL LETTER J WITH CARON
+01F1-01F4,DISALLOWED,LATIN CAPITAL LETTER DZ..LATIN CAPITAL LETTER G WITH ACUTE
+01F5,PVALID,LATIN SMALL LETTER G WITH ACUTE
+01F6-01F8,DISALLOWED,LATIN CAPITAL LETTER HWAIR..LATIN CAPITAL LETTER N WITH GRAVE
+01F9,PVALID,LATIN SMALL LETTER N WITH GRAVE
+01FA,DISALLOWED,LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE
+01FB,PVALID,LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE
+01FC,DISALLOWED,LATIN CAPITAL LETTER AE WITH ACUTE
+01FD,PVALID,LATIN SMALL LETTER AE WITH ACUTE
+01FE,DISALLOWED,LATIN CAPITAL LETTER O WITH STROKE AND ACUTE
+01FF,PVALID,LATIN SMALL LETTER O WITH STROKE AND ACUTE
+0200,DISALLOWED,LATIN CAPITAL LETTER A WITH DOUBLE GRAVE
+0201,PVALID,LATIN SMALL LETTER A WITH DOUBLE GRAVE
+0202,DISALLOWED,LATIN CAPITAL LETTER A WITH INVERTED BREVE
+0203,PVALID,LATIN SMALL LETTER A WITH INVERTED BREVE
+0204,DISALLOWED,LATIN CAPITAL LETTER E WITH DOUBLE GRAVE
+0205,PVALID,LATIN SMALL LETTER E WITH DOUBLE GRAVE
+0206,DISALLOWED,LATIN CAPITAL LETTER E WITH INVERTED BREVE
+0207,PVALID,LATIN SMALL LETTER E WITH INVERTED BREVE
+0208,DISALLOWED,LATIN CAPITAL LETTER I WITH DOUBLE GRAVE
+0209,PVALID,LATIN SMALL LETTER I WITH DOUBLE GRAVE
+020A,DISALLOWED,LATIN CAPITAL LETTER I WITH INVERTED BREVE
+020B,PVALID,LATIN SMALL LETTER I WITH INVERTED BREVE
+020C,DISALLOWED,LATIN CAPITAL LETTER O WITH DOUBLE GRAVE
+020D,PVALID,LATIN SMALL LETTER O WITH DOUBLE GRAVE
+020E,DISALLOWED,LATIN CAPITAL LETTER O WITH INVERTED BREVE
+020F,PVALID,LATIN SMALL LETTER O WITH INVERTED BREVE
+0210,DISALLOWED,LATIN CAPITAL LETTER R WITH DOUBLE GRAVE
+0211,PVALID,LATIN SMALL LETTER R WITH DOUBLE GRAVE
+0212,DISALLOWED,LATIN CAPITAL LETTER R WITH INVERTED BREVE
+0213,PVALID,LATIN SMALL LETTER R WITH INVERTED BREVE
+0214,DISALLOWED,LATIN CAPITAL LETTER U WITH DOUBLE GRAVE
+0215,PVALID,LATIN SMALL LETTER U WITH DOUBLE GRAVE
+0216,DISALLOWED,LATIN CAPITAL LETTER U WITH INVERTED BREVE
+0217,PVALID,LATIN SMALL LETTER U WITH INVERTED BREVE
+0218,DISALLOWED,LATIN CAPITAL LETTER S WITH COMMA BELOW
+0219,PVALID,LATIN SMALL LETTER S WITH COMMA BELOW
+021A,DISALLOWED,LATIN CAPITAL LETTER T WITH COMMA BELOW
+021B,PVALID,LATIN SMALL LETTER T WITH COMMA BELOW
+021C,DISALLOWED,LATIN CAPITAL LETTER YOGH
+021D,PVALID,LATIN SMALL LETTER YOGH
+021E,DISALLOWED,LATIN CAPITAL LETTER H WITH CARON
+021F,PVALID,LATIN SMALL LETTER H WITH CARON
+0220,DISALLOWED,LATIN CAPITAL LETTER N WITH LONG RIGHT LEG
+0221,PVALID,LATIN SMALL LETTER D WITH CURL
+0222,DISALLOWED,LATIN CAPITAL LETTER OU
+0223,PVALID,LATIN SMALL LETTER OU
+0224,DISALLOWED,LATIN CAPITAL LETTER Z WITH HOOK
+0225,PVALID,LATIN SMALL LETTER Z WITH HOOK
+0226,DISALLOWED,LATIN CAPITAL LETTER A WITH DOT ABOVE
+0227,PVALID,LATIN SMALL LETTER A WITH DOT ABOVE
+0228,DISALLOWED,LATIN CAPITAL LETTER E WITH CEDILLA
+0229,PVALID,LATIN SMALL LETTER E WITH CEDILLA
+022A,DISALLOWED,LATIN CAPITAL LETTER O WITH DIAERESIS AND MACRON
+022B,PVALID,LATIN SMALL LETTER O WITH DIAERESIS AND MACRON
+022C,DISALLOWED,LATIN CAPITAL LETTER O WITH TILDE AND MACRON
+022D,PVALID,LATIN SMALL LETTER O WITH TILDE AND MACRON
+022E,DISALLOWED,LATIN CAPITAL LETTER O WITH DOT ABOVE
+022F,PVALID,LATIN SMALL LETTER O WITH DOT ABOVE
+0230,DISALLOWED,LATIN CAPITAL LETTER O WITH DOT ABOVE AND MACRON
+0231,PVALID,LATIN SMALL LETTER O WITH DOT ABOVE AND MACRON
+0232,DISALLOWED,LATIN CAPITAL LETTER Y WITH MACRON
+0233-0239,PVALID,LATIN SMALL LETTER Y WITH MACRON..LATIN SMALL LETTER QP DIGRAPH
+023A-023B,DISALLOWED,LATIN CAPITAL LETTER A WITH STROKE..LATIN CAPITAL LETTER C WITH STROKE
+023C,PVALID,LATIN SMALL LETTER C WITH STROKE
+023D-023E,DISALLOWED,LATIN CAPITAL LETTER L WITH BAR..LATIN CAPITAL LETTER T WITH DIAGONAL STROKE
+023F-0240,PVALID,LATIN SMALL LETTER S WITH SWASH TAIL..LATIN SMALL LETTER Z WITH SWASH TAIL
+0241,DISALLOWED,LATIN CAPITAL LETTER GLOTTAL STOP
+0242,PVALID,LATIN SMALL LETTER GLOTTAL STOP
+0243-0246,DISALLOWED,LATIN CAPITAL LETTER B WITH STROKE..LATIN CAPITAL LETTER E WITH STROKE
+0247,PVALID,LATIN SMALL LETTER E WITH STROKE
+0248,DISALLOWED,LATIN CAPITAL LETTER J WITH STROKE
+0249,PVALID,LATIN SMALL LETTER J WITH STROKE
+024A,DISALLOWED,LATIN CAPITAL LETTER SMALL Q WITH HOOK TAIL
+024B,PVALID,LATIN SMALL LETTER Q WITH HOOK TAIL
+024C,DISALLOWED,LATIN CAPITAL LETTER R WITH STROKE
+024D,PVALID,LATIN SMALL LETTER R WITH STROKE
+024E,DISALLOWED,LATIN CAPITAL LETTER Y WITH STROKE
+024F-02AF,PVALID,LATIN SMALL LETTER Y WITH STROKE..LATIN SMALL LETTER TURNED H WITH FISHHOOK AND TAIL
+02B0-02B8,DISALLOWED,MODIFIER LETTER SMALL H..MODIFIER LETTER SMALL Y
+02B9-02C1,PVALID,MODIFIER LETTER PRIME..MODIFIER LETTER REVERSED GLOTTAL STOP
+02C2-02C5,DISALLOWED,MODIFIER LETTER LEFT ARROWHEAD..MODIFIER LETTER DOWN ARROWHEAD
+02C6-02D1,PVALID,MODIFIER LETTER CIRCUMFLEX ACCENT..MODIFIER LETTER HALF TRIANGULAR COLON
+02D2-02EB,DISALLOWED,MODIFIER LETTER CENTRED RIGHT HALF RING..MODIFIER LETTER YANG DEPARTING TONE MARK
+02EC,PVALID,MODIFIER LETTER VOICING
+02ED,DISALLOWED,MODIFIER LETTER UNASPIRATED
+02EE,PVALID,MODIFIER LETTER DOUBLE APOSTROPHE
+02EF-02FF,DISALLOWED,MODIFIER LETTER LOW DOWN ARROWHEAD..MODIFIER LETTER LOW LEFT ARROW
+0300-033F,PVALID,COMBINING GRAVE ACCENT..COMBINING DOUBLE OVERLINE
+0340-0341,DISALLOWED,COMBINING GRAVE TONE MARK..COMBINING ACUTE TONE MARK
+0342,PVALID,COMBINING GREEK PERISPOMENI
+0343-0345,DISALLOWED,COMBINING GREEK KORONIS..COMBINING GREEK YPOGEGRAMMENI
+0346-034E,PVALID,COMBINING BRIDGE ABOVE..COMBINING UPWARDS ARROW BELOW
+034F,DISALLOWED,COMBINING GRAPHEME JOINER
+0350-036F,PVALID,COMBINING RIGHT ARROWHEAD ABOVE..COMBINING LATIN SMALL LETTER X
+0370,DISALLOWED,GREEK CAPITAL LETTER HETA
+0371,PVALID,GREEK SMALL LETTER HETA
+0372,DISALLOWED,GREEK CAPITAL LETTER ARCHAIC SAMPI
+0373,PVALID,GREEK SMALL LETTER ARCHAIC SAMPI
+0374,DISALLOWED,GREEK NUMERAL SIGN
+0375,CONTEXTO,GREEK LOWER NUMERAL SIGN
+0376,DISALLOWED,GREEK CAPITAL LETTER PAMPHYLIAN DIGAMMA
+0377,PVALID,GREEK SMALL LETTER PAMPHYLIAN DIGAMMA
+0378-0379,UNASSIGNED,<RESERVED>..<RESERVED>
+037A,DISALLOWED,GREEK YPOGEGRAMMENI
+037B-037D,PVALID,GREEK SMALL REVERSED LUNATE SIGMA SYMBOL..GREEK SMALL REVERSED DOTTED LUNATE SIGMA SYMBOL
+037E,DISALLOWED,GREEK QUESTION MARK
+037F-0383,UNASSIGNED,<RESERVED>..<RESERVED>
+0384-038A,DISALLOWED,GREEK TONOS..GREEK CAPITAL LETTER IOTA WITH TONOS
+038B,UNASSIGNED,<RESERVED>
+038C,DISALLOWED,GREEK CAPITAL LETTER OMICRON WITH TONOS
+038D,UNASSIGNED,<RESERVED>
+038E-038F,DISALLOWED,GREEK CAPITAL LETTER UPSILON WITH TONOS..GREEK CAPITAL LETTER OMEGA WITH TONOS
+0390,PVALID,GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
+0391-03A1,DISALLOWED,GREEK CAPITAL LETTER ALPHA..GREEK CAPITAL LETTER RHO
+03A2,UNASSIGNED,<RESERVED>
+03A3-03AB,DISALLOWED,GREEK CAPITAL LETTER SIGMA..GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
+03AC-03CE,PVALID,GREEK SMALL LETTER ALPHA WITH TONOS..GREEK SMALL LETTER OMEGA WITH TONOS
+03CF-03D6,DISALLOWED,GREEK CAPITAL KAI SYMBOL..GREEK PI SYMBOL
+03D7,PVALID,GREEK KAI SYMBOL
+03D8,DISALLOWED,GREEK LETTER ARCHAIC KOPPA
+03D9,PVALID,GREEK SMALL LETTER ARCHAIC KOPPA
+03DA,DISALLOWED,GREEK LETTER STIGMA
+03DB,PVALID,GREEK SMALL LETTER STIGMA
+03DC,DISALLOWED,GREEK LETTER DIGAMMA
+03DD,PVALID,GREEK SMALL LETTER DIGAMMA
+03DE,DISALLOWED,GREEK LETTER KOPPA
+03DF,PVALID,GREEK SMALL LETTER KOPPA
+03E0,DISALLOWED,GREEK LETTER SAMPI
+03E1,PVALID,GREEK SMALL LETTER SAMPI
+03E2,DISALLOWED,COPTIC CAPITAL LETTER SHEI
+03E3,PVALID,COPTIC SMALL LETTER SHEI
+03E4,DISALLOWED,COPTIC CAPITAL LETTER FEI
+03E5,PVALID,COPTIC SMALL LETTER FEI
+03E6,DISALLOWED,COPTIC CAPITAL LETTER KHEI
+03E7,PVALID,COPTIC SMALL LETTER KHEI
+03E8,DISALLOWED,COPTIC CAPITAL LETTER HORI
+03E9,PVALID,COPTIC SMALL LETTER HORI
+03EA,DISALLOWED,COPTIC CAPITAL LETTER GANGIA
+03EB,PVALID,COPTIC SMALL LETTER GANGIA
+03EC,DISALLOWED,COPTIC CAPITAL LETTER SHIMA
+03ED,PVALID,COPTIC SMALL LETTER SHIMA
+03EE,DISALLOWED,COPTIC CAPITAL LETTER DEI
+03EF,PVALID,COPTIC SMALL LETTER DEI
+03F0-03F2,DISALLOWED,GREEK KAPPA SYMBOL..GREEK LUNATE SIGMA SYMBOL
+03F3,PVALID,GREEK LETTER YOT
+03F4-03F7,DISALLOWED,GREEK CAPITAL THETA SYMBOL..GREEK CAPITAL LETTER SHO
+03F8,PVALID,GREEK SMALL LETTER SHO
+03F9-03FA,DISALLOWED,GREEK CAPITAL LUNATE SIGMA SYMBOL..GREEK CAPITAL LETTER SAN
+03FB-03FC,PVALID,GREEK SMALL LETTER SAN..GREEK RHO WITH STROKE SYMBOL
+03FD-042F,DISALLOWED,GREEK CAPITAL REVERSED LUNATE SIGMA SYMBOL..CYRILLIC CAPITAL LETTER YA
+0430-045F,PVALID,CYRILLIC SMALL LETTER A..CYRILLIC SMALL LETTER DZHE
+0460,DISALLOWED,CYRILLIC CAPITAL LETTER OMEGA
+0461,PVALID,CYRILLIC SMALL LETTER OMEGA
+0462,DISALLOWED,CYRILLIC CAPITAL LETTER YAT
+0463,PVALID,CYRILLIC SMALL LETTER YAT
+0464,DISALLOWED,CYRILLIC CAPITAL LETTER IOTIFIED E
+0465,PVALID,CYRILLIC SMALL LETTER IOTIFIED E
+0466,DISALLOWED,CYRILLIC CAPITAL LETTER LITTLE YUS
+0467,PVALID,CYRILLIC SMALL LETTER LITTLE YUS
+0468,DISALLOWED,CYRILLIC CAPITAL LETTER IOTIFIED LITTLE YUS
+0469,PVALID,CYRILLIC SMALL LETTER IOTIFIED LITTLE YUS
+046A,DISALLOWED,CYRILLIC CAPITAL LETTER BIG YUS
+046B,PVALID,CYRILLIC SMALL LETTER BIG YUS
+046C,DISALLOWED,CYRILLIC CAPITAL LETTER IOTIFIED BIG YUS
+046D,PVALID,CYRILLIC SMALL LETTER IOTIFIED BIG YUS
+046E,DISALLOWED,CYRILLIC CAPITAL LETTER KSI
+046F,PVALID,CYRILLIC SMALL LETTER KSI
+0470,DISALLOWED,CYRILLIC CAPITAL LETTER PSI
+0471,PVALID,CYRILLIC SMALL LETTER PSI
+0472,DISALLOWED,CYRILLIC CAPITAL LETTER FITA
+0473,PVALID,CYRILLIC SMALL LETTER FITA
+0474,DISALLOWED,CYRILLIC CAPITAL LETTER IZHITSA
+0475,PVALID,CYRILLIC SMALL LETTER IZHITSA
+0476,DISALLOWED,CYRILLIC CAPITAL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT
+0477,PVALID,CYRILLIC SMALL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT
+0478,DISALLOWED,CYRILLIC CAPITAL LETTER UK
+0479,PVALID,CYRILLIC SMALL LETTER UK
+047A,DISALLOWED,CYRILLIC CAPITAL LETTER ROUND OMEGA
+047B,PVALID,CYRILLIC SMALL LETTER ROUND OMEGA
+047C,DISALLOWED,CYRILLIC CAPITAL LETTER OMEGA WITH TITLO
+047D,PVALID,CYRILLIC SMALL LETTER OMEGA WITH TITLO
+047E,DISALLOWED,CYRILLIC CAPITAL LETTER OT
+047F,PVALID,CYRILLIC SMALL LETTER OT
+0480,DISALLOWED,CYRILLIC CAPITAL LETTER KOPPA
+0481,PVALID,CYRILLIC SMALL LETTER KOPPA
+0482,DISALLOWED,CYRILLIC THOUSANDS SIGN
+0483-0487,PVALID,COMBINING CYRILLIC TITLO..COMBINING CYRILLIC POKRYTIE
+0488-048A,DISALLOWED,COMBINING CYRILLIC HUNDRED THOUSANDS SIGN..CYRILLIC CAPITAL LETTER SHORT I WITH TAIL
+048B,PVALID,CYRILLIC SMALL LETTER SHORT I WITH TAIL
+048C,DISALLOWED,CYRILLIC CAPITAL LETTER SEMISOFT SIGN
+048D,PVALID,CYRILLIC SMALL LETTER SEMISOFT SIGN
+048E,DISALLOWED,CYRILLIC CAPITAL LETTER ER WITH TICK
+048F,PVALID,CYRILLIC SMALL LETTER ER WITH TICK
+0490,DISALLOWED,CYRILLIC CAPITAL LETTER GHE WITH UPTURN
+0491,PVALID,CYRILLIC SMALL LETTER GHE WITH UPTURN
+0492,DISALLOWED,CYRILLIC CAPITAL LETTER GHE WITH STROKE
+0493,PVALID,CYRILLIC SMALL LETTER GHE WITH STROKE
+0494,DISALLOWED,CYRILLIC CAPITAL LETTER GHE WITH MIDDLE HOOK
+0495,PVALID,CYRILLIC SMALL LETTER GHE WITH MIDDLE HOOK
+0496,DISALLOWED,CYRILLIC CAPITAL LETTER ZHE WITH DESCENDER
+0497,PVALID,CYRILLIC SMALL LETTER ZHE WITH DESCENDER
+0498,DISALLOWED,CYRILLIC CAPITAL LETTER ZE WITH DESCENDER
+0499,PVALID,CYRILLIC SMALL LETTER ZE WITH DESCENDER
+049A,DISALLOWED,CYRILLIC CAPITAL LETTER KA WITH DESCENDER
+049B,PVALID,CYRILLIC SMALL LETTER KA WITH DESCENDER
+049C,DISALLOWED,CYRILLIC CAPITAL LETTER KA WITH VERTICAL STROKE
+049D,PVALID,CYRILLIC SMALL LETTER KA WITH VERTICAL STROKE
+049E,DISALLOWED,CYRILLIC CAPITAL LETTER KA WITH STROKE
+049F,PVALID,CYRILLIC SMALL LETTER KA WITH STROKE
+04A0,DISALLOWED,CYRILLIC CAPITAL LETTER BASHKIR KA
+04A1,PVALID,CYRILLIC SMALL LETTER BASHKIR KA
+04A2,DISALLOWED,CYRILLIC CAPITAL LETTER EN WITH DESCENDER
+04A3,PVALID,CYRILLIC SMALL LETTER EN WITH DESCENDER
+04A4,DISALLOWED,CYRILLIC CAPITAL LIGATURE EN GHE
+04A5,PVALID,CYRILLIC SMALL LIGATURE EN GHE
+04A6,DISALLOWED,CYRILLIC CAPITAL LETTER PE WITH MIDDLE HOOK
+04A7,PVALID,CYRILLIC SMALL LETTER PE WITH MIDDLE HOOK
+04A8,DISALLOWED,CYRILLIC CAPITAL LETTER ABKHASIAN HA
+04A9,PVALID,CYRILLIC SMALL LETTER ABKHASIAN HA
+04AA,DISALLOWED,CYRILLIC CAPITAL LETTER ES WITH DESCENDER
+04AB,PVALID,CYRILLIC SMALL LETTER ES WITH DESCENDER
+04AC,DISALLOWED,CYRILLIC CAPITAL LETTER TE WITH DESCENDER
+04AD,PVALID,CYRILLIC SMALL LETTER TE WITH DESCENDER
+04AE,DISALLOWED,CYRILLIC CAPITAL LETTER STRAIGHT U
+04AF,PVALID,CYRILLIC SMALL LETTER STRAIGHT U
+04B0,DISALLOWED,CYRILLIC CAPITAL LETTER STRAIGHT U WITH STROKE
+04B1,PVALID,CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE
+04B2,DISALLOWED,CYRILLIC CAPITAL LETTER HA WITH DESCENDER
+04B3,PVALID,CYRILLIC SMALL LETTER HA WITH DESCENDER
+04B4,DISALLOWED,CYRILLIC CAPITAL LIGATURE TE TSE
+04B5,PVALID,CYRILLIC SMALL LIGATURE TE TSE
+04B6,DISALLOWED,CYRILLIC CAPITAL LETTER CHE WITH DESCENDER
+04B7,PVALID,CYRILLIC SMALL LETTER CHE WITH DESCENDER
+04B8,DISALLOWED,CYRILLIC CAPITAL LETTER CHE WITH VERTICAL STROKE
+04B9,PVALID,CYRILLIC SMALL LETTER CHE WITH VERTICAL STROKE
+04BA,DISALLOWED,CYRILLIC CAPITAL LETTER SHHA
+04BB,PVALID,CYRILLIC SMALL LETTER SHHA
+04BC,DISALLOWED,CYRILLIC CAPITAL LETTER ABKHASIAN CHE
+04BD,PVALID,CYRILLIC SMALL LETTER ABKHASIAN CHE
+04BE,DISALLOWED,CYRILLIC CAPITAL LETTER ABKHASIAN CHE WITH DESCENDER
+04BF,PVALID,CYRILLIC SMALL LETTER ABKHASIAN CHE WITH DESCENDER
+04C0-04C1,DISALLOWED,CYRILLIC LETTER PALOCHKA..CYRILLIC CAPITAL LETTER ZHE WITH BREVE
+04C2,PVALID,CYRILLIC SMALL LETTER ZHE WITH BREVE
+04C3,DISALLOWED,CYRILLIC CAPITAL LETTER KA WITH HOOK
+04C4,PVALID,CYRILLIC SMALL LETTER KA WITH HOOK
+04C5,DISALLOWED,CYRILLIC CAPITAL LETTER EL WITH TAIL
+04C6,PVALID,CYRILLIC SMALL LETTER EL WITH TAIL
+04C7,DISALLOWED,CYRILLIC CAPITAL LETTER EN WITH HOOK
+04C8,PVALID,CYRILLIC SMALL LETTER EN WITH HOOK
+04C9,DISALLOWED,CYRILLIC CAPITAL LETTER EN WITH TAIL
+04CA,PVALID,CYRILLIC SMALL LETTER EN WITH TAIL
+04CB,DISALLOWED,CYRILLIC CAPITAL LETTER KHAKASSIAN CHE
+04CC,PVALID,CYRILLIC SMALL LETTER KHAKASSIAN CHE
+04CD,DISALLOWED,CYRILLIC CAPITAL LETTER EM WITH TAIL
+04CE-04CF,PVALID,CYRILLIC SMALL LETTER EM WITH TAIL..CYRILLIC SMALL LETTER PALOCHKA
+04D0,DISALLOWED,CYRILLIC CAPITAL LETTER A WITH BREVE
+04D1,PVALID,CYRILLIC SMALL LETTER A WITH BREVE
+04D2,DISALLOWED,CYRILLIC CAPITAL LETTER A WITH DIAERESIS
+04D3,PVALID,CYRILLIC SMALL LETTER A WITH DIAERESIS
+04D4,DISALLOWED,CYRILLIC CAPITAL LIGATURE A IE
+04D5,PVALID,CYRILLIC SMALL LIGATURE A IE
+04D6,DISALLOWED,CYRILLIC CAPITAL LETTER IE WITH BREVE
+04D7,PVALID,CYRILLIC SMALL LETTER IE WITH BREVE
+04D8,DISALLOWED,CYRILLIC CAPITAL LETTER SCHWA
+04D9,PVALID,CYRILLIC SMALL LETTER SCHWA
+04DA,DISALLOWED,CYRILLIC CAPITAL LETTER SCHWA WITH DIAERESIS
+04DB,PVALID,CYRILLIC SMALL LETTER SCHWA WITH DIAERESIS
+04DC,DISALLOWED,CYRILLIC CAPITAL LETTER ZHE WITH DIAERESIS
+04DD,PVALID,CYRILLIC SMALL LETTER ZHE WITH DIAERESIS
+04DE,DISALLOWED,CYRILLIC CAPITAL LETTER ZE WITH DIAERESIS
+04DF,PVALID,CYRILLIC SMALL LETTER ZE WITH DIAERESIS
+04E0,DISALLOWED,CYRILLIC CAPITAL LETTER ABKHASIAN DZE
+04E1,PVALID,CYRILLIC SMALL LETTER ABKHASIAN DZE
+04E2,DISALLOWED,CYRILLIC CAPITAL LETTER I WITH MACRON
+04E3,PVALID,CYRILLIC SMALL LETTER I WITH MACRON
+04E4,DISALLOWED,CYRILLIC CAPITAL LETTER I WITH DIAERESIS
+04E5,PVALID,CYRILLIC SMALL LETTER I WITH DIAERESIS
+04E6,DISALLOWED,CYRILLIC CAPITAL LETTER O WITH DIAERESIS
+04E7,PVALID,CYRILLIC SMALL LETTER O WITH DIAERESIS
+04E8,DISALLOWED,CYRILLIC CAPITAL LETTER BARRED O
+04E9,PVALID,CYRILLIC SMALL LETTER BARRED O
+04EA,DISALLOWED,CYRILLIC CAPITAL LETTER BARRED O WITH DIAERESIS
+04EB,PVALID,CYRILLIC SMALL LETTER BARRED O WITH DIAERESIS
+04EC,DISALLOWED,CYRILLIC CAPITAL LETTER E WITH DIAERESIS
+04ED,PVALID,CYRILLIC SMALL LETTER E WITH DIAERESIS
+04EE,DISALLOWED,CYRILLIC CAPITAL LETTER U WITH MACRON
+04EF,PVALID,CYRILLIC SMALL LETTER U WITH MACRON
+04F0,DISALLOWED,CYRILLIC CAPITAL LETTER U WITH DIAERESIS
+04F1,PVALID,CYRILLIC SMALL LETTER U WITH DIAERESIS
+04F2,DISALLOWED,CYRILLIC CAPITAL LETTER U WITH DOUBLE ACUTE
+04F3,PVALID,CYRILLIC SMALL LETTER U WITH DOUBLE ACUTE
+04F4,DISALLOWED,CYRILLIC CAPITAL LETTER CHE WITH DIAERESIS
+04F5,PVALID,CYRILLIC SMALL LETTER CHE WITH DIAERESIS
+04F6,DISALLOWED,CYRILLIC CAPITAL LETTER GHE WITH DESCENDER
+04F7,PVALID,CYRILLIC SMALL LETTER GHE WITH DESCENDER
+04F8,DISALLOWED,CYRILLIC CAPITAL LETTER YERU WITH DIAERESIS
+04F9,PVALID,CYRILLIC SMALL LETTER YERU WITH DIAERESIS
+04FA,DISALLOWED,CYRILLIC CAPITAL LETTER GHE WITH STROKE AND HOOK
+04FB,PVALID,CYRILLIC SMALL LETTER GHE WITH STROKE AND HOOK
+04FC,DISALLOWED,CYRILLIC CAPITAL LETTER HA WITH HOOK
+04FD,PVALID,CYRILLIC SMALL LETTER HA WITH HOOK
+04FE,DISALLOWED,CYRILLIC CAPITAL LETTER HA WITH STROKE
+04FF,PVALID,CYRILLIC SMALL LETTER HA WITH STROKE
+0500,DISALLOWED,CYRILLIC CAPITAL LETTER KOMI DE
+0501,PVALID,CYRILLIC SMALL LETTER KOMI DE
+0502,DISALLOWED,CYRILLIC CAPITAL LETTER KOMI DJE
+0503,PVALID,CYRILLIC SMALL LETTER KOMI DJE
+0504,DISALLOWED,CYRILLIC CAPITAL LETTER KOMI ZJE
+0505,PVALID,CYRILLIC SMALL LETTER KOMI ZJE
+0506,DISALLOWED,CYRILLIC CAPITAL LETTER KOMI DZJE
+0507,PVALID,CYRILLIC SMALL LETTER KOMI DZJE
+0508,DISALLOWED,CYRILLIC CAPITAL LETTER KOMI LJE
+0509,PVALID,CYRILLIC SMALL LETTER KOMI LJE
+050A,DISALLOWED,CYRILLIC CAPITAL LETTER KOMI NJE
+050B,PVALID,CYRILLIC SMALL LETTER KOMI NJE
+050C,DISALLOWED,CYRILLIC CAPITAL LETTER KOMI SJE
+050D,PVALID,CYRILLIC SMALL LETTER KOMI SJE
+050E,DISALLOWED,CYRILLIC CAPITAL LETTER KOMI TJE
+050F,PVALID,CYRILLIC SMALL LETTER KOMI TJE
+0510,DISALLOWED,CYRILLIC CAPITAL LETTER REVERSED ZE
+0511,PVALID,CYRILLIC SMALL LETTER REVERSED ZE
+0512,DISALLOWED,CYRILLIC CAPITAL LETTER EL WITH HOOK
+0513,PVALID,CYRILLIC SMALL LETTER EL WITH HOOK
+0514,DISALLOWED,CYRILLIC CAPITAL LETTER LHA
+0515,PVALID,CYRILLIC SMALL LETTER LHA
+0516,DISALLOWED,CYRILLIC CAPITAL LETTER RHA
+0517,PVALID,CYRILLIC SMALL LETTER RHA
+0518,DISALLOWED,CYRILLIC CAPITAL LETTER YAE
+0519,PVALID,CYRILLIC SMALL LETTER YAE
+051A,DISALLOWED,CYRILLIC CAPITAL LETTER QA
+051B,PVALID,CYRILLIC SMALL LETTER QA
+051C,DISALLOWED,CYRILLIC CAPITAL LETTER WE
+051D,PVALID,CYRILLIC SMALL LETTER WE
+051E,DISALLOWED,CYRILLIC CAPITAL LETTER ALEUT KA
+051F,PVALID,CYRILLIC SMALL LETTER ALEUT KA
+0520,DISALLOWED,CYRILLIC CAPITAL LETTER EL WITH MIDDLE HOOK
+0521,PVALID,CYRILLIC SMALL LETTER EL WITH MIDDLE HOOK
+0522,DISALLOWED,CYRILLIC CAPITAL LETTER EN WITH MIDDLE HOOK
+0523,PVALID,CYRILLIC SMALL LETTER EN WITH MIDDLE HOOK
+0524,DISALLOWED,CYRILLIC CAPITAL LETTER PE WITH DESCENDER
+0525,PVALID,CYRILLIC SMALL LETTER PE WITH DESCENDER
+0526-0530,UNASSIGNED,<RESERVED>..<RESERVED>
+0531-0556,DISALLOWED,ARMENIAN CAPITAL LETTER AYB..ARMENIAN CAPITAL LETTER FEH
+0557-0558,UNASSIGNED,<RESERVED>..<RESERVED>
+0559,PVALID,ARMENIAN MODIFIER LETTER LEFT HALF RING
+055A-055F,DISALLOWED,ARMENIAN APOSTROPHE..ARMENIAN ABBREVIATION MARK
+0560,UNASSIGNED,<RESERVED>
+0561-0586,PVALID,ARMENIAN SMALL LETTER AYB..ARMENIAN SMALL LETTER FEH
+0587,DISALLOWED,ARMENIAN SMALL LIGATURE ECH YIWN
+0588,UNASSIGNED,<RESERVED>
+0589-058A,DISALLOWED,ARMENIAN FULL STOP..ARMENIAN HYPHEN
+058B-0590,UNASSIGNED,<RESERVED>..<RESERVED>
+0591-05BD,PVALID,HEBREW ACCENT ETNAHTA..HEBREW POINT METEG
+05BE,DISALLOWED,HEBREW PUNCTUATION MAQAF
+05BF,PVALID,HEBREW POINT RAFE
+05C0,DISALLOWED,HEBREW PUNCTUATION PASEQ
+05C1-05C2,PVALID,HEBREW POINT SHIN DOT..HEBREW POINT SIN DOT
+05C3,DISALLOWED,HEBREW PUNCTUATION SOF PASUQ
+05C4-05C5,PVALID,HEBREW MARK UPPER DOT..HEBREW MARK LOWER DOT
+05C6,DISALLOWED,HEBREW PUNCTUATION NUN HAFUKHA
+05C7,PVALID,HEBREW POINT QAMATS QATAN
+05C8-05CF,UNASSIGNED,<RESERVED>..<RESERVED>
+05D0-05EA,PVALID,HEBREW LETTER ALEF..HEBREW LETTER TAV
+05EB-05EF,UNASSIGNED,<RESERVED>..<RESERVED>
+05F0-05F2,PVALID,HEBREW LIGATURE YIDDISH DOUBLE VAV..HEBREW LIGATURE YIDDISH DOUBLE YOD
+05F3-05F4,CONTEXTO,HEBREW PUNCTUATION GERESH..HEBREW PUNCTUATION GERSHAYIM
+05F5-05FF,UNASSIGNED,<RESERVED>..<RESERVED>
+0600-0603,DISALLOWED,ARABIC NUMBER SIGN..ARABIC SIGN SAFHA
+0604-0605,UNASSIGNED,<RESERVED>..<RESERVED>
+0606-060F,DISALLOWED,ARABIC-INDIC CUBE ROOT..ARABIC SIGN MISRA
+0610-061A,PVALID,ARABIC SIGN SALLALLAHOU ALAYHE WASSALLAM..ARABIC SMALL KASRA
+061B,DISALLOWED,ARABIC SEMICOLON
+061C-061D,UNASSIGNED,<RESERVED>..<RESERVED>
+061E-061F,DISALLOWED,ARABIC TRIPLE DOT PUNCTUATION MARK..ARABIC QUESTION MARK
+0620,UNASSIGNED,<RESERVED>
+0621-063F,PVALID,ARABIC LETTER HAMZA..ARABIC LETTER FARSI YEH WITH THREE DOTS ABOVE
+0640,DISALLOWED,ARABIC TATWEEL
+0641-065E,PVALID,ARABIC LETTER FEH..ARABIC FATHA WITH TWO DOTS
+065F,UNASSIGNED,<RESERVED>
+0660-0669,CONTEXTO,ARABIC-INDIC DIGIT ZERO..ARABIC-INDIC DIGIT NINE
+066A-066D,DISALLOWED,ARABIC PERCENT SIGN..ARABIC FIVE POINTED STAR
+066E-0674,PVALID,ARABIC LETTER DOTLESS BEH..ARABIC LETTER HIGH HAMZA
+0675-0678,DISALLOWED,ARABIC LETTER HIGH HAMZA ALEF..ARABIC LETTER HIGH HAMZA YEH
+0679-06D3,PVALID,ARABIC LETTER TTEH..ARABIC LETTER YEH BARREE WITH HAMZA ABOVE
+06D4,DISALLOWED,ARABIC FULL STOP
+06D5-06DC,PVALID,ARABIC LETTER AE..ARABIC SMALL HIGH SEEN
+06DD-06DE,DISALLOWED,ARABIC END OF AYAH..ARABIC START OF RUB EL HIZB
+06DF-06E8,PVALID,ARABIC SMALL HIGH ROUNDED ZERO..ARABIC SMALL HIGH NOON
+06E9,DISALLOWED,ARABIC PLACE OF SAJDAH
+06EA-06EF,PVALID,ARABIC EMPTY CENTRE LOW STOP..ARABIC LETTER REH WITH INVERTED V
+06F0-06F9,CONTEXTO,EXTENDED ARABIC-INDIC DIGIT ZERO..EXTENDED ARABIC-INDIC DIGIT NINE
+06FA-06FF,PVALID,ARABIC LETTER SHEEN WITH DOT BELOW..ARABIC LETTER HEH WITH INVERTED V
+0700-070D,DISALLOWED,SYRIAC END OF PARAGRAPH..SYRIAC HARKLEAN ASTERISCUS
+070E,UNASSIGNED,<RESERVED>
+070F,DISALLOWED,SYRIAC ABBREVIATION MARK
+0710-074A,PVALID,SYRIAC LETTER ALAPH..SYRIAC BARREKH
+074B-074C,UNASSIGNED,<RESERVED>..<RESERVED>
+074D-07B1,PVALID,SYRIAC LETTER SOGDIAN ZHAIN..THAANA LETTER NAA
+07B2-07BF,UNASSIGNED,<RESERVED>..<RESERVED>
+07C0-07F5,PVALID,NKO DIGIT ZERO..NKO LOW TONE APOSTROPHE
+07F6-07FA,DISALLOWED,NKO SYMBOL OO DENNEN..NKO LAJANYALAN
+07FB-07FF,UNASSIGNED,<RESERVED>..<RESERVED>
+0800-082D,PVALID,SAMARITAN LETTER ALAF..SAMARITAN MARK NEQUDAA
+082E-082F,UNASSIGNED,<RESERVED>..<RESERVED>
+0830-083E,DISALLOWED,SAMARITAN PUNCTUATION NEQUDAA..SAMARITAN PUNCTUATION ANNAAU
+083F-08FF,UNASSIGNED,<RESERVED>..<RESERVED>
+0900-0939,PVALID,DEVANAGARI SIGN INVERTED CANDRABINDU..DEVANAGARI LETTER HA
+093A-093B,UNASSIGNED,<RESERVED>..<RESERVED>
+093C-094E,PVALID,DEVANAGARI SIGN NUKTA..DEVANAGARI VOWEL SIGN PRISHTHAMATRA E
+094F,UNASSIGNED,<RESERVED>
+0950-0955,PVALID,DEVANAGARI OM..DEVANAGARI VOWEL SIGN CANDRA LONG E
+0956-0957,UNASSIGNED,<RESERVED>..<RESERVED>
+0958-095F,DISALLOWED,DEVANAGARI LETTER QA..DEVANAGARI LETTER YYA
+0960-0963,PVALID,DEVANAGARI LETTER VOCALIC RR..DEVANAGARI VOWEL SIGN VOCALIC LL
+0964-0965,DISALLOWED,DEVANAGARI DANDA..DEVANAGARI DOUBLE DANDA
+0966-096F,PVALID,DEVANAGARI DIGIT ZERO..DEVANAGARI DIGIT NINE
+0970,DISALLOWED,DEVANAGARI ABBREVIATION SIGN
+0971-0972,PVALID,DEVANAGARI SIGN HIGH SPACING DOT..DEVANAGARI LETTER CANDRA A
+0973-0978,UNASSIGNED,<RESERVED>..<RESERVED>
+0979-097F,PVALID,DEVANAGARI LETTER ZHA..DEVANAGARI LETTER BBA
+0980,UNASSIGNED,<RESERVED>
+0981-0983,PVALID,BENGALI SIGN CANDRABINDU..BENGALI SIGN VISARGA
+0984,UNASSIGNED,<RESERVED>
+0985-098C,PVALID,BENGALI LETTER A..BENGALI LETTER VOCALIC L
+098D-098E,UNASSIGNED,<RESERVED>..<RESERVED>
+098F-0990,PVALID,BENGALI LETTER E..BENGALI LETTER AI
+0991-0992,UNASSIGNED,<RESERVED>..<RESERVED>
+0993-09A8,PVALID,BENGALI LETTER O..BENGALI LETTER NA
+09A9,UNASSIGNED,<RESERVED>
+09AA-09B0,PVALID,BENGALI LETTER PA..BENGALI LETTER RA
+09B1,UNASSIGNED,<RESERVED>
+09B2,PVALID,BENGALI LETTER LA
+09B3-09B5,UNASSIGNED,<RESERVED>..<RESERVED>
+09B6-09B9,PVALID,BENGALI LETTER SHA..BENGALI LETTER HA
+09BA-09BB,UNASSIGNED,<RESERVED>..<RESERVED>
+09BC-09C4,PVALID,BENGALI SIGN NUKTA..BENGALI VOWEL SIGN VOCALIC RR
+09C5-09C6,UNASSIGNED,<RESERVED>..<RESERVED>
+09C7-09C8,PVALID,BENGALI VOWEL SIGN E..BENGALI VOWEL SIGN AI
+09C9-09CA,UNASSIGNED,<RESERVED>..<RESERVED>
+09CB-09CE,PVALID,BENGALI VOWEL SIGN O..BENGALI LETTER KHANDA TA
+09CF-09D6,UNASSIGNED,<RESERVED>..<RESERVED>
+09D7,PVALID,BENGALI AU LENGTH MARK
+09D8-09DB,UNASSIGNED,<RESERVED>..<RESERVED>
+09DC-09DD,DISALLOWED,BENGALI LETTER RRA..BENGALI LETTER RHA
+09DE,UNASSIGNED,<RESERVED>
+09DF,DISALLOWED,BENGALI LETTER YYA
+09E0-09E3,PVALID,BENGALI LETTER VOCALIC RR..BENGALI VOWEL SIGN VOCALIC LL
+09E4-09E5,UNASSIGNED,<RESERVED>..<RESERVED>
+09E6-09F1,PVALID,BENGALI DIGIT ZERO..BENGALI LETTER RA WITH LOWER DIAGONAL
+09F2-09FB,DISALLOWED,BENGALI RUPEE MARK..BENGALI GANDA MARK
+09FC-0A00,UNASSIGNED,<RESERVED>..<RESERVED>
+0A01-0A03,PVALID,GURMUKHI SIGN ADAK BINDI..GURMUKHI SIGN VISARGA
+0A04,UNASSIGNED,<RESERVED>
+0A05-0A0A,PVALID,GURMUKHI LETTER A..GURMUKHI LETTER UU
+0A0B-0A0E,UNASSIGNED,<RESERVED>..<RESERVED>
+0A0F-0A10,PVALID,GURMUKHI LETTER EE..GURMUKHI LETTER AI
+0A11-0A12,UNASSIGNED,<RESERVED>..<RESERVED>
+0A13-0A28,PVALID,GURMUKHI LETTER OO..GURMUKHI LETTER NA
+0A29,UNASSIGNED,<RESERVED>
+0A2A-0A30,PVALID,GURMUKHI LETTER PA..GURMUKHI LETTER RA
+0A31,UNASSIGNED,<RESERVED>
+0A32,PVALID,GURMUKHI LETTER LA
+0A33,DISALLOWED,GURMUKHI LETTER LLA
+0A34,UNASSIGNED,<RESERVED>
+0A35,PVALID,GURMUKHI LETTER VA
+0A36,DISALLOWED,GURMUKHI LETTER SHA
+0A37,UNASSIGNED,<RESERVED>
+0A38-0A39,PVALID,GURMUKHI LETTER SA..GURMUKHI LETTER HA
+0A3A-0A3B,UNASSIGNED,<RESERVED>..<RESERVED>
+0A3C,PVALID,GURMUKHI SIGN NUKTA
+0A3D,UNASSIGNED,<RESERVED>
+0A3E-0A42,PVALID,GURMUKHI VOWEL SIGN AA..GURMUKHI VOWEL SIGN UU
+0A43-0A46,UNASSIGNED,<RESERVED>..<RESERVED>
+0A47-0A48,PVALID,GURMUKHI VOWEL SIGN EE..GURMUKHI VOWEL SIGN AI
+0A49-0A4A,UNASSIGNED,<RESERVED>..<RESERVED>
+0A4B-0A4D,PVALID,GURMUKHI VOWEL SIGN OO..GURMUKHI SIGN VIRAMA
+0A4E-0A50,UNASSIGNED,<RESERVED>..<RESERVED>
+0A51,PVALID,GURMUKHI SIGN UDAAT
+0A52-0A58,UNASSIGNED,<RESERVED>..<RESERVED>
+0A59-0A5B,DISALLOWED,GURMUKHI LETTER KHHA..GURMUKHI LETTER ZA
+0A5C,PVALID,GURMUKHI LETTER RRA
+0A5D,UNASSIGNED,<RESERVED>
+0A5E,DISALLOWED,GURMUKHI LETTER FA
+0A5F-0A65,UNASSIGNED,<RESERVED>..<RESERVED>
+0A66-0A75,PVALID,GURMUKHI DIGIT ZERO..GURMUKHI SIGN YAKASH
+0A76-0A80,UNASSIGNED,<RESERVED>..<RESERVED>
+0A81-0A83,PVALID,GUJARATI SIGN CANDRABINDU..GUJARATI SIGN VISARGA
+0A84,UNASSIGNED,<RESERVED>
+0A85-0A8D,PVALID,GUJARATI LETTER A..GUJARATI VOWEL CANDRA E
+0A8E,UNASSIGNED,<RESERVED>
+0A8F-0A91,PVALID,GUJARATI LETTER E..GUJARATI VOWEL CANDRA O
+0A92,UNASSIGNED,<RESERVED>
+0A93-0AA8,PVALID,GUJARATI LETTER O..GUJARATI LETTER NA
+0AA9,UNASSIGNED,<RESERVED>
+0AAA-0AB0,PVALID,GUJARATI LETTER PA..GUJARATI LETTER RA
+0AB1,UNASSIGNED,<RESERVED>
+0AB2-0AB3,PVALID,GUJARATI LETTER LA..GUJARATI LETTER LLA
+0AB4,UNASSIGNED,<RESERVED>
+0AB5-0AB9,PVALID,GUJARATI LETTER VA..GUJARATI LETTER HA
+0ABA-0ABB,UNASSIGNED,<RESERVED>..<RESERVED>
+0ABC-0AC5,PVALID,GUJARATI SIGN NUKTA..GUJARATI VOWEL SIGN CANDRA E
+0AC6,UNASSIGNED,<RESERVED>
+0AC7-0AC9,PVALID,GUJARATI VOWEL SIGN E..GUJARATI VOWEL SIGN CANDRA O
+0ACA,UNASSIGNED,<RESERVED>
+0ACB-0ACD,PVALID,GUJARATI VOWEL SIGN O..GUJARATI SIGN VIRAMA
+0ACE-0ACF,UNASSIGNED,<RESERVED>..<RESERVED>
+0AD0,PVALID,GUJARATI OM
+0AD1-0ADF,UNASSIGNED,<RESERVED>..<RESERVED>
+0AE0-0AE3,PVALID,GUJARATI LETTER VOCALIC RR..GUJARATI VOWEL SIGN VOCALIC LL
+0AE4-0AE5,UNASSIGNED,<RESERVED>..<RESERVED>
+0AE6-0AEF,PVALID,GUJARATI DIGIT ZERO..GUJARATI DIGIT NINE
+0AF0,UNASSIGNED,<RESERVED>
+0AF1,DISALLOWED,GUJARATI RUPEE SIGN
+0AF2-0B00,UNASSIGNED,<RESERVED>..<RESERVED>
+0B01-0B03,PVALID,ORIYA SIGN CANDRABINDU..ORIYA SIGN VISARGA
+0B04,UNASSIGNED,<RESERVED>
+0B05-0B0C,PVALID,ORIYA LETTER A..ORIYA LETTER VOCALIC L
+0B0D-0B0E,UNASSIGNED,<RESERVED>..<RESERVED>
+0B0F-0B10,PVALID,ORIYA LETTER E..ORIYA LETTER AI
+0B11-0B12,UNASSIGNED,<RESERVED>..<RESERVED>
+0B13-0B28,PVALID,ORIYA LETTER O..ORIYA LETTER NA
+0B29,UNASSIGNED,<RESERVED>
+0B2A-0B30,PVALID,ORIYA LETTER PA..ORIYA LETTER RA
+0B31,UNASSIGNED,<RESERVED>
+0B32-0B33,PVALID,ORIYA LETTER LA..ORIYA LETTER LLA
+0B34,UNASSIGNED,<RESERVED>
+0B35-0B39,PVALID,ORIYA LETTER VA..ORIYA LETTER HA
+0B3A-0B3B,UNASSIGNED,<RESERVED>..<RESERVED>
+0B3C-0B44,PVALID,ORIYA SIGN NUKTA..ORIYA VOWEL SIGN VOCALIC RR
+0B45-0B46,UNASSIGNED,<RESERVED>..<RESERVED>
+0B47-0B48,PVALID,ORIYA VOWEL SIGN E..ORIYA VOWEL SIGN AI
+0B49-0B4A,UNASSIGNED,<RESERVED>..<RESERVED>
+0B4B-0B4D,PVALID,ORIYA VOWEL SIGN O..ORIYA SIGN VIRAMA
+0B4E-0B55,UNASSIGNED,<RESERVED>..<RESERVED>
+0B56-0B57,PVALID,ORIYA AI LENGTH MARK..ORIYA AU LENGTH MARK
+0B58-0B5B,UNASSIGNED,<RESERVED>..<RESERVED>
+0B5C-0B5D,DISALLOWED,ORIYA LETTER RRA..ORIYA LETTER RHA
+0B5E,UNASSIGNED,<RESERVED>
+0B5F-0B63,PVALID,ORIYA LETTER YYA..ORIYA VOWEL SIGN VOCALIC LL
+0B64-0B65,UNASSIGNED,<RESERVED>..<RESERVED>
+0B66-0B6F,PVALID,ORIYA DIGIT ZERO..ORIYA DIGIT NINE
+0B70,DISALLOWED,ORIYA ISSHAR
+0B71,PVALID,ORIYA LETTER WA
+0B72-0B81,UNASSIGNED,<RESERVED>..<RESERVED>
+0B82-0B83,PVALID,TAMIL SIGN ANUSVARA..TAMIL SIGN VISARGA
+0B84,UNASSIGNED,<RESERVED>
+0B85-0B8A,PVALID,TAMIL LETTER A..TAMIL LETTER UU
+0B8B-0B8D,UNASSIGNED,<RESERVED>..<RESERVED>
+0B8E-0B90,PVALID,TAMIL LETTER E..TAMIL LETTER AI
+0B91,UNASSIGNED,<RESERVED>
+0B92-0B95,PVALID,TAMIL LETTER O..TAMIL LETTER KA
+0B96-0B98,UNASSIGNED,<RESERVED>..<RESERVED>
+0B99-0B9A,PVALID,TAMIL LETTER NGA..TAMIL LETTER CA
+0B9B,UNASSIGNED,<RESERVED>
+0B9C,PVALID,TAMIL LETTER JA
+0B9D,UNASSIGNED,<RESERVED>
+0B9E-0B9F,PVALID,TAMIL LETTER NYA..TAMIL LETTER TTA
+0BA0-0BA2,UNASSIGNED,<RESERVED>..<RESERVED>
+0BA3-0BA4,PVALID,TAMIL LETTER NNA..TAMIL LETTER TA
+0BA5-0BA7,UNASSIGNED,<RESERVED>..<RESERVED>
+0BA8-0BAA,PVALID,TAMIL LETTER NA..TAMIL LETTER PA
+0BAB-0BAD,UNASSIGNED,<RESERVED>..<RESERVED>
+0BAE-0BB9,PVALID,TAMIL LETTER MA..TAMIL LETTER HA
+0BBA-0BBD,UNASSIGNED,<RESERVED>..<RESERVED>
+0BBE-0BC2,PVALID,TAMIL VOWEL SIGN AA..TAMIL VOWEL SIGN UU
+0BC3-0BC5,UNASSIGNED,<RESERVED>..<RESERVED>
+0BC6-0BC8,PVALID,TAMIL VOWEL SIGN E..TAMIL VOWEL SIGN AI
+0BC9,UNASSIGNED,<RESERVED>
+0BCA-0BCD,PVALID,TAMIL VOWEL SIGN O..TAMIL SIGN VIRAMA
+0BCE-0BCF,UNASSIGNED,<RESERVED>..<RESERVED>
+0BD0,PVALID,TAMIL OM
+0BD1-0BD6,UNASSIGNED,<RESERVED>..<RESERVED>
+0BD7,PVALID,TAMIL AU LENGTH MARK
+0BD8-0BE5,UNASSIGNED,<RESERVED>..<RESERVED>
+0BE6-0BEF,PVALID,TAMIL DIGIT ZERO..TAMIL DIGIT NINE
+0BF0-0BFA,DISALLOWED,TAMIL NUMBER TEN..TAMIL NUMBER SIGN
+0BFB-0C00,UNASSIGNED,<RESERVED>..<RESERVED>
+0C01-0C03,PVALID,TELUGU SIGN CANDRABINDU..TELUGU SIGN VISARGA
+0C04,UNASSIGNED,<RESERVED>
+0C05-0C0C,PVALID,TELUGU LETTER A..TELUGU LETTER VOCALIC L
+0C0D,UNASSIGNED,<RESERVED>
+0C0E-0C10,PVALID,TELUGU LETTER E..TELUGU LETTER AI
+0C11,UNASSIGNED,<RESERVED>
+0C12-0C28,PVALID,TELUGU LETTER O..TELUGU LETTER NA
+0C29,UNASSIGNED,<RESERVED>
+0C2A-0C33,PVALID,TELUGU LETTER PA..TELUGU LETTER LLA
+0C34,UNASSIGNED,<RESERVED>
+0C35-0C39,PVALID,TELUGU LETTER VA..TELUGU LETTER HA
+0C3A-0C3C,UNASSIGNED,<RESERVED>..<RESERVED>
+0C3D-0C44,PVALID,TELUGU SIGN AVAGRAHA..TELUGU VOWEL SIGN VOCALIC RR
+0C45,UNASSIGNED,<RESERVED>
+0C46-0C48,PVALID,TELUGU VOWEL SIGN E..TELUGU VOWEL SIGN AI
+0C49,UNASSIGNED,<RESERVED>
+0C4A-0C4D,PVALID,TELUGU VOWEL SIGN O..TELUGU SIGN VIRAMA
+0C4E-0C54,UNASSIGNED,<RESERVED>..<RESERVED>
+0C55-0C56,PVALID,TELUGU LENGTH MARK..TELUGU AI LENGTH MARK
+0C57,UNASSIGNED,<RESERVED>
+0C58-0C59,PVALID,TELUGU LETTER TSA..TELUGU LETTER DZA
+0C5A-0C5F,UNASSIGNED,<RESERVED>..<RESERVED>
+0C60-0C63,PVALID,TELUGU LETTER VOCALIC RR..TELUGU VOWEL SIGN VOCALIC LL
+0C64-0C65,UNASSIGNED,<RESERVED>..<RESERVED>
+0C66-0C6F,PVALID,TELUGU DIGIT ZERO..TELUGU DIGIT NINE
+0C70-0C77,UNASSIGNED,<RESERVED>..<RESERVED>
+0C78-0C7F,DISALLOWED,TELUGU FRACTION DIGIT ZERO FOR ODD POWERS OF FOUR..TELUGU SIGN TUUMU
+0C80-0C81,UNASSIGNED,<RESERVED>..<RESERVED>
+0C82-0C83,PVALID,KANNADA SIGN ANUSVARA..KANNADA SIGN VISARGA
+0C84,UNASSIGNED,<RESERVED>
+0C85-0C8C,PVALID,KANNADA LETTER A..KANNADA LETTER VOCALIC L
+0C8D,UNASSIGNED,<RESERVED>
+0C8E-0C90,PVALID,KANNADA LETTER E..KANNADA LETTER AI
+0C91,UNASSIGNED,<RESERVED>
+0C92-0CA8,PVALID,KANNADA LETTER O..KANNADA LETTER NA
+0CA9,UNASSIGNED,<RESERVED>
+0CAA-0CB3,PVALID,KANNADA LETTER PA..KANNADA LETTER LLA
+0CB4,UNASSIGNED,<RESERVED>
+0CB5-0CB9,PVALID,KANNADA LETTER VA..KANNADA LETTER HA
+0CBA-0CBB,UNASSIGNED,<RESERVED>..<RESERVED>
+0CBC-0CC4,PVALID,KANNADA SIGN NUKTA..KANNADA VOWEL SIGN VOCALIC RR
+0CC5,UNASSIGNED,<RESERVED>
+0CC6-0CC8,PVALID,KANNADA VOWEL SIGN E..KANNADA VOWEL SIGN AI
+0CC9,UNASSIGNED,<RESERVED>
+0CCA-0CCD,PVALID,KANNADA VOWEL SIGN O..KANNADA SIGN VIRAMA
+0CCE-0CD4,UNASSIGNED,<RESERVED>..<RESERVED>
+0CD5-0CD6,PVALID,KANNADA LENGTH MARK..KANNADA AI LENGTH MARK
+0CD7-0CDD,UNASSIGNED,<RESERVED>..<RESERVED>
+0CDE,PVALID,KANNADA LETTER FA
+0CDF,UNASSIGNED,<RESERVED>
+0CE0-0CE3,PVALID,KANNADA LETTER VOCALIC RR..KANNADA VOWEL SIGN VOCALIC LL
+0CE4-0CE5,UNASSIGNED,<RESERVED>..<RESERVED>
+0CE6-0CEF,PVALID,KANNADA DIGIT ZERO..KANNADA DIGIT NINE
+0CF0,UNASSIGNED,<RESERVED>
+0CF1-0CF2,DISALLOWED,KANNADA SIGN JIHVAMULIYA..KANNADA SIGN UPADHMANIYA
+0CF3-0D01,UNASSIGNED,<RESERVED>..<RESERVED>
+0D02-0D03,PVALID,MALAYALAM SIGN ANUSVARA..MALAYALAM SIGN VISARGA
+0D04,UNASSIGNED,<RESERVED>
+0D05-0D0C,PVALID,MALAYALAM LETTER A..MALAYALAM LETTER VOCALIC L
+0D0D,UNASSIGNED,<RESERVED>
+0D0E-0D10,PVALID,MALAYALAM LETTER E..MALAYALAM LETTER AI
+0D11,UNASSIGNED,<RESERVED>
+0D12-0D28,PVALID,MALAYALAM LETTER O..MALAYALAM LETTER NA
+0D29,UNASSIGNED,<RESERVED>
+0D2A-0D39,PVALID,MALAYALAM LETTER PA..MALAYALAM LETTER HA
+0D3A-0D3C,UNASSIGNED,<RESERVED>..<RESERVED>
+0D3D-0D44,PVALID,MALAYALAM SIGN AVAGRAHA..MALAYALAM VOWEL SIGN VOCALIC RR
+0D45,UNASSIGNED,<RESERVED>
+0D46-0D48,PVALID,MALAYALAM VOWEL SIGN E..MALAYALAM VOWEL SIGN AI
+0D49,UNASSIGNED,<RESERVED>
+0D4A-0D4D,PVALID,MALAYALAM VOWEL SIGN O..MALAYALAM SIGN VIRAMA
+0D4E-0D56,UNASSIGNED,<RESERVED>..<RESERVED>
+0D57,PVALID,MALAYALAM AU LENGTH MARK
+0D58-0D5F,UNASSIGNED,<RESERVED>..<RESERVED>
+0D60-0D63,PVALID,MALAYALAM LETTER VOCALIC RR..MALAYALAM VOWEL SIGN VOCALIC LL
+0D64-0D65,UNASSIGNED,<RESERVED>..<RESERVED>
+0D66-0D6F,PVALID,MALAYALAM DIGIT ZERO..MALAYALAM DIGIT NINE
+0D70-0D75,DISALLOWED,MALAYALAM NUMBER TEN..MALAYALAM FRACTION THREE QUARTERS
+0D76-0D78,UNASSIGNED,<RESERVED>..<RESERVED>
+0D79,DISALLOWED,MALAYALAM DATE MARK
+0D7A-0D7F,PVALID,MALAYALAM LETTER CHILLU NN..MALAYALAM LETTER CHILLU K
+0D80-0D81,UNASSIGNED,<RESERVED>..<RESERVED>
+0D82-0D83,PVALID,SINHALA SIGN ANUSVARAYA..SINHALA SIGN VISARGAYA
+0D84,UNASSIGNED,<RESERVED>
+0D85-0D96,PVALID,SINHALA LETTER AYANNA..SINHALA LETTER AUYANNA
+0D97-0D99,UNASSIGNED,<RESERVED>..<RESERVED>
+0D9A-0DB1,PVALID,SINHALA LETTER ALPAPRAANA KAYANNA..SINHALA LETTER DANTAJA NAYANNA
+0DB2,UNASSIGNED,<RESERVED>
+0DB3-0DBB,PVALID,SINHALA LETTER SANYAKA DAYANNA..SINHALA LETTER RAYANNA
+0DBC,UNASSIGNED,<RESERVED>
+0DBD,PVALID,SINHALA LETTER DANTAJA LAYANNA
+0DBE-0DBF,UNASSIGNED,<RESERVED>..<RESERVED>
+0DC0-0DC6,PVALID,SINHALA LETTER VAYANNA..SINHALA LETTER FAYANNA
+0DC7-0DC9,UNASSIGNED,<RESERVED>..<RESERVED>
+0DCA,PVALID,SINHALA SIGN AL-LAKUNA
+0DCB-0DCE,UNASSIGNED,<RESERVED>..<RESERVED>
+0DCF-0DD4,PVALID,SINHALA VOWEL SIGN AELA-PILLA..SINHALA VOWEL SIGN KETTI PAA-PILLA
+0DD5,UNASSIGNED,<RESERVED>
+0DD6,PVALID,SINHALA VOWEL SIGN DIGA PAA-PILLA
+0DD7,UNASSIGNED,<RESERVED>
+0DD8-0DDF,PVALID,SINHALA VOWEL SIGN GAETTA-PILLA..SINHALA VOWEL SIGN GAYANUKITTA
+0DE0-0DF1,UNASSIGNED,<RESERVED>..<RESERVED>
+0DF2-0DF3,PVALID,SINHALA VOWEL SIGN DIGA GAETTA-PILLA..SINHALA VOWEL SIGN DIGA GAYANUKITTA
+0DF4,DISALLOWED,SINHALA PUNCTUATION KUNDDALIYA
+0DF5-0E00,UNASSIGNED,<RESERVED>..<RESERVED>
+0E01-0E32,PVALID,THAI CHARACTER KO KAI..THAI CHARACTER SARA AA
+0E33,DISALLOWED,THAI CHARACTER SARA AM
+0E34-0E3A,PVALID,THAI CHARACTER SARA I..THAI CHARACTER PHINTHU
+0E3B-0E3E,UNASSIGNED,<RESERVED>..<RESERVED>
+0E3F,DISALLOWED,THAI CURRENCY SYMBOL BAHT
+0E40-0E4E,PVALID,THAI CHARACTER SARA E..THAI CHARACTER YAMAKKAN
+0E4F,DISALLOWED,THAI CHARACTER FONGMAN
+0E50-0E59,PVALID,THAI DIGIT ZERO..THAI DIGIT NINE
+0E5A-0E5B,DISALLOWED,THAI CHARACTER ANGKHANKHU..THAI CHARACTER KHOMUT
+0E5C-0E80,UNASSIGNED,<RESERVED>..<RESERVED>
+0E81-0E82,PVALID,LAO LETTER KO..LAO LETTER KHO SUNG
+0E83,UNASSIGNED,<RESERVED>
+0E84,PVALID,LAO LETTER KHO TAM
+0E85-0E86,UNASSIGNED,<RESERVED>..<RESERVED>
+0E87-0E88,PVALID,LAO LETTER NGO..LAO LETTER CO
+0E89,UNASSIGNED,<RESERVED>
+0E8A,PVALID,LAO LETTER SO TAM
+0E8B-0E8C,UNASSIGNED,<RESERVED>..<RESERVED>
+0E8D,PVALID,LAO LETTER NYO
+0E8E-0E93,UNASSIGNED,<RESERVED>..<RESERVED>
+0E94-0E97,PVALID,LAO LETTER DO..LAO LETTER THO TAM
+0E98,UNASSIGNED,<RESERVED>
+0E99-0E9F,PVALID,LAO LETTER NO..LAO LETTER FO SUNG
+0EA0,UNASSIGNED,<RESERVED>
+0EA1-0EA3,PVALID,LAO LETTER MO..LAO LETTER LO LING
+0EA4,UNASSIGNED,<RESERVED>
+0EA5,PVALID,LAO LETTER LO LOOT
+0EA6,UNASSIGNED,<RESERVED>
+0EA7,PVALID,LAO LETTER WO
+0EA8-0EA9,UNASSIGNED,<RESERVED>..<RESERVED>
+0EAA-0EAB,PVALID,LAO LETTER SO SUNG..LAO LETTER HO SUNG
+0EAC,UNASSIGNED,<RESERVED>
+0EAD-0EB2,PVALID,LAO LETTER O..LAO VOWEL SIGN AA
+0EB3,DISALLOWED,LAO VOWEL SIGN AM
+0EB4-0EB9,PVALID,LAO VOWEL SIGN I..LAO VOWEL SIGN UU
+0EBA,UNASSIGNED,<RESERVED>
+0EBB-0EBD,PVALID,LAO VOWEL SIGN MAI KON..LAO SEMIVOWEL SIGN NYO
+0EBE-0EBF,UNASSIGNED,<RESERVED>..<RESERVED>
+0EC0-0EC4,PVALID,LAO VOWEL SIGN E..LAO VOWEL SIGN AI
+0EC5,UNASSIGNED,<RESERVED>
+0EC6,PVALID,LAO KO LA
+0EC7,UNASSIGNED,<RESERVED>
+0EC8-0ECD,PVALID,LAO TONE MAI EK..LAO NIGGAHITA
+0ECE-0ECF,UNASSIGNED,<RESERVED>..<RESERVED>
+0ED0-0ED9,PVALID,LAO DIGIT ZERO..LAO DIGIT NINE
+0EDA-0EDB,UNASSIGNED,<RESERVED>..<RESERVED>
+0EDC-0EDD,DISALLOWED,LAO HO NO..LAO HO MO
+0EDE-0EFF,UNASSIGNED,<RESERVED>..<RESERVED>
+0F00,PVALID,TIBETAN SYLLABLE OM
+0F01-0F0A,DISALLOWED,TIBETAN MARK GTER YIG MGO TRUNCATED A..TIBETAN MARK BKA- SHOG YIG MGO
+0F0B,PVALID,TIBETAN MARK INTERSYLLABIC TSHEG
+0F0C-0F17,DISALLOWED,TIBETAN MARK DELIMITER TSHEG BSTAR..TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS
+0F18-0F19,PVALID,TIBETAN ASTROLOGICAL SIGN -KHYUD PA..TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS
+0F1A-0F1F,DISALLOWED,TIBETAN SIGN RDEL DKAR GCIG..TIBETAN SIGN RDEL DKAR RDEL NAG
+0F20-0F29,PVALID,TIBETAN DIGIT ZERO..TIBETAN DIGIT NINE
+0F2A-0F34,DISALLOWED,TIBETAN DIGIT HALF ONE..TIBETAN MARK BSDUS RTAGS
+0F35,PVALID,TIBETAN MARK NGAS BZUNG NYI ZLA
+0F36,DISALLOWED,TIBETAN MARK CARET -DZUD RTAGS BZHI MIG CAN
+0F37,PVALID,TIBETAN MARK NGAS BZUNG SGOR RTAGS
+0F38,DISALLOWED,TIBETAN MARK CHE MGO
+0F39,PVALID,TIBETAN MARK TSA -PHRU
+0F3A-0F3D,DISALLOWED,TIBETAN MARK GUG RTAGS GYON..TIBETAN MARK ANG KHANG GYAS
+0F3E-0F42,PVALID,TIBETAN SIGN YAR TSHES..TIBETAN LETTER GA
+0F43,DISALLOWED,TIBETAN LETTER GHA
+0F44-0F47,PVALID,TIBETAN LETTER NGA..TIBETAN LETTER JA
+0F48,UNASSIGNED,<RESERVED>
+0F49-0F4C,PVALID,TIBETAN LETTER NYA..TIBETAN LETTER DDA
+0F4D,DISALLOWED,TIBETAN LETTER DDHA
+0F4E-0F51,PVALID,TIBETAN LETTER NNA..TIBETAN LETTER DA
+0F52,DISALLOWED,TIBETAN LETTER DHA
+0F53-0F56,PVALID,TIBETAN LETTER NA..TIBETAN LETTER BA
+0F57,DISALLOWED,TIBETAN LETTER BHA
+0F58-0F5B,PVALID,TIBETAN LETTER MA..TIBETAN LETTER DZA
+0F5C,DISALLOWED,TIBETAN LETTER DZHA
+0F5D-0F68,PVALID,TIBETAN LETTER WA..TIBETAN LETTER A
+0F69,DISALLOWED,TIBETAN LETTER KSSA
+0F6A-0F6C,PVALID,TIBETAN LETTER FIXED-FORM RA..TIBETAN LETTER RRA
+0F6D-0F70,UNASSIGNED,<RESERVED>..<RESERVED>
+0F71-0F72,PVALID,TIBETAN VOWEL SIGN AA..TIBETAN VOWEL SIGN I
+0F73,DISALLOWED,TIBETAN VOWEL SIGN II
+0F74,PVALID,TIBETAN VOWEL SIGN U
+0F75-0F79,DISALLOWED,TIBETAN VOWEL SIGN UU..TIBETAN VOWEL SIGN VOCALIC LL
+0F7A-0F80,PVALID,TIBETAN VOWEL SIGN E..TIBETAN VOWEL SIGN REVERSED I
+0F81,DISALLOWED,TIBETAN VOWEL SIGN REVERSED II
+0F82-0F84,PVALID,TIBETAN SIGN NYI ZLA NAA DA..TIBETAN MARK HALANTA
+0F85,DISALLOWED,TIBETAN MARK PALUTA
+0F86-0F8B,PVALID,TIBETAN SIGN LCI RTAGS..TIBETAN SIGN GRU MED RGYINGS
+0F8C-0F8F,UNASSIGNED,<RESERVED>..<RESERVED>
+0F90-0F92,PVALID,TIBETAN SUBJOINED LETTER KA..TIBETAN SUBJOINED LETTER GA
+0F93,DISALLOWED,TIBETAN SUBJOINED LETTER GHA
+0F94-0F97,PVALID,TIBETAN SUBJOINED LETTER NGA..TIBETAN SUBJOINED LETTER JA
+0F98,UNASSIGNED,<RESERVED>
+0F99-0F9C,PVALID,TIBETAN SUBJOINED LETTER NYA..TIBETAN SUBJOINED LETTER DDA
+0F9D,DISALLOWED,TIBETAN SUBJOINED LETTER DDHA
+0F9E-0FA1,PVALID,TIBETAN SUBJOINED LETTER NNA..TIBETAN SUBJOINED LETTER DA
+0FA2,DISALLOWED,TIBETAN SUBJOINED LETTER DHA
+0FA3-0FA6,PVALID,TIBETAN SUBJOINED LETTER NA..TIBETAN SUBJOINED LETTER BA
+0FA7,DISALLOWED,TIBETAN SUBJOINED LETTER BHA
+0FA8-0FAB,PVALID,TIBETAN SUBJOINED LETTER MA..TIBETAN SUBJOINED LETTER DZA
+0FAC,DISALLOWED,TIBETAN SUBJOINED LETTER DZHA
+0FAD-0FB8,PVALID,TIBETAN SUBJOINED LETTER WA..TIBETAN SUBJOINED LETTER A
+0FB9,DISALLOWED,TIBETAN SUBJOINED LETTER KSSA
+0FBA-0FBC,PVALID,TIBETAN SUBJOINED LETTER FIXED-FORM WA..TIBETAN SUBJOINED LETTER FIXED-FORM RA
+0FBD,UNASSIGNED,<RESERVED>
+0FBE-0FC5,DISALLOWED,TIBETAN KU RU KHA..TIBETAN SYMBOL RDO RJE
+0FC6,PVALID,TIBETAN SYMBOL PADMA GDAN
+0FC7-0FCC,DISALLOWED,TIBETAN SYMBOL RDO RJE RGYA GRAM..TIBETAN SYMBOL NOR BU BZHI -KHYIL
+0FCD,UNASSIGNED,<RESERVED>
+0FCE-0FD8,DISALLOWED,TIBETAN SIGN RDEL NAG RDEL DKAR..LEFT-FACING SVASTI SIGN WITH DOTS
+0FD9-0FFF,UNASSIGNED,<RESERVED>..<RESERVED>
+1000-1049,PVALID,MYANMAR LETTER KA..MYANMAR DIGIT NINE
+104A-104F,DISALLOWED,MYANMAR SIGN LITTLE SECTION..MYANMAR SYMBOL GENITIVE
+1050-109D,PVALID,MYANMAR LETTER SHA..MYANMAR VOWEL SIGN AITON AI
+109E-10C5,DISALLOWED,MYANMAR SYMBOL SHAN ONE..GEORGIAN CAPITAL LETTER HOE
+10C6-10CF,UNASSIGNED,<RESERVED>..<RESERVED>
+10D0-10FA,PVALID,GEORGIAN LETTER AN..GEORGIAN LETTER AIN
+10FB-10FC,DISALLOWED,GEORGIAN PARAGRAPH SEPARATOR..MODIFIER LETTER GEORGIAN NAR
+10FD-10FF,UNASSIGNED,<RESERVED>..<RESERVED>
+1100-11FF,DISALLOWED,HANGUL CHOSEONG KIYEOK..HANGUL JONGSEONG SSANGNIEUN
+1200-1248,PVALID,ETHIOPIC SYLLABLE HA..ETHIOPIC SYLLABLE QWA
+1249,UNASSIGNED,<RESERVED>
+124A-124D,PVALID,ETHIOPIC SYLLABLE QWI..ETHIOPIC SYLLABLE QWE
+124E-124F,UNASSIGNED,<RESERVED>..<RESERVED>
+1250-1256,PVALID,ETHIOPIC SYLLABLE QHA..ETHIOPIC SYLLABLE QHO
+1257,UNASSIGNED,<RESERVED>
+1258,PVALID,ETHIOPIC SYLLABLE QHWA
+1259,UNASSIGNED,<RESERVED>
+125A-125D,PVALID,ETHIOPIC SYLLABLE QHWI..ETHIOPIC SYLLABLE QHWE
+125E-125F,UNASSIGNED,<RESERVED>..<RESERVED>
+1260-1288,PVALID,ETHIOPIC SYLLABLE BA..ETHIOPIC SYLLABLE XWA
+1289,UNASSIGNED,<RESERVED>
+128A-128D,PVALID,ETHIOPIC SYLLABLE XWI..ETHIOPIC SYLLABLE XWE
+128E-128F,UNASSIGNED,<RESERVED>..<RESERVED>
+1290-12B0,PVALID,ETHIOPIC SYLLABLE NA..ETHIOPIC SYLLABLE KWA
+12B1,UNASSIGNED,<RESERVED>
+12B2-12B5,PVALID,ETHIOPIC SYLLABLE KWI..ETHIOPIC SYLLABLE KWE
+12B6-12B7,UNASSIGNED,<RESERVED>..<RESERVED>
+12B8-12BE,PVALID,ETHIOPIC SYLLABLE KXA..ETHIOPIC SYLLABLE KXO
+12BF,UNASSIGNED,<RESERVED>
+12C0,PVALID,ETHIOPIC SYLLABLE KXWA
+12C1,UNASSIGNED,<RESERVED>
+12C2-12C5,PVALID,ETHIOPIC SYLLABLE KXWI..ETHIOPIC SYLLABLE KXWE
+12C6-12C7,UNASSIGNED,<RESERVED>..<RESERVED>
+12C8-12D6,PVALID,ETHIOPIC SYLLABLE WA..ETHIOPIC SYLLABLE PHARYNGEAL O
+12D7,UNASSIGNED,<RESERVED>
+12D8-1310,PVALID,ETHIOPIC SYLLABLE ZA..ETHIOPIC SYLLABLE GWA
+1311,UNASSIGNED,<RESERVED>
+1312-1315,PVALID,ETHIOPIC SYLLABLE GWI..ETHIOPIC SYLLABLE GWE
+1316-1317,UNASSIGNED,<RESERVED>..<RESERVED>
+1318-135A,PVALID,ETHIOPIC SYLLABLE GGA..ETHIOPIC SYLLABLE FYA
+135B-135E,UNASSIGNED,<RESERVED>..<RESERVED>
+135F,PVALID,ETHIOPIC COMBINING GEMINATION MARK
+1360-137C,DISALLOWED,ETHIOPIC SECTION MARK..ETHIOPIC NUMBER TEN THOUSAND
+137D-137F,UNASSIGNED,<RESERVED>..<RESERVED>
+1380-138F,PVALID,ETHIOPIC SYLLABLE SEBATBEIT MWA..ETHIOPIC SYLLABLE PWE
+1390-1399,DISALLOWED,ETHIOPIC TONAL MARK YIZET..ETHIOPIC TONAL MARK KURT
+139A-139F,UNASSIGNED,<RESERVED>..<RESERVED>
+13A0-13F4,PVALID,CHEROKEE LETTER A..CHEROKEE LETTER YV
+13F5-13FF,UNASSIGNED,<RESERVED>..<RESERVED>
+1400,DISALLOWED,CANADIAN SYLLABICS HYPHEN
+1401-166C,PVALID,CANADIAN SYLLABICS E..CANADIAN SYLLABICS CARRIER TTSA
+166D-166E,DISALLOWED,CANADIAN SYLLABICS CHI SIGN..CANADIAN SYLLABICS FULL STOP
+166F-167F,PVALID,CANADIAN SYLLABICS QAI..CANADIAN SYLLABICS BLACKFOOT W
+1680,DISALLOWED,OGHAM SPACE MARK
+1681-169A,PVALID,OGHAM LETTER BEITH..OGHAM LETTER PEITH
+169B-169C,DISALLOWED,OGHAM FEATHER MARK..OGHAM REVERSED FEATHER MARK
+169D-169F,UNASSIGNED,<RESERVED>..<RESERVED>
+16A0-16EA,PVALID,RUNIC LETTER FEHU FEOH FE F..RUNIC LETTER X
+16EB-16F0,DISALLOWED,RUNIC SINGLE PUNCTUATION..RUNIC BELGTHOR SYMBOL
+16F1-16FF,UNASSIGNED,<RESERVED>..<RESERVED>
+1700-170C,PVALID,TAGALOG LETTER A..TAGALOG LETTER YA
+170D,UNASSIGNED,<RESERVED>
+170E-1714,PVALID,TAGALOG LETTER LA..TAGALOG SIGN VIRAMA
+1715-171F,UNASSIGNED,<RESERVED>..<RESERVED>
+1720-1734,PVALID,HANUNOO LETTER A..HANUNOO SIGN PAMUDPOD
+1735-1736,DISALLOWED,PHILIPPINE SINGLE PUNCTUATION..PHILIPPINE DOUBLE PUNCTUATION
+1737-173F,UNASSIGNED,<RESERVED>..<RESERVED>
+1740-1753,PVALID,BUHID LETTER A..BUHID VOWEL SIGN U
+1754-175F,UNASSIGNED,<RESERVED>..<RESERVED>
+1760-176C,PVALID,TAGBANWA LETTER A..TAGBANWA LETTER YA
+176D,UNASSIGNED,<RESERVED>
+176E-1770,PVALID,TAGBANWA LETTER LA..TAGBANWA LETTER SA
+1771,UNASSIGNED,<RESERVED>
+1772-1773,PVALID,TAGBANWA VOWEL SIGN I..TAGBANWA VOWEL SIGN U
+1774-177F,UNASSIGNED,<RESERVED>..<RESERVED>
+1780-17B3,PVALID,KHMER LETTER KA..KHMER INDEPENDENT VOWEL QAU
+17B4-17B5,DISALLOWED,KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA
+17B6-17D3,PVALID,KHMER VOWEL SIGN AA..KHMER SIGN BATHAMASAT
+17D4-17D6,DISALLOWED,KHMER SIGN KHAN..KHMER SIGN CAMNUC PII KUUH
+17D7,PVALID,KHMER SIGN LEK TOO
+17D8-17DB,DISALLOWED,KHMER SIGN BEYYAL..KHMER CURRENCY SYMBOL RIEL
+17DC-17DD,PVALID,KHMER SIGN AVAKRAHASANYA..KHMER SIGN ATTHACAN
+17DE-17DF,UNASSIGNED,<RESERVED>..<RESERVED>
+17E0-17E9,PVALID,KHMER DIGIT ZERO..KHMER DIGIT NINE
+17EA-17EF,UNASSIGNED,<RESERVED>..<RESERVED>
+17F0-17F9,DISALLOWED,KHMER SYMBOL LEK ATTAK SON..KHMER SYMBOL LEK ATTAK PRAM-BUON
+17FA-17FF,UNASSIGNED,<RESERVED>..<RESERVED>
+1800-180E,DISALLOWED,MONGOLIAN BIRGA..MONGOLIAN VOWEL SEPARATOR
+180F,UNASSIGNED,<RESERVED>
+1810-1819,PVALID,MONGOLIAN DIGIT ZERO..MONGOLIAN DIGIT NINE
+181A-181F,UNASSIGNED,<RESERVED>..<RESERVED>
+1820-1877,PVALID,MONGOLIAN LETTER A..MONGOLIAN LETTER MANCHU ZHA
+1878-187F,UNASSIGNED,<RESERVED>..<RESERVED>
+1880-18AA,PVALID,MONGOLIAN LETTER ALI GALI ANUSVARA ONE..MONGOLIAN LETTER MANCHU ALI GALI LHA
+18AB-18AF,UNASSIGNED,<RESERVED>..<RESERVED>
+18B0-18F5,PVALID,CANADIAN SYLLABICS OY..CANADIAN SYLLABICS CARRIER DENTAL S
+18F6-18FF,UNASSIGNED,<RESERVED>..<RESERVED>
+1900-191C,PVALID,LIMBU VOWEL-CARRIER LETTER..LIMBU LETTER HA
+191D-191F,UNASSIGNED,<RESERVED>..<RESERVED>
+1920-192B,PVALID,LIMBU VOWEL SIGN A..LIMBU SUBJOINED LETTER WA
+192C-192F,UNASSIGNED,<RESERVED>..<RESERVED>
+1930-193B,PVALID,LIMBU SMALL LETTER KA..LIMBU SIGN SA-I
+193C-193F,UNASSIGNED,<RESERVED>..<RESERVED>
+1940,DISALLOWED,LIMBU SIGN LOO
+1941-1943,UNASSIGNED,<RESERVED>..<RESERVED>
+1944-1945,DISALLOWED,LIMBU EXCLAMATION MARK..LIMBU QUESTION MARK
+1946-196D,PVALID,LIMBU DIGIT ZERO..TAI LE LETTER AI
+196E-196F,UNASSIGNED,<RESERVED>..<RESERVED>
+1970-1974,PVALID,TAI LE LETTER TONE-2..TAI LE LETTER TONE-6
+1975-197F,UNASSIGNED,<RESERVED>..<RESERVED>
+1980-19AB,PVALID,NEW TAI LUE LETTER HIGH QA..NEW TAI LUE LETTER LOW SUA
+19AC-19AF,UNASSIGNED,<RESERVED>..<RESERVED>
+19B0-19C9,PVALID,NEW TAI LUE VOWEL SIGN VOWEL SHORTENER..NEW TAI LUE TONE MARK-2
+19CA-19CF,UNASSIGNED,<RESERVED>..<RESERVED>
+19D0-19DA,PVALID,NEW TAI LUE DIGIT ZERO..NEW TAI LUE THAM DIGIT ONE
+19DB-19DD,UNASSIGNED,<RESERVED>..<RESERVED>
+19DE-19FF,DISALLOWED,NEW TAI LUE SIGN LAE..KHMER SYMBOL DAP-PRAM ROC
+1A00-1A1B,PVALID,BUGINESE LETTER KA..BUGINESE VOWEL SIGN AE
+1A1C-1A1D,UNASSIGNED,<RESERVED>..<RESERVED>
+1A1E-1A1F,DISALLOWED,BUGINESE PALLAWA..BUGINESE END OF SECTION
+1A20-1A5E,PVALID,TAI THAM LETTER HIGH KA..TAI THAM CONSONANT SIGN SA
+1A5F,UNASSIGNED,<RESERVED>
+1A60-1A7C,PVALID,TAI THAM SIGN SAKOT..TAI THAM SIGN KHUEN-LUE KARAN
+1A7D-1A7E,UNASSIGNED,<RESERVED>..<RESERVED>
+1A7F-1A89,PVALID,TAI THAM COMBINING CRYPTOGRAMMIC DOT..TAI THAM HORA DIGIT NINE
+1A8A-1A8F,UNASSIGNED,<RESERVED>..<RESERVED>
+1A90-1A99,PVALID,TAI THAM THAM DIGIT ZERO..TAI THAM THAM DIGIT NINE
+1A9A-1A9F,UNASSIGNED,<RESERVED>..<RESERVED>
+1AA0-1AA6,DISALLOWED,TAI THAM SIGN WIANG..TAI THAM SIGN REVERSED ROTATED RANA
+1AA7,PVALID,TAI THAM SIGN MAI YAMOK
+1AA8-1AAD,DISALLOWED,TAI THAM SIGN KAAN..TAI THAM SIGN CAANG
+1AAE-1AFF,UNASSIGNED,<RESERVED>..<RESERVED>
+1B00-1B4B,PVALID,BALINESE SIGN ULU RICEM..BALINESE LETTER ASYURA SASAK
+1B4C-1B4F,UNASSIGNED,<RESERVED>..<RESERVED>
+1B50-1B59,PVALID,BALINESE DIGIT ZERO..BALINESE DIGIT NINE
+1B5A-1B6A,DISALLOWED,BALINESE PANTI..BALINESE MUSICAL SYMBOL DANG GEDE
+1B6B-1B73,PVALID,BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG
+1B74-1B7C,DISALLOWED,BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DUG..BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING
+1B7D-1B7F,UNASSIGNED,<RESERVED>..<RESERVED>
+1B80-1BAA,PVALID,SUNDANESE SIGN PANYECEK..SUNDANESE SIGN PAMAAEH
+1BAB-1BAD,UNASSIGNED,<RESERVED>..<RESERVED>
+1BAE-1BB9,PVALID,SUNDANESE LETTER KHA..SUNDANESE DIGIT NINE
+1BBA-1BFF,UNASSIGNED,<RESERVED>..<RESERVED>
+1C00-1C37,PVALID,LEPCHA LETTER KA..LEPCHA SIGN NUKTA
+1C38-1C3A,UNASSIGNED,<RESERVED>..<RESERVED>
+1C3B-1C3F,DISALLOWED,LEPCHA PUNCTUATION TA-ROL..LEPCHA PUNCTUATION TSHOOK
+1C40-1C49,PVALID,LEPCHA DIGIT ZERO..LEPCHA DIGIT NINE
+1C4A-1C4C,UNASSIGNED,<RESERVED>..<RESERVED>
+1C4D-1C7D,PVALID,LEPCHA LETTER TTA..OL CHIKI AHAD
+1C7E-1C7F,DISALLOWED,OL CHIKI PUNCTUATION MUCAAD..OL CHIKI PUNCTUATION DOUBLE MUCAAD
+1C80-1CCF,UNASSIGNED,<RESERVED>..<RESERVED>
+1CD0-1CD2,PVALID,VEDIC TONE KARSHANA..VEDIC TONE PRENKHA
+1CD3,DISALLOWED,VEDIC SIGN NIHSHVASA
+1CD4-1CF2,PVALID,VEDIC SIGN YAJURVEDIC MIDLINE SVARITA..VEDIC SIGN ARDHAVISARGA
+1CF3-1CFF,UNASSIGNED,<RESERVED>..<RESERVED>
+1D00-1D2B,PVALID,LATIN LETTER SMALL CAPITAL A..CYRILLIC LETTER SMALL CAPITAL EL
+1D2C-1D2E,DISALLOWED,MODIFIER LETTER CAPITAL A..MODIFIER LETTER CAPITAL B
+1D2F,PVALID,MODIFIER LETTER CAPITAL BARRED B
+1D30-1D3A,DISALLOWED,MODIFIER LETTER CAPITAL D..MODIFIER LETTER CAPITAL N
+1D3B,PVALID,MODIFIER LETTER CAPITAL REVERSED N
+1D3C-1D4D,DISALLOWED,MODIFIER LETTER CAPITAL O..MODIFIER LETTER SMALL G
+1D4E,PVALID,MODIFIER LETTER SMALL TURNED I
+1D4F-1D6A,DISALLOWED,MODIFIER LETTER SMALL K..GREEK SUBSCRIPT SMALL LETTER CHI
+1D6B-1D77,PVALID,LATIN SMALL LETTER UE..LATIN SMALL LETTER TURNED G
+1D78,DISALLOWED,MODIFIER LETTER CYRILLIC EN
+1D79-1D9A,PVALID,LATIN SMALL LETTER INSULAR G..LATIN SMALL LETTER EZH WITH RETROFLEX HOOK
+1D9B-1DBF,DISALLOWED,MODIFIER LETTER SMALL TURNED ALPHA..MODIFIER LETTER SMALL THETA
+1DC0-1DE6,PVALID,COMBINING DOTTED GRAVE ACCENT..COMBINING LATIN SMALL LETTER Z
+1DE7-1DFC,UNASSIGNED,<RESERVED>..<RESERVED>
+1DFD-1DFF,PVALID,COMBINING ALMOST EQUAL TO BELOW..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW
+1E00,DISALLOWED,LATIN CAPITAL LETTER A WITH RING BELOW
+1E01,PVALID,LATIN SMALL LETTER A WITH RING BELOW
+1E02,DISALLOWED,LATIN CAPITAL LETTER B WITH DOT ABOVE
+1E03,PVALID,LATIN SMALL LETTER B WITH DOT ABOVE
+1E04,DISALLOWED,LATIN CAPITAL LETTER B WITH DOT BELOW
+1E05,PVALID,LATIN SMALL LETTER B WITH DOT BELOW
+1E06,DISALLOWED,LATIN CAPITAL LETTER B WITH LINE BELOW
+1E07,PVALID,LATIN SMALL LETTER B WITH LINE BELOW
+1E08,DISALLOWED,LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE
+1E09,PVALID,LATIN SMALL LETTER C WITH CEDILLA AND ACUTE
+1E0A,DISALLOWED,LATIN CAPITAL LETTER D WITH DOT ABOVE
+1E0B,PVALID,LATIN SMALL LETTER D WITH DOT ABOVE
+1E0C,DISALLOWED,LATIN CAPITAL LETTER D WITH DOT BELOW
+1E0D,PVALID,LATIN SMALL LETTER D WITH DOT BELOW
+1E0E,DISALLOWED,LATIN CAPITAL LETTER D WITH LINE BELOW
+1E0F,PVALID,LATIN SMALL LETTER D WITH LINE BELOW
+1E10,DISALLOWED,LATIN CAPITAL LETTER D WITH CEDILLA
+1E11,PVALID,LATIN SMALL LETTER D WITH CEDILLA
+1E12,DISALLOWED,LATIN CAPITAL LETTER D WITH CIRCUMFLEX BELOW
+1E13,PVALID,LATIN SMALL LETTER D WITH CIRCUMFLEX BELOW
+1E14,DISALLOWED,LATIN CAPITAL LETTER E WITH MACRON AND GRAVE
+1E15,PVALID,LATIN SMALL LETTER E WITH MACRON AND GRAVE
+1E16,DISALLOWED,LATIN CAPITAL LETTER E WITH MACRON AND ACUTE
+1E17,PVALID,LATIN SMALL LETTER E WITH MACRON AND ACUTE
+1E18,DISALLOWED,LATIN CAPITAL LETTER E WITH CIRCUMFLEX BELOW
+1E19,PVALID,LATIN SMALL LETTER E WITH CIRCUMFLEX BELOW
+1E1A,DISALLOWED,LATIN CAPITAL LETTER E WITH TILDE BELOW
+1E1B,PVALID,LATIN SMALL LETTER E WITH TILDE BELOW
+1E1C,DISALLOWED,LATIN CAPITAL LETTER E WITH CEDILLA AND BREVE
+1E1D,PVALID,LATIN SMALL LETTER E WITH CEDILLA AND BREVE
+1E1E,DISALLOWED,LATIN CAPITAL LETTER F WITH DOT ABOVE
+1E1F,PVALID,LATIN SMALL LETTER F WITH DOT ABOVE
+1E20,DISALLOWED,LATIN CAPITAL LETTER G WITH MACRON
+1E21,PVALID,LATIN SMALL LETTER G WITH MACRON
+1E22,DISALLOWED,LATIN CAPITAL LETTER H WITH DOT ABOVE
+1E23,PVALID,LATIN SMALL LETTER H WITH DOT ABOVE
+1E24,DISALLOWED,LATIN CAPITAL LETTER H WITH DOT BELOW
+1E25,PVALID,LATIN SMALL LETTER H WITH DOT BELOW
+1E26,DISALLOWED,LATIN CAPITAL LETTER H WITH DIAERESIS
+1E27,PVALID,LATIN SMALL LETTER H WITH DIAERESIS
+1E28,DISALLOWED,LATIN CAPITAL LETTER H WITH CEDILLA
+1E29,PVALID,LATIN SMALL LETTER H WITH CEDILLA
+1E2A,DISALLOWED,LATIN CAPITAL LETTER H WITH BREVE BELOW
+1E2B,PVALID,LATIN SMALL LETTER H WITH BREVE BELOW
+1E2C,DISALLOWED,LATIN CAPITAL LETTER I WITH TILDE BELOW
+1E2D,PVALID,LATIN SMALL LETTER I WITH TILDE BELOW
+1E2E,DISALLOWED,LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE
+1E2F,PVALID,LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE
+1E30,DISALLOWED,LATIN CAPITAL LETTER K WITH ACUTE
+1E31,PVALID,LATIN SMALL LETTER K WITH ACUTE
+1E32,DISALLOWED,LATIN CAPITAL LETTER K WITH DOT BELOW
+1E33,PVALID,LATIN SMALL LETTER K WITH DOT BELOW
+1E34,DISALLOWED,LATIN CAPITAL LETTER K WITH LINE BELOW
+1E35,PVALID,LATIN SMALL LETTER K WITH LINE BELOW
+1E36,DISALLOWED,LATIN CAPITAL LETTER L WITH DOT BELOW
+1E37,PVALID,LATIN SMALL LETTER L WITH DOT BELOW
+1E38,DISALLOWED,LATIN CAPITAL LETTER L WITH DOT BELOW AND MACRON
+1E39,PVALID,LATIN SMALL LETTER L WITH DOT BELOW AND MACRON
+1E3A,DISALLOWED,LATIN CAPITAL LETTER L WITH LINE BELOW
+1E3B,PVALID,LATIN SMALL LETTER L WITH LINE BELOW
+1E3C,DISALLOWED,LATIN CAPITAL LETTER L WITH CIRCUMFLEX BELOW
+1E3D,PVALID,LATIN SMALL LETTER L WITH CIRCUMFLEX BELOW
+1E3E,DISALLOWED,LATIN CAPITAL LETTER M WITH ACUTE
+1E3F,PVALID,LATIN SMALL LETTER M WITH ACUTE
+1E40,DISALLOWED,LATIN CAPITAL LETTER M WITH DOT ABOVE
+1E41,PVALID,LATIN SMALL LETTER M WITH DOT ABOVE
+1E42,DISALLOWED,LATIN CAPITAL LETTER M WITH DOT BELOW
+1E43,PVALID,LATIN SMALL LETTER M WITH DOT BELOW
+1E44,DISALLOWED,LATIN CAPITAL LETTER N WITH DOT ABOVE
+1E45,PVALID,LATIN SMALL LETTER N WITH DOT ABOVE
+1E46,DISALLOWED,LATIN CAPITAL LETTER N WITH DOT BELOW
+1E47,PVALID,LATIN SMALL LETTER N WITH DOT BELOW
+1E48,DISALLOWED,LATIN CAPITAL LETTER N WITH LINE BELOW
+1E49,PVALID,LATIN SMALL LETTER N WITH LINE BELOW
+1E4A,DISALLOWED,LATIN CAPITAL LETTER N WITH CIRCUMFLEX BELOW
+1E4B,PVALID,LATIN SMALL LETTER N WITH CIRCUMFLEX BELOW
+1E4C,DISALLOWED,LATIN CAPITAL LETTER O WITH TILDE AND ACUTE
+1E4D,PVALID,LATIN SMALL LETTER O WITH TILDE AND ACUTE
+1E4E,DISALLOWED,LATIN CAPITAL LETTER O WITH TILDE AND DIAERESIS
+1E4F,PVALID,LATIN SMALL LETTER O WITH TILDE AND DIAERESIS
+1E50,DISALLOWED,LATIN CAPITAL LETTER O WITH MACRON AND GRAVE
+1E51,PVALID,LATIN SMALL LETTER O WITH MACRON AND GRAVE
+1E52,DISALLOWED,LATIN CAPITAL LETTER O WITH MACRON AND ACUTE
+1E53,PVALID,LATIN SMALL LETTER O WITH MACRON AND ACUTE
+1E54,DISALLOWED,LATIN CAPITAL LETTER P WITH ACUTE
+1E55,PVALID,LATIN SMALL LETTER P WITH ACUTE
+1E56,DISALLOWED,LATIN CAPITAL LETTER P WITH DOT ABOVE
+1E57,PVALID,LATIN SMALL LETTER P WITH DOT ABOVE
+1E58,DISALLOWED,LATIN CAPITAL LETTER R WITH DOT ABOVE
+1E59,PVALID,LATIN SMALL LETTER R WITH DOT ABOVE
+1E5A,DISALLOWED,LATIN CAPITAL LETTER R WITH DOT BELOW
+1E5B,PVALID,LATIN SMALL LETTER R WITH DOT BELOW
+1E5C,DISALLOWED,LATIN CAPITAL LETTER R WITH DOT BELOW AND MACRON
+1E5D,PVALID,LATIN SMALL LETTER R WITH DOT BELOW AND MACRON
+1E5E,DISALLOWED,LATIN CAPITAL LETTER R WITH LINE BELOW
+1E5F,PVALID,LATIN SMALL LETTER R WITH LINE BELOW
+1E60,DISALLOWED,LATIN CAPITAL LETTER S WITH DOT ABOVE
+1E61,PVALID,LATIN SMALL LETTER S WITH DOT ABOVE
+1E62,DISALLOWED,LATIN CAPITAL LETTER S WITH DOT BELOW
+1E63,PVALID,LATIN SMALL LETTER S WITH DOT BELOW
+1E64,DISALLOWED,LATIN CAPITAL LETTER S WITH ACUTE AND DOT ABOVE
+1E65,PVALID,LATIN SMALL LETTER S WITH ACUTE AND DOT ABOVE
+1E66,DISALLOWED,LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE
+1E67,PVALID,LATIN SMALL LETTER S WITH CARON AND DOT ABOVE
+1E68,DISALLOWED,LATIN CAPITAL LETTER S WITH DOT BELOW AND DOT ABOVE
+1E69,PVALID,LATIN SMALL LETTER S WITH DOT BELOW AND DOT ABOVE
+1E6A,DISALLOWED,LATIN CAPITAL LETTER T WITH DOT ABOVE
+1E6B,PVALID,LATIN SMALL LETTER T WITH DOT ABOVE
+1E6C,DISALLOWED,LATIN CAPITAL LETTER T WITH DOT BELOW
+1E6D,PVALID,LATIN SMALL LETTER T WITH DOT BELOW
+1E6E,DISALLOWED,LATIN CAPITAL LETTER T WITH LINE BELOW
+1E6F,PVALID,LATIN SMALL LETTER T WITH LINE BELOW
+1E70,DISALLOWED,LATIN CAPITAL LETTER T WITH CIRCUMFLEX BELOW
+1E71,PVALID,LATIN SMALL LETTER T WITH CIRCUMFLEX BELOW
+1E72,DISALLOWED,LATIN CAPITAL LETTER U WITH DIAERESIS BELOW
+1E73,PVALID,LATIN SMALL LETTER U WITH DIAERESIS BELOW
+1E74,DISALLOWED,LATIN CAPITAL LETTER U WITH TILDE BELOW
+1E75,PVALID,LATIN SMALL LETTER U WITH TILDE BELOW
+1E76,DISALLOWED,LATIN CAPITAL LETTER U WITH CIRCUMFLEX BELOW
+1E77,PVALID,LATIN SMALL LETTER U WITH CIRCUMFLEX BELOW
+1E78,DISALLOWED,LATIN CAPITAL LETTER U WITH TILDE AND ACUTE
+1E79,PVALID,LATIN SMALL LETTER U WITH TILDE AND ACUTE
+1E7A,DISALLOWED,LATIN CAPITAL LETTER U WITH MACRON AND DIAERESIS
+1E7B,PVALID,LATIN SMALL LETTER U WITH MACRON AND DIAERESIS
+1E7C,DISALLOWED,LATIN CAPITAL LETTER V WITH TILDE
+1E7D,PVALID,LATIN SMALL LETTER V WITH TILDE
+1E7E,DISALLOWED,LATIN CAPITAL LETTER V WITH DOT BELOW
+1E7F,PVALID,LATIN SMALL LETTER V WITH DOT BELOW
+1E80,DISALLOWED,LATIN CAPITAL LETTER W WITH GRAVE
+1E81,PVALID,LATIN SMALL LETTER W WITH GRAVE
+1E82,DISALLOWED,LATIN CAPITAL LETTER W WITH ACUTE
+1E83,PVALID,LATIN SMALL LETTER W WITH ACUTE
+1E84,DISALLOWED,LATIN CAPITAL LETTER W WITH DIAERESIS
+1E85,PVALID,LATIN SMALL LETTER W WITH DIAERESIS
+1E86,DISALLOWED,LATIN CAPITAL LETTER W WITH DOT ABOVE
+1E87,PVALID,LATIN SMALL LETTER W WITH DOT ABOVE
+1E88,DISALLOWED,LATIN CAPITAL LETTER W WITH DOT BELOW
+1E89,PVALID,LATIN SMALL LETTER W WITH DOT BELOW
+1E8A,DISALLOWED,LATIN CAPITAL LETTER X WITH DOT ABOVE
+1E8B,PVALID,LATIN SMALL LETTER X WITH DOT ABOVE
+1E8C,DISALLOWED,LATIN CAPITAL LETTER X WITH DIAERESIS
+1E8D,PVALID,LATIN SMALL LETTER X WITH DIAERESIS
+1E8E,DISALLOWED,LATIN CAPITAL LETTER Y WITH DOT ABOVE
+1E8F,PVALID,LATIN SMALL LETTER Y WITH DOT ABOVE
+1E90,DISALLOWED,LATIN CAPITAL LETTER Z WITH CIRCUMFLEX
+1E91,PVALID,LATIN SMALL LETTER Z WITH CIRCUMFLEX
+1E92,DISALLOWED,LATIN CAPITAL LETTER Z WITH DOT BELOW
+1E93,PVALID,LATIN SMALL LETTER Z WITH DOT BELOW
+1E94,DISALLOWED,LATIN CAPITAL LETTER Z WITH LINE BELOW
+1E95-1E99,PVALID,LATIN SMALL LETTER Z WITH LINE BELOW..LATIN SMALL LETTER Y WITH RING ABOVE
+1E9A-1E9B,DISALLOWED,LATIN SMALL LETTER A WITH RIGHT HALF RING..LATIN SMALL LETTER LONG S WITH DOT ABOVE
+1E9C-1E9D,PVALID,LATIN SMALL LETTER LONG S WITH DIAGONAL STROKE..LATIN SMALL LETTER LONG S WITH HIGH STROKE
+1E9E,DISALLOWED,LATIN CAPITAL LETTER SHARP S
+1E9F,PVALID,LATIN SMALL LETTER DELTA
+1EA0,DISALLOWED,LATIN CAPITAL LETTER A WITH DOT BELOW
+1EA1,PVALID,LATIN SMALL LETTER A WITH DOT BELOW
+1EA2,DISALLOWED,LATIN CAPITAL LETTER A WITH HOOK ABOVE
+1EA3,PVALID,LATIN SMALL LETTER A WITH HOOK ABOVE
+1EA4,DISALLOWED,LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE
+1EA5,PVALID,LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE
+1EA6,DISALLOWED,LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE
+1EA7,PVALID,LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE
+1EA8,DISALLOWED,LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE
+1EA9,PVALID,LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE
+1EAA,DISALLOWED,LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE
+1EAB,PVALID,LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE
+1EAC,DISALLOWED,LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW
+1EAD,PVALID,LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW
+1EAE,DISALLOWED,LATIN CAPITAL LETTER A WITH BREVE AND ACUTE
+1EAF,PVALID,LATIN SMALL LETTER A WITH BREVE AND ACUTE
+1EB0,DISALLOWED,LATIN CAPITAL LETTER A WITH BREVE AND GRAVE
+1EB1,PVALID,LATIN SMALL LETTER A WITH BREVE AND GRAVE
+1EB2,DISALLOWED,LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE
+1EB3,PVALID,LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE
+1EB4,DISALLOWED,LATIN CAPITAL LETTER A WITH BREVE AND TILDE
+1EB5,PVALID,LATIN SMALL LETTER A WITH BREVE AND TILDE
+1EB6,DISALLOWED,LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW
+1EB7,PVALID,LATIN SMALL LETTER A WITH BREVE AND DOT BELOW
+1EB8,DISALLOWED,LATIN CAPITAL LETTER E WITH DOT BELOW
+1EB9,PVALID,LATIN SMALL LETTER E WITH DOT BELOW
+1EBA,DISALLOWED,LATIN CAPITAL LETTER E WITH HOOK ABOVE
+1EBB,PVALID,LATIN SMALL LETTER E WITH HOOK ABOVE
+1EBC,DISALLOWED,LATIN CAPITAL LETTER E WITH TILDE
+1EBD,PVALID,LATIN SMALL LETTER E WITH TILDE
+1EBE,DISALLOWED,LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE
+1EBF,PVALID,LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE
+1EC0,DISALLOWED,LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE
+1EC1,PVALID,LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE
+1EC2,DISALLOWED,LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE
+1EC3,PVALID,LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE
+1EC4,DISALLOWED,LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE
+1EC5,PVALID,LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE
+1EC6,DISALLOWED,LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW
+1EC7,PVALID,LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW
+1EC8,DISALLOWED,LATIN CAPITAL LETTER I WITH HOOK ABOVE
+1EC9,PVALID,LATIN SMALL LETTER I WITH HOOK ABOVE
+1ECA,DISALLOWED,LATIN CAPITAL LETTER I WITH DOT BELOW
+1ECB,PVALID,LATIN SMALL LETTER I WITH DOT BELOW
+1ECC,DISALLOWED,LATIN CAPITAL LETTER O WITH DOT BELOW
+1ECD,PVALID,LATIN SMALL LETTER O WITH DOT BELOW
+1ECE,DISALLOWED,LATIN CAPITAL LETTER O WITH HOOK ABOVE
+1ECF,PVALID,LATIN SMALL LETTER O WITH HOOK ABOVE
+1ED0,DISALLOWED,LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE
+1ED1,PVALID,LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE
+1ED2,DISALLOWED,LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE
+1ED3,PVALID,LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE
+1ED4,DISALLOWED,LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE
+1ED5,PVALID,LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE
+1ED6,DISALLOWED,LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE
+1ED7,PVALID,LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE
+1ED8,DISALLOWED,LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW
+1ED9,PVALID,LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW
+1EDA,DISALLOWED,LATIN CAPITAL LETTER O WITH HORN AND ACUTE
+1EDB,PVALID,LATIN SMALL LETTER O WITH HORN AND ACUTE
+1EDC,DISALLOWED,LATIN CAPITAL LETTER O WITH HORN AND GRAVE
+1EDD,PVALID,LATIN SMALL LETTER O WITH HORN AND GRAVE
+1EDE,DISALLOWED,LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE
+1EDF,PVALID,LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE
+1EE0,DISALLOWED,LATIN CAPITAL LETTER O WITH HORN AND TILDE
+1EE1,PVALID,LATIN SMALL LETTER O WITH HORN AND TILDE
+1EE2,DISALLOWED,LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW
+1EE3,PVALID,LATIN SMALL LETTER O WITH HORN AND DOT BELOW
+1EE4,DISALLOWED,LATIN CAPITAL LETTER U WITH DOT BELOW
+1EE5,PVALID,LATIN SMALL LETTER U WITH DOT BELOW
+1EE6,DISALLOWED,LATIN CAPITAL LETTER U WITH HOOK ABOVE
+1EE7,PVALID,LATIN SMALL LETTER U WITH HOOK ABOVE
+1EE8,DISALLOWED,LATIN CAPITAL LETTER U WITH HORN AND ACUTE
+1EE9,PVALID,LATIN SMALL LETTER U WITH HORN AND ACUTE
+1EEA,DISALLOWED,LATIN CAPITAL LETTER U WITH HORN AND GRAVE
+1EEB,PVALID,LATIN SMALL LETTER U WITH HORN AND GRAVE
+1EEC,DISALLOWED,LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE
+1EED,PVALID,LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE
+1EEE,DISALLOWED,LATIN CAPITAL LETTER U WITH HORN AND TILDE
+1EEF,PVALID,LATIN SMALL LETTER U WITH HORN AND TILDE
+1EF0,DISALLOWED,LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW
+1EF1,PVALID,LATIN SMALL LETTER U WITH HORN AND DOT BELOW
+1EF2,DISALLOWED,LATIN CAPITAL LETTER Y WITH GRAVE
+1EF3,PVALID,LATIN SMALL LETTER Y WITH GRAVE
+1EF4,DISALLOWED,LATIN CAPITAL LETTER Y WITH DOT BELOW
+1EF5,PVALID,LATIN SMALL LETTER Y WITH DOT BELOW
+1EF6,DISALLOWED,LATIN CAPITAL LETTER Y WITH HOOK ABOVE
+1EF7,PVALID,LATIN SMALL LETTER Y WITH HOOK ABOVE
+1EF8,DISALLOWED,LATIN CAPITAL LETTER Y WITH TILDE
+1EF9,PVALID,LATIN SMALL LETTER Y WITH TILDE
+1EFA,DISALLOWED,LATIN CAPITAL LETTER MIDDLE-WELSH LL
+1EFB,PVALID,LATIN SMALL LETTER MIDDLE-WELSH LL
+1EFC,DISALLOWED,LATIN CAPITAL LETTER MIDDLE-WELSH V
+1EFD,PVALID,LATIN SMALL LETTER MIDDLE-WELSH V
+1EFE,DISALLOWED,LATIN CAPITAL LETTER Y WITH LOOP
+1EFF-1F07,PVALID,LATIN SMALL LETTER Y WITH LOOP..GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI
+1F08-1F0F,DISALLOWED,GREEK CAPITAL LETTER ALPHA WITH PSILI..GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI
+1F10-1F15,PVALID,GREEK SMALL LETTER EPSILON WITH PSILI..GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA
+1F16-1F17,UNASSIGNED,<RESERVED>..<RESERVED>
+1F18-1F1D,DISALLOWED,GREEK CAPITAL LETTER EPSILON WITH PSILI..GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA
+1F1E-1F1F,UNASSIGNED,<RESERVED>..<RESERVED>
+1F20-1F27,PVALID,GREEK SMALL LETTER ETA WITH PSILI..GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI
+1F28-1F2F,DISALLOWED,GREEK CAPITAL LETTER ETA WITH PSILI..GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI
+1F30-1F37,PVALID,GREEK SMALL LETTER IOTA WITH PSILI..GREEK SMALL LETTER IOTA WITH DASIA AND PERISPOMENI
+1F38-1F3F,DISALLOWED,GREEK CAPITAL LETTER IOTA WITH PSILI..GREEK CAPITAL LETTER IOTA WITH DASIA AND PERISPOMENI
+1F40-1F45,PVALID,GREEK SMALL LETTER OMICRON WITH PSILI..GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA
+1F46-1F47,UNASSIGNED,<RESERVED>..<RESERVED>
+1F48-1F4D,DISALLOWED,GREEK CAPITAL LETTER OMICRON WITH PSILI..GREEK CAPITAL LETTER OMICRON WITH DASIA AND OXIA
+1F4E-1F4F,UNASSIGNED,<RESERVED>..<RESERVED>
+1F50-1F57,PVALID,GREEK SMALL LETTER UPSILON WITH PSILI..GREEK SMALL LETTER UPSILON WITH DASIA AND PERISPOMENI
+1F58,UNASSIGNED,<RESERVED>
+1F59,DISALLOWED,GREEK CAPITAL LETTER UPSILON WITH DASIA
+1F5A,UNASSIGNED,<RESERVED>
+1F5B,DISALLOWED,GREEK CAPITAL LETTER UPSILON WITH DASIA AND VARIA
+1F5C,UNASSIGNED,<RESERVED>
+1F5D,DISALLOWED,GREEK CAPITAL LETTER UPSILON WITH DASIA AND OXIA
+1F5E,UNASSIGNED,<RESERVED>
+1F5F,DISALLOWED,GREEK CAPITAL LETTER UPSILON WITH DASIA AND PERISPOMENI
+1F60-1F67,PVALID,GREEK SMALL LETTER OMEGA WITH PSILI..GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI
+1F68-1F6F,DISALLOWED,GREEK CAPITAL LETTER OMEGA WITH PSILI..GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI
+1F70,PVALID,GREEK SMALL LETTER ALPHA WITH VARIA
+1F71,DISALLOWED,GREEK SMALL LETTER ALPHA WITH OXIA
+1F72,PVALID,GREEK SMALL LETTER EPSILON WITH VARIA
+1F73,DISALLOWED,GREEK SMALL LETTER EPSILON WITH OXIA
+1F74,PVALID,GREEK SMALL LETTER ETA WITH VARIA
+1F75,DISALLOWED,GREEK SMALL LETTER ETA WITH OXIA
+1F76,PVALID,GREEK SMALL LETTER IOTA WITH VARIA
+1F77,DISALLOWED,GREEK SMALL LETTER IOTA WITH OXIA
+1F78,PVALID,GREEK SMALL LETTER OMICRON WITH VARIA
+1F79,DISALLOWED,GREEK SMALL LETTER OMICRON WITH OXIA
+1F7A,PVALID,GREEK SMALL LETTER UPSILON WITH VARIA
+1F7B,DISALLOWED,GREEK SMALL LETTER UPSILON WITH OXIA
+1F7C,PVALID,GREEK SMALL LETTER OMEGA WITH VARIA
+1F7D,DISALLOWED,GREEK SMALL LETTER OMEGA WITH OXIA
+1F7E-1F7F,UNASSIGNED,<RESERVED>..<RESERVED>
+1F80-1FAF,DISALLOWED,GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI..GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
+1FB0-1FB1,PVALID,GREEK SMALL LETTER ALPHA WITH VRACHY..GREEK SMALL LETTER ALPHA WITH MACRON
+1FB2-1FB4,DISALLOWED,GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI..GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI
+1FB5,UNASSIGNED,<RESERVED>
+1FB6,PVALID,GREEK SMALL LETTER ALPHA WITH PERISPOMENI
+1FB7-1FC4,DISALLOWED,GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI..GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI
+1FC5,UNASSIGNED,<RESERVED>
+1FC6,PVALID,GREEK SMALL LETTER ETA WITH PERISPOMENI
+1FC7-1FCF,DISALLOWED,GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI..GREEK PSILI AND PERISPOMENI
+1FD0-1FD2,PVALID,GREEK SMALL LETTER IOTA WITH VRACHY..GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA
+1FD3,DISALLOWED,GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA
+1FD4-1FD5,UNASSIGNED,<RESERVED>..<RESERVED>
+1FD6-1FD7,PVALID,GREEK SMALL LETTER IOTA WITH PERISPOMENI..GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI
+1FD8-1FDB,DISALLOWED,GREEK CAPITAL LETTER IOTA WITH VRACHY..GREEK CAPITAL LETTER IOTA WITH OXIA
+1FDC,UNASSIGNED,<RESERVED>
+1FDD-1FDF,DISALLOWED,GREEK DASIA AND VARIA..GREEK DASIA AND PERISPOMENI
+1FE0-1FE2,PVALID,GREEK SMALL LETTER UPSILON WITH VRACHY..GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA
+1FE3,DISALLOWED,GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA
+1FE4-1FE7,PVALID,GREEK SMALL LETTER RHO WITH PSILI..GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI
+1FE8-1FEF,DISALLOWED,GREEK CAPITAL LETTER UPSILON WITH VRACHY..GREEK VARIA
+1FF0-1FF1,UNASSIGNED,<RESERVED>..<RESERVED>
+1FF2-1FF4,DISALLOWED,GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI..GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI
+1FF5,UNASSIGNED,<RESERVED>
+1FF6,PVALID,GREEK SMALL LETTER OMEGA WITH PERISPOMENI
+1FF7-1FFE,DISALLOWED,GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI..GREEK DASIA
+1FFF,UNASSIGNED,<RESERVED>
+2000-200B,DISALLOWED,EN QUAD..ZERO WIDTH SPACE
+200C-200D,CONTEXTJ,ZERO WIDTH NON-JOINER..ZERO WIDTH JOINER
+200E-2064,DISALLOWED,LEFT-TO-RIGHT MARK..INVISIBLE PLUS
+2065-2069,UNASSIGNED,<RESERVED>..<RESERVED>
+206A-2071,DISALLOWED,INHIBIT SYMMETRIC SWAPPING..SUPERSCRIPT LATIN SMALL LETTER I
+2072-2073,UNASSIGNED,<RESERVED>..<RESERVED>
+2074-208E,DISALLOWED,SUPERSCRIPT FOUR..SUBSCRIPT RIGHT PARENTHESIS
+208F,UNASSIGNED,<RESERVED>
+2090-2094,DISALLOWED,LATIN SUBSCRIPT SMALL LETTER A..LATIN SUBSCRIPT SMALL LETTER SCHWA
+2095-209F,UNASSIGNED,<RESERVED>..<RESERVED>
+20A0-20B8,DISALLOWED,EURO-CURRENCY SIGN..TENGE SIGN
+20B9-20CF,UNASSIGNED,<RESERVED>..<RESERVED>
+20D0-20F0,DISALLOWED,COMBINING LEFT HARPOON ABOVE..COMBINING ASTERISK ABOVE
+20F1-20FF,UNASSIGNED,<RESERVED>..<RESERVED>
+2100-214D,DISALLOWED,ACCOUNT OF..AKTIESELSKAB
+214E,PVALID,TURNED SMALL F
+214F-2183,DISALLOWED,SYMBOL FOR SAMARITAN SOURCE..ROMAN NUMERAL REVERSED ONE HUNDRED
+2184,PVALID,LATIN SMALL LETTER REVERSED C
+2185-2189,DISALLOWED,ROMAN NUMERAL SIX LATE FORM..VULGAR FRACTION ZERO THIRDS
+218A-218F,UNASSIGNED,<RESERVED>..<RESERVED>
+2190-23E8,DISALLOWED,LEFTWARDS ARROW..DECIMAL EXPONENT SYMBOL
+23E9-23FF,UNASSIGNED,<RESERVED>..<RESERVED>
+2400-2426,DISALLOWED,SYMBOL FOR NULL..SYMBOL FOR SUBSTITUTE FORM TWO
+2427-243F,UNASSIGNED,<RESERVED>..<RESERVED>
+2440-244A,DISALLOWED,OCR HOOK..OCR DOUBLE BACKSLASH
+244B-245F,UNASSIGNED,<RESERVED>..<RESERVED>
+2460-26CD,DISALLOWED,CIRCLED DIGIT ONE..DISABLED CAR
+26CE,UNASSIGNED,<RESERVED>
+26CF-26E1,DISALLOWED,PICK..RESTRICTED LEFT ENTRY-2
+26E2,UNASSIGNED,<RESERVED>
+26E3,DISALLOWED,HEAVY CIRCLE WITH STROKE AND TWO DOTS ABOVE
+26E4-26E7,UNASSIGNED,<RESERVED>..<RESERVED>
+26E8-26FF,DISALLOWED,BLACK CROSS ON SHIELD..WHITE FLAG WITH HORIZONTAL MIDDLE BLACK STRIPE
+2700,UNASSIGNED,<RESERVED>
+2701-2704,DISALLOWED,UPPER BLADE SCISSORS..WHITE SCISSORS
+2705,UNASSIGNED,<RESERVED>
+2706-2709,DISALLOWED,TELEPHONE LOCATION SIGN..ENVELOPE
+270A-270B,UNASSIGNED,<RESERVED>..<RESERVED>
+270C-2727,DISALLOWED,VICTORY HAND..WHITE FOUR POINTED STAR
+2728,UNASSIGNED,<RESERVED>
+2729-274B,DISALLOWED,STRESS OUTLINED WHITE STAR..HEAVY EIGHT TEARDROP-SPOKED PROPELLER ASTERISK
+274C,UNASSIGNED,<RESERVED>
+274D,DISALLOWED,SHADOWED WHITE CIRCLE
+274E,UNASSIGNED,<RESERVED>
+274F-2752,DISALLOWED,LOWER RIGHT DROP-SHADOWED WHITE SQUARE..UPPER RIGHT SHADOWED WHITE SQUARE
+2753-2755,UNASSIGNED,<RESERVED>..<RESERVED>
+2756-275E,DISALLOWED,BLACK DIAMOND MINUS WHITE X..HEAVY DOUBLE COMMA QUOTATION MARK ORNAMENT
+275F-2760,UNASSIGNED,<RESERVED>..<RESERVED>
+2761-2794,DISALLOWED,CURVED STEM PARAGRAPH SIGN ORNAMENT..HEAVY WIDE-HEADED RIGHTWARDS ARROW
+2795-2797,UNASSIGNED,<RESERVED>..<RESERVED>
+2798-27AF,DISALLOWED,HEAVY SOUTH EAST ARROW..NOTCHED LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW
+27B0,UNASSIGNED,<RESERVED>
+27B1-27BE,DISALLOWED,NOTCHED UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW..OPEN-OUTLINED RIGHTWARDS ARROW
+27BF,UNASSIGNED,<RESERVED>
+27C0-27CA,DISALLOWED,THREE DIMENSIONAL ANGLE..VERTICAL BAR WITH HORIZONTAL STROKE
+27CB,UNASSIGNED,<RESERVED>
+27CC,DISALLOWED,LONG DIVISION
+27CD-27CF,UNASSIGNED,<RESERVED>..<RESERVED>
+27D0-2B4C,DISALLOWED,WHITE DIAMOND WITH CENTRED DOT..RIGHTWARDS ARROW ABOVE REVERSE TILDE OPERATOR
+2B4D-2B4F,UNASSIGNED,<RESERVED>..<RESERVED>
+2B50-2B59,DISALLOWED,WHITE MEDIUM STAR..HEAVY CIRCLED SALTIRE
+2B5A-2BFF,UNASSIGNED,<RESERVED>..<RESERVED>
+2C00-2C2E,DISALLOWED,GLAGOLITIC CAPITAL LETTER AZU..GLAGOLITIC CAPITAL LETTER LATINATE MYSLITE
+2C2F,UNASSIGNED,<RESERVED>
+2C30-2C5E,PVALID,GLAGOLITIC SMALL LETTER AZU..GLAGOLITIC SMALL LETTER LATINATE MYSLITE
+2C5F,UNASSIGNED,<RESERVED>
+2C60,DISALLOWED,LATIN CAPITAL LETTER L WITH DOUBLE BAR
+2C61,PVALID,LATIN SMALL LETTER L WITH DOUBLE BAR
+2C62-2C64,DISALLOWED,LATIN CAPITAL LETTER L WITH MIDDLE TILDE..LATIN CAPITAL LETTER R WITH TAIL
+2C65-2C66,PVALID,LATIN SMALL LETTER A WITH STROKE..LATIN SMALL LETTER T WITH DIAGONAL STROKE
+2C67,DISALLOWED,LATIN CAPITAL LETTER H WITH DESCENDER
+2C68,PVALID,LATIN SMALL LETTER H WITH DESCENDER
+2C69,DISALLOWED,LATIN CAPITAL LETTER K WITH DESCENDER
+2C6A,PVALID,LATIN SMALL LETTER K WITH DESCENDER
+2C6B,DISALLOWED,LATIN CAPITAL LETTER Z WITH DESCENDER
+2C6C,PVALID,LATIN SMALL LETTER Z WITH DESCENDER
+2C6D-2C70,DISALLOWED,LATIN CAPITAL LETTER ALPHA..LATIN CAPITAL LETTER TURNED ALPHA
+2C71,PVALID,LATIN SMALL LETTER V WITH RIGHT HOOK
+2C72,DISALLOWED,LATIN CAPITAL LETTER W WITH HOOK
+2C73-2C74,PVALID,LATIN SMALL LETTER W WITH HOOK..LATIN SMALL LETTER V WITH CURL
+2C75,DISALLOWED,LATIN CAPITAL LETTER HALF H
+2C76-2C7B,PVALID,LATIN SMALL LETTER HALF H..LATIN LETTER SMALL CAPITAL TURNED E
+2C7C-2C80,DISALLOWED,LATIN SUBSCRIPT SMALL LETTER J..COPTIC CAPITAL LETTER ALFA
+2C81,PVALID,COPTIC SMALL LETTER ALFA
+2C82,DISALLOWED,COPTIC CAPITAL LETTER VIDA
+2C83,PVALID,COPTIC SMALL LETTER VIDA
+2C84,DISALLOWED,COPTIC CAPITAL LETTER GAMMA
+2C85,PVALID,COPTIC SMALL LETTER GAMMA
+2C86,DISALLOWED,COPTIC CAPITAL LETTER DALDA
+2C87,PVALID,COPTIC SMALL LETTER DALDA
+2C88,DISALLOWED,COPTIC CAPITAL LETTER EIE
+2C89,PVALID,COPTIC SMALL LETTER EIE
+2C8A,DISALLOWED,COPTIC CAPITAL LETTER SOU
+2C8B,PVALID,COPTIC SMALL LETTER SOU
+2C8C,DISALLOWED,COPTIC CAPITAL LETTER ZATA
+2C8D,PVALID,COPTIC SMALL LETTER ZATA
+2C8E,DISALLOWED,COPTIC CAPITAL LETTER HATE
+2C8F,PVALID,COPTIC SMALL LETTER HATE
+2C90,DISALLOWED,COPTIC CAPITAL LETTER THETHE
+2C91,PVALID,COPTIC SMALL LETTER THETHE
+2C92,DISALLOWED,COPTIC CAPITAL LETTER IAUDA
+2C93,PVALID,COPTIC SMALL LETTER IAUDA
+2C94,DISALLOWED,COPTIC CAPITAL LETTER KAPA
+2C95,PVALID,COPTIC SMALL LETTER KAPA
+2C96,DISALLOWED,COPTIC CAPITAL LETTER LAULA
+2C97,PVALID,COPTIC SMALL LETTER LAULA
+2C98,DISALLOWED,COPTIC CAPITAL LETTER MI
+2C99,PVALID,COPTIC SMALL LETTER MI
+2C9A,DISALLOWED,COPTIC CAPITAL LETTER NI
+2C9B,PVALID,COPTIC SMALL LETTER NI
+2C9C,DISALLOWED,COPTIC CAPITAL LETTER KSI
+2C9D,PVALID,COPTIC SMALL LETTER KSI
+2C9E,DISALLOWED,COPTIC CAPITAL LETTER O
+2C9F,PVALID,COPTIC SMALL LETTER O
+2CA0,DISALLOWED,COPTIC CAPITAL LETTER PI
+2CA1,PVALID,COPTIC SMALL LETTER PI
+2CA2,DISALLOWED,COPTIC CAPITAL LETTER RO
+2CA3,PVALID,COPTIC SMALL LETTER RO
+2CA4,DISALLOWED,COPTIC CAPITAL LETTER SIMA
+2CA5,PVALID,COPTIC SMALL LETTER SIMA
+2CA6,DISALLOWED,COPTIC CAPITAL LETTER TAU
+2CA7,PVALID,COPTIC SMALL LETTER TAU
+2CA8,DISALLOWED,COPTIC CAPITAL LETTER UA
+2CA9,PVALID,COPTIC SMALL LETTER UA
+2CAA,DISALLOWED,COPTIC CAPITAL LETTER FI
+2CAB,PVALID,COPTIC SMALL LETTER FI
+2CAC,DISALLOWED,COPTIC CAPITAL LETTER KHI
+2CAD,PVALID,COPTIC SMALL LETTER KHI
+2CAE,DISALLOWED,COPTIC CAPITAL LETTER PSI
+2CAF,PVALID,COPTIC SMALL LETTER PSI
+2CB0,DISALLOWED,COPTIC CAPITAL LETTER OOU
+2CB1,PVALID,COPTIC SMALL LETTER OOU
+2CB2,DISALLOWED,COPTIC CAPITAL LETTER DIALECT-P ALEF
+2CB3,PVALID,COPTIC SMALL LETTER DIALECT-P ALEF
+2CB4,DISALLOWED,COPTIC CAPITAL LETTER OLD COPTIC AIN
+2CB5,PVALID,COPTIC SMALL LETTER OLD COPTIC AIN
+2CB6,DISALLOWED,COPTIC CAPITAL LETTER CRYPTOGRAMMIC EIE
+2CB7,PVALID,COPTIC SMALL LETTER CRYPTOGRAMMIC EIE
+2CB8,DISALLOWED,COPTIC CAPITAL LETTER DIALECT-P KAPA
+2CB9,PVALID,COPTIC SMALL LETTER DIALECT-P KAPA
+2CBA,DISALLOWED,COPTIC CAPITAL LETTER DIALECT-P NI
+2CBB,PVALID,COPTIC SMALL LETTER DIALECT-P NI
+2CBC,DISALLOWED,COPTIC CAPITAL LETTER CRYPTOGRAMMIC NI
+2CBD,PVALID,COPTIC SMALL LETTER CRYPTOGRAMMIC NI
+2CBE,DISALLOWED,COPTIC CAPITAL LETTER OLD COPTIC OOU
+2CBF,PVALID,COPTIC SMALL LETTER OLD COPTIC OOU
+2CC0,DISALLOWED,COPTIC CAPITAL LETTER SAMPI
+2CC1,PVALID,COPTIC SMALL LETTER SAMPI
+2CC2,DISALLOWED,COPTIC CAPITAL LETTER CROSSED SHEI
+2CC3,PVALID,COPTIC SMALL LETTER CROSSED SHEI
+2CC4,DISALLOWED,COPTIC CAPITAL LETTER OLD COPTIC SHEI
+2CC5,PVALID,COPTIC SMALL LETTER OLD COPTIC SHEI
+2CC6,DISALLOWED,COPTIC CAPITAL LETTER OLD COPTIC ESH
+2CC7,PVALID,COPTIC SMALL LETTER OLD COPTIC ESH
+2CC8,DISALLOWED,COPTIC CAPITAL LETTER AKHMIMIC KHEI
+2CC9,PVALID,COPTIC SMALL LETTER AKHMIMIC KHEI
+2CCA,DISALLOWED,COPTIC CAPITAL LETTER DIALECT-P HORI
+2CCB,PVALID,COPTIC SMALL LETTER DIALECT-P HORI
+2CCC,DISALLOWED,COPTIC CAPITAL LETTER OLD COPTIC HORI
+2CCD,PVALID,COPTIC SMALL LETTER OLD COPTIC HORI
+2CCE,DISALLOWED,COPTIC CAPITAL LETTER OLD COPTIC HA
+2CCF,PVALID,COPTIC SMALL LETTER OLD COPTIC HA
+2CD0,DISALLOWED,COPTIC CAPITAL LETTER L-SHAPED HA
+2CD1,PVALID,COPTIC SMALL LETTER L-SHAPED HA
+2CD2,DISALLOWED,COPTIC CAPITAL LETTER OLD COPTIC HEI
+2CD3,PVALID,COPTIC SMALL LETTER OLD COPTIC HEI
+2CD4,DISALLOWED,COPTIC CAPITAL LETTER OLD COPTIC HAT
+2CD5,PVALID,COPTIC SMALL LETTER OLD COPTIC HAT
+2CD6,DISALLOWED,COPTIC CAPITAL LETTER OLD COPTIC GANGIA
+2CD7,PVALID,COPTIC SMALL LETTER OLD COPTIC GANGIA
+2CD8,DISALLOWED,COPTIC CAPITAL LETTER OLD COPTIC DJA
+2CD9,PVALID,COPTIC SMALL LETTER OLD COPTIC DJA
+2CDA,DISALLOWED,COPTIC CAPITAL LETTER OLD COPTIC SHIMA
+2CDB,PVALID,COPTIC SMALL LETTER OLD COPTIC SHIMA
+2CDC,DISALLOWED,COPTIC CAPITAL LETTER OLD NUBIAN SHIMA
+2CDD,PVALID,COPTIC SMALL LETTER OLD NUBIAN SHIMA
+2CDE,DISALLOWED,COPTIC CAPITAL LETTER OLD NUBIAN NGI
+2CDF,PVALID,COPTIC SMALL LETTER OLD NUBIAN NGI
+2CE0,DISALLOWED,COPTIC CAPITAL LETTER OLD NUBIAN NYI
+2CE1,PVALID,COPTIC SMALL LETTER OLD NUBIAN NYI
+2CE2,DISALLOWED,COPTIC CAPITAL LETTER OLD NUBIAN WAU
+2CE3-2CE4,PVALID,COPTIC SMALL LETTER OLD NUBIAN WAU..COPTIC SYMBOL KAI
+2CE5-2CEB,DISALLOWED,COPTIC SYMBOL MI RO..COPTIC CAPITAL LETTER CRYPTOGRAMMIC SHEI
+2CEC,PVALID,COPTIC SMALL LETTER CRYPTOGRAMMIC SHEI
+2CED,DISALLOWED,COPTIC CAPITAL LETTER CRYPTOGRAMMIC GANGIA
+2CEE-2CF1,PVALID,COPTIC SMALL LETTER CRYPTOGRAMMIC GANGIA..COPTIC COMBINING SPIRITUS LENIS
+2CF2-2CF8,UNASSIGNED,<RESERVED>..<RESERVED>
+2CF9-2CFF,DISALLOWED,COPTIC OLD NUBIAN FULL STOP..COPTIC MORPHOLOGICAL DIVIDER
+2D00-2D25,PVALID,GEORGIAN SMALL LETTER AN..GEORGIAN SMALL LETTER HOE
+2D26-2D2F,UNASSIGNED,<RESERVED>..<RESERVED>
+2D30-2D65,PVALID,TIFINAGH LETTER YA..TIFINAGH LETTER YAZZ
+2D66-2D6E,UNASSIGNED,<RESERVED>..<RESERVED>
+2D6F,DISALLOWED,TIFINAGH MODIFIER LETTER LABIALIZATION MARK
+2D70-2D7F,UNASSIGNED,<RESERVED>..<RESERVED>
+2D80-2D96,PVALID,ETHIOPIC SYLLABLE LOA..ETHIOPIC SYLLABLE GGWE
+2D97-2D9F,UNASSIGNED,<RESERVED>..<RESERVED>
+2DA0-2DA6,PVALID,ETHIOPIC SYLLABLE SSA..ETHIOPIC SYLLABLE SSO
+2DA7,UNASSIGNED,<RESERVED>
+2DA8-2DAE,PVALID,ETHIOPIC SYLLABLE CCA..ETHIOPIC SYLLABLE CCO
+2DAF,UNASSIGNED,<RESERVED>
+2DB0-2DB6,PVALID,ETHIOPIC SYLLABLE ZZA..ETHIOPIC SYLLABLE ZZO
+2DB7,UNASSIGNED,<RESERVED>
+2DB8-2DBE,PVALID,ETHIOPIC SYLLABLE CCHA..ETHIOPIC SYLLABLE CCHO
+2DBF,UNASSIGNED,<RESERVED>
+2DC0-2DC6,PVALID,ETHIOPIC SYLLABLE QYA..ETHIOPIC SYLLABLE QYO
+2DC7,UNASSIGNED,<RESERVED>
+2DC8-2DCE,PVALID,ETHIOPIC SYLLABLE KYA..ETHIOPIC SYLLABLE KYO
+2DCF,UNASSIGNED,<RESERVED>
+2DD0-2DD6,PVALID,ETHIOPIC SYLLABLE XYA..ETHIOPIC SYLLABLE XYO
+2DD7,UNASSIGNED,<RESERVED>
+2DD8-2DDE,PVALID,ETHIOPIC SYLLABLE GYA..ETHIOPIC SYLLABLE GYO
+2DDF,UNASSIGNED,<RESERVED>
+2DE0-2DFF,PVALID,COMBINING CYRILLIC LETTER BE..COMBINING CYRILLIC LETTER IOTIFIED BIG YUS
+2E00-2E2E,DISALLOWED,RIGHT ANGLE SUBSTITUTION MARKER..REVERSED QUESTION MARK
+2E2F,PVALID,VERTICAL TILDE
+2E30-2E31,DISALLOWED,RING POINT..WORD SEPARATOR MIDDLE DOT
+2E32-2E7F,UNASSIGNED,<RESERVED>..<RESERVED>
+2E80-2E99,DISALLOWED,CJK RADICAL REPEAT..CJK RADICAL RAP
+2E9A,UNASSIGNED,<RESERVED>
+2E9B-2EF3,DISALLOWED,CJK RADICAL CHOKE..CJK RADICAL C-SIMPLIFIED TURTLE
+2EF4-2EFF,UNASSIGNED,<RESERVED>..<RESERVED>
+2F00-2FD5,DISALLOWED,KANGXI RADICAL ONE..KANGXI RADICAL FLUTE
+2FD6-2FEF,UNASSIGNED,<RESERVED>..<RESERVED>
+2FF0-2FFB,DISALLOWED,IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO RIGHT..IDEOGRAPHIC DESCRIPTION CHARACTER OVERLAID
+2FFC-2FFF,UNASSIGNED,<RESERVED>..<RESERVED>
+3000-3004,DISALLOWED,IDEOGRAPHIC SPACE..JAPANESE INDUSTRIAL STANDARD SYMBOL
+3005-3007,PVALID,IDEOGRAPHIC ITERATION MARK..IDEOGRAPHIC NUMBER ZERO
+3008-3029,DISALLOWED,LEFT ANGLE BRACKET..HANGZHOU NUMERAL NINE
+302A-302D,PVALID,IDEOGRAPHIC LEVEL TONE MARK..IDEOGRAPHIC ENTERING TONE MARK
+302E-303B,DISALLOWED,HANGUL SINGLE DOT TONE MARK..VERTICAL IDEOGRAPHIC ITERATION MARK
+303C,PVALID,MASU MARK
+303D-303F,DISALLOWED,PART ALTERNATION MARK..IDEOGRAPHIC HALF FILL SPACE
+3040,UNASSIGNED,<RESERVED>
+3041-3096,PVALID,HIRAGANA LETTER SMALL A..HIRAGANA LETTER SMALL KE
+3097-3098,UNASSIGNED,<RESERVED>..<RESERVED>
+3099-309A,PVALID,COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
+309B-309C,DISALLOWED,KATAKANA-HIRAGANA VOICED SOUND MARK..KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
+309D-309E,PVALID,HIRAGANA ITERATION MARK..HIRAGANA VOICED ITERATION MARK
+309F-30A0,DISALLOWED,HIRAGANA DIGRAPH YORI..KATAKANA-HIRAGANA DOUBLE HYPHEN
+30A1-30FA,PVALID,KATAKANA LETTER SMALL A..KATAKANA LETTER VO
+30FB,CONTEXTO,KATAKANA MIDDLE DOT
+30FC-30FE,PVALID,KATAKANA-HIRAGANA PROLONGED SOUND MARK..KATAKANA VOICED ITERATION MARK
+30FF,DISALLOWED,KATAKANA DIGRAPH KOTO
+3100-3104,UNASSIGNED,<RESERVED>..<RESERVED>
+3105-312D,PVALID,BOPOMOFO LETTER B..BOPOMOFO LETTER IH
+312E-3130,UNASSIGNED,<RESERVED>..<RESERVED>
+3131-318E,DISALLOWED,HANGUL LETTER KIYEOK..HANGUL LETTER ARAEAE
+318F,UNASSIGNED,<RESERVED>
+3190-319F,DISALLOWED,IDEOGRAPHIC ANNOTATION LINKING MARK..IDEOGRAPHIC ANNOTATION MAN MARK
+31A0-31B7,PVALID,BOPOMOFO LETTER BU..BOPOMOFO FINAL LETTER H
+31B8-31BF,UNASSIGNED,<RESERVED>..<RESERVED>
+31C0-31E3,DISALLOWED,CJK STROKE T..CJK STROKE Q
+31E4-31EF,UNASSIGNED,<RESERVED>..<RESERVED>
+31F0-31FF,PVALID,KATAKANA LETTER SMALL KU..KATAKANA LETTER SMALL RO
+3200-321E,DISALLOWED,PARENTHESIZED HANGUL KIYEOK..PARENTHESIZED KOREAN CHARACTER O HU
+321F,UNASSIGNED,<RESERVED>
+3220-32FE,DISALLOWED,PARENTHESIZED IDEOGRAPH ONE..CIRCLED KATAKANA WO
+32FF,UNASSIGNED,<RESERVED>
+3300-33FF,DISALLOWED,SQUARE APAATO..SQUARE GAL
+3400-4DB5,PVALID,"<CJK IDEOGRAPH EXTENSION A, FIRST>..<CJK IDEOGRAPH EXTENSION A, LAST>"
+4DB6-4DBF,UNASSIGNED,<RESERVED>..<RESERVED>
+4DC0-4DFF,DISALLOWED,HEXAGRAM FOR THE CREATIVE HEAVEN..HEXAGRAM FOR BEFORE COMPLETION
+4E00-9FCB,PVALID,"<CJK IDEOGRAPH, FIRST>..<CJK IDEOGRAPH, LAST>"
+9FCC-9FFF,UNASSIGNED,<RESERVED>..<RESERVED>
+A000-A48C,PVALID,YI SYLLABLE IT..YI SYLLABLE YYR
+A48D-A48F,UNASSIGNED,<RESERVED>..<RESERVED>
+A490-A4C6,DISALLOWED,YI RADICAL QOT..YI RADICAL KE
+A4C7-A4CF,UNASSIGNED,<RESERVED>..<RESERVED>
+A4D0-A4FD,PVALID,LISU LETTER BA..LISU LETTER TONE MYA JEU
+A4FE-A4FF,DISALLOWED,LISU PUNCTUATION COMMA..LISU PUNCTUATION FULL STOP
+A500-A60C,PVALID,VAI SYLLABLE EE..VAI SYLLABLE LENGTHENER
+A60D-A60F,DISALLOWED,VAI COMMA..VAI QUESTION MARK
+A610-A62B,PVALID,VAI SYLLABLE NDOLE FA..VAI SYLLABLE NDOLE DO
+A62C-A63F,UNASSIGNED,<RESERVED>..<RESERVED>
+A640,DISALLOWED,CYRILLIC CAPITAL LETTER ZEMLYA
+A641,PVALID,CYRILLIC SMALL LETTER ZEMLYA
+A642,DISALLOWED,CYRILLIC CAPITAL LETTER DZELO
+A643,PVALID,CYRILLIC SMALL LETTER DZELO
+A644,DISALLOWED,CYRILLIC CAPITAL LETTER REVERSED DZE
+A645,PVALID,CYRILLIC SMALL LETTER REVERSED DZE
+A646,DISALLOWED,CYRILLIC CAPITAL LETTER IOTA
+A647,PVALID,CYRILLIC SMALL LETTER IOTA
+A648,DISALLOWED,CYRILLIC CAPITAL LETTER DJERV
+A649,PVALID,CYRILLIC SMALL LETTER DJERV
+A64A,DISALLOWED,CYRILLIC CAPITAL LETTER MONOGRAPH UK
+A64B,PVALID,CYRILLIC SMALL LETTER MONOGRAPH UK
+A64C,DISALLOWED,CYRILLIC CAPITAL LETTER BROAD OMEGA
+A64D,PVALID,CYRILLIC SMALL LETTER BROAD OMEGA
+A64E,DISALLOWED,CYRILLIC CAPITAL LETTER NEUTRAL YER
+A64F,PVALID,CYRILLIC SMALL LETTER NEUTRAL YER
+A650,DISALLOWED,CYRILLIC CAPITAL LETTER YERU WITH BACK YER
+A651,PVALID,CYRILLIC SMALL LETTER YERU WITH BACK YER
+A652,DISALLOWED,CYRILLIC CAPITAL LETTER IOTIFIED YAT
+A653,PVALID,CYRILLIC SMALL LETTER IOTIFIED YAT
+A654,DISALLOWED,CYRILLIC CAPITAL LETTER REVERSED YU
+A655,PVALID,CYRILLIC SMALL LETTER REVERSED YU
+A656,DISALLOWED,CYRILLIC CAPITAL LETTER IOTIFIED A
+A657,PVALID,CYRILLIC SMALL LETTER IOTIFIED A
+A658,DISALLOWED,CYRILLIC CAPITAL LETTER CLOSED LITTLE YUS
+A659,PVALID,CYRILLIC SMALL LETTER CLOSED LITTLE YUS
+A65A,DISALLOWED,CYRILLIC CAPITAL LETTER BLENDED YUS
+A65B,PVALID,CYRILLIC SMALL LETTER BLENDED YUS
+A65C,DISALLOWED,CYRILLIC CAPITAL LETTER IOTIFIED CLOSED LITTLE YUS
+A65D,PVALID,CYRILLIC SMALL LETTER IOTIFIED CLOSED LITTLE YUS
+A65E,DISALLOWED,CYRILLIC CAPITAL LETTER YN
+A65F,PVALID,CYRILLIC SMALL LETTER YN
+A660-A661,UNASSIGNED,<RESERVED>..<RESERVED>
+A662,DISALLOWED,CYRILLIC CAPITAL LETTER SOFT DE
+A663,PVALID,CYRILLIC SMALL LETTER SOFT DE
+A664,DISALLOWED,CYRILLIC CAPITAL LETTER SOFT EL
+A665,PVALID,CYRILLIC SMALL LETTER SOFT EL
+A666,DISALLOWED,CYRILLIC CAPITAL LETTER SOFT EM
+A667,PVALID,CYRILLIC SMALL LETTER SOFT EM
+A668,DISALLOWED,CYRILLIC CAPITAL LETTER MONOCULAR O
+A669,PVALID,CYRILLIC SMALL LETTER MONOCULAR O
+A66A,DISALLOWED,CYRILLIC CAPITAL LETTER BINOCULAR O
+A66B,PVALID,CYRILLIC SMALL LETTER BINOCULAR O
+A66C,DISALLOWED,CYRILLIC CAPITAL LETTER DOUBLE MONOCULAR O
+A66D-A66F,PVALID,CYRILLIC SMALL LETTER DOUBLE MONOCULAR O..COMBINING CYRILLIC VZMET
+A670-A673,DISALLOWED,COMBINING CYRILLIC TEN MILLIONS SIGN..SLAVONIC ASTERISK
+A674-A67B,UNASSIGNED,<RESERVED>..<RESERVED>
+A67C-A67D,PVALID,COMBINING CYRILLIC KAVYKA..COMBINING CYRILLIC PAYEROK
+A67E,DISALLOWED,CYRILLIC KAVYKA
+A67F,PVALID,CYRILLIC PAYEROK
+A680,DISALLOWED,CYRILLIC CAPITAL LETTER DWE
+A681,PVALID,CYRILLIC SMALL LETTER DWE
+A682,DISALLOWED,CYRILLIC CAPITAL LETTER DZWE
+A683,PVALID,CYRILLIC SMALL LETTER DZWE
+A684,DISALLOWED,CYRILLIC CAPITAL LETTER ZHWE
+A685,PVALID,CYRILLIC SMALL LETTER ZHWE
+A686,DISALLOWED,CYRILLIC CAPITAL LETTER CCHE
+A687,PVALID,CYRILLIC SMALL LETTER CCHE
+A688,DISALLOWED,CYRILLIC CAPITAL LETTER DZZE
+A689,PVALID,CYRILLIC SMALL LETTER DZZE
+A68A,DISALLOWED,CYRILLIC CAPITAL LETTER TE WITH MIDDLE HOOK
+A68B,PVALID,CYRILLIC SMALL LETTER TE WITH MIDDLE HOOK
+A68C,DISALLOWED,CYRILLIC CAPITAL LETTER TWE
+A68D,PVALID,CYRILLIC SMALL LETTER TWE
+A68E,DISALLOWED,CYRILLIC CAPITAL LETTER TSWE
+A68F,PVALID,CYRILLIC SMALL LETTER TSWE
+A690,DISALLOWED,CYRILLIC CAPITAL LETTER TSSE
+A691,PVALID,CYRILLIC SMALL LETTER TSSE
+A692,DISALLOWED,CYRILLIC CAPITAL LETTER TCHE
+A693,PVALID,CYRILLIC SMALL LETTER TCHE
+A694,DISALLOWED,CYRILLIC CAPITAL LETTER HWE
+A695,PVALID,CYRILLIC SMALL LETTER HWE
+A696,DISALLOWED,CYRILLIC CAPITAL LETTER SHWE
+A697,PVALID,CYRILLIC SMALL LETTER SHWE
+A698-A69F,UNASSIGNED,<RESERVED>..<RESERVED>
+A6A0-A6E5,PVALID,BAMUM LETTER A..BAMUM LETTER KI
+A6E6-A6EF,DISALLOWED,BAMUM LETTER MO..BAMUM LETTER KOGHOM
+A6F0-A6F1,PVALID,BAMUM COMBINING MARK KOQNDON..BAMUM COMBINING MARK TUKWENTIS
+A6F2-A6F7,DISALLOWED,BAMUM NJAEMLI..BAMUM QUESTION MARK
+A6F8-A6FF,UNASSIGNED,<RESERVED>..<RESERVED>
+A700-A716,DISALLOWED,MODIFIER LETTER CHINESE TONE YIN PING..MODIFIER LETTER EXTRA-LOW LEFT-STEM TONE BAR
+A717-A71F,PVALID,MODIFIER LETTER DOT VERTICAL BAR..MODIFIER LETTER LOW INVERTED EXCLAMATION MARK
+A720-A722,DISALLOWED,MODIFIER LETTER STRESS AND HIGH TONE..LATIN CAPITAL LETTER EGYPTOLOGICAL ALEF
+A723,PVALID,LATIN SMALL LETTER EGYPTOLOGICAL ALEF
+A724,DISALLOWED,LATIN CAPITAL LETTER EGYPTOLOGICAL AIN
+A725,PVALID,LATIN SMALL LETTER EGYPTOLOGICAL AIN
+A726,DISALLOWED,LATIN CAPITAL LETTER HENG
+A727,PVALID,LATIN SMALL LETTER HENG
+A728,DISALLOWED,LATIN CAPITAL LETTER TZ
+A729,PVALID,LATIN SMALL LETTER TZ
+A72A,DISALLOWED,LATIN CAPITAL LETTER TRESILLO
+A72B,PVALID,LATIN SMALL LETTER TRESILLO
+A72C,DISALLOWED,LATIN CAPITAL LETTER CUATRILLO
+A72D,PVALID,LATIN SMALL LETTER CUATRILLO
+A72E,DISALLOWED,LATIN CAPITAL LETTER CUATRILLO WITH COMMA
+A72F-A731,PVALID,LATIN SMALL LETTER CUATRILLO WITH COMMA..LATIN LETTER SMALL CAPITAL S
+A732,DISALLOWED,LATIN CAPITAL LETTER AA
+A733,PVALID,LATIN SMALL LETTER AA
+A734,DISALLOWED,LATIN CAPITAL LETTER AO
+A735,PVALID,LATIN SMALL LETTER AO
+A736,DISALLOWED,LATIN CAPITAL LETTER AU
+A737,PVALID,LATIN SMALL LETTER AU
+A738,DISALLOWED,LATIN CAPITAL LETTER AV
+A739,PVALID,LATIN SMALL LETTER AV
+A73A,DISALLOWED,LATIN CAPITAL LETTER AV WITH HORIZONTAL BAR
+A73B,PVALID,LATIN SMALL LETTER AV WITH HORIZONTAL BAR
+A73C,DISALLOWED,LATIN CAPITAL LETTER AY
+A73D,PVALID,LATIN SMALL LETTER AY
+A73E,DISALLOWED,LATIN CAPITAL LETTER REVERSED C WITH DOT
+A73F,PVALID,LATIN SMALL LETTER REVERSED C WITH DOT
+A740,DISALLOWED,LATIN CAPITAL LETTER K WITH STROKE
+A741,PVALID,LATIN SMALL LETTER K WITH STROKE
+A742,DISALLOWED,LATIN CAPITAL LETTER K WITH DIAGONAL STROKE
+A743,PVALID,LATIN SMALL LETTER K WITH DIAGONAL STROKE
+A744,DISALLOWED,LATIN CAPITAL LETTER K WITH STROKE AND DIAGONAL STROKE
+A745,PVALID,LATIN SMALL LETTER K WITH STROKE AND DIAGONAL STROKE
+A746,DISALLOWED,LATIN CAPITAL LETTER BROKEN L
+A747,PVALID,LATIN SMALL LETTER BROKEN L
+A748,DISALLOWED,LATIN CAPITAL LETTER L WITH HIGH STROKE
+A749,PVALID,LATIN SMALL LETTER L WITH HIGH STROKE
+A74A,DISALLOWED,LATIN CAPITAL LETTER O WITH LONG STROKE OVERLAY
+A74B,PVALID,LATIN SMALL LETTER O WITH LONG STROKE OVERLAY
+A74C,DISALLOWED,LATIN CAPITAL LETTER O WITH LOOP
+A74D,PVALID,LATIN SMALL LETTER O WITH LOOP
+A74E,DISALLOWED,LATIN CAPITAL LETTER OO
+A74F,PVALID,LATIN SMALL LETTER OO
+A750,DISALLOWED,LATIN CAPITAL LETTER P WITH STROKE THROUGH DESCENDER
+A751,PVALID,LATIN SMALL LETTER P WITH STROKE THROUGH DESCENDER
+A752,DISALLOWED,LATIN CAPITAL LETTER P WITH FLOURISH
+A753,PVALID,LATIN SMALL LETTER P WITH FLOURISH
+A754,DISALLOWED,LATIN CAPITAL LETTER P WITH SQUIRREL TAIL
+A755,PVALID,LATIN SMALL LETTER P WITH SQUIRREL TAIL
+A756,DISALLOWED,LATIN CAPITAL LETTER Q WITH STROKE THROUGH DESCENDER
+A757,PVALID,LATIN SMALL LETTER Q WITH STROKE THROUGH DESCENDER
+A758,DISALLOWED,LATIN CAPITAL LETTER Q WITH DIAGONAL STROKE
+A759,PVALID,LATIN SMALL LETTER Q WITH DIAGONAL STROKE
+A75A,DISALLOWED,LATIN CAPITAL LETTER R ROTUNDA
+A75B,PVALID,LATIN SMALL LETTER R ROTUNDA
+A75C,DISALLOWED,LATIN CAPITAL LETTER RUM ROTUNDA
+A75D,PVALID,LATIN SMALL LETTER RUM ROTUNDA
+A75E,DISALLOWED,LATIN CAPITAL LETTER V WITH DIAGONAL STROKE
+A75F,PVALID,LATIN SMALL LETTER V WITH DIAGONAL STROKE
+A760,DISALLOWED,LATIN CAPITAL LETTER VY
+A761,PVALID,LATIN SMALL LETTER VY
+A762,DISALLOWED,LATIN CAPITAL LETTER VISIGOTHIC Z
+A763,PVALID,LATIN SMALL LETTER VISIGOTHIC Z
+A764,DISALLOWED,LATIN CAPITAL LETTER THORN WITH STROKE
+A765,PVALID,LATIN SMALL LETTER THORN WITH STROKE
+A766,DISALLOWED,LATIN CAPITAL LETTER THORN WITH STROKE THROUGH DESCENDER
+A767,PVALID,LATIN SMALL LETTER THORN WITH STROKE THROUGH DESCENDER
+A768,DISALLOWED,LATIN CAPITAL LETTER VEND
+A769,PVALID,LATIN SMALL LETTER VEND
+A76A,DISALLOWED,LATIN CAPITAL LETTER ET
+A76B,PVALID,LATIN SMALL LETTER ET
+A76C,DISALLOWED,LATIN CAPITAL LETTER IS
+A76D,PVALID,LATIN SMALL LETTER IS
+A76E,DISALLOWED,LATIN CAPITAL LETTER CON
+A76F,PVALID,LATIN SMALL LETTER CON
+A770,DISALLOWED,MODIFIER LETTER US
+A771-A778,PVALID,LATIN SMALL LETTER DUM..LATIN SMALL LETTER UM
+A779,DISALLOWED,LATIN CAPITAL LETTER INSULAR D
+A77A,PVALID,LATIN SMALL LETTER INSULAR D
+A77B,DISALLOWED,LATIN CAPITAL LETTER INSULAR F
+A77C,PVALID,LATIN SMALL LETTER INSULAR F
+A77D-A77E,DISALLOWED,LATIN CAPITAL LETTER INSULAR G..LATIN CAPITAL LETTER TURNED INSULAR G
+A77F,PVALID,LATIN SMALL LETTER TURNED INSULAR G
+A780,DISALLOWED,LATIN CAPITAL LETTER TURNED L
+A781,PVALID,LATIN SMALL LETTER TURNED L
+A782,DISALLOWED,LATIN CAPITAL LETTER INSULAR R
+A783,PVALID,LATIN SMALL LETTER INSULAR R
+A784,DISALLOWED,LATIN CAPITAL LETTER INSULAR S
+A785,PVALID,LATIN SMALL LETTER INSULAR S
+A786,DISALLOWED,LATIN CAPITAL LETTER INSULAR T
+A787-A788,PVALID,LATIN SMALL LETTER INSULAR T..MODIFIER LETTER LOW CIRCUMFLEX ACCENT
+A789-A78B,DISALLOWED,MODIFIER LETTER COLON..LATIN CAPITAL LETTER SALTILLO
+A78C,PVALID,LATIN SMALL LETTER SALTILLO
+A78D-A7FA,UNASSIGNED,<RESERVED>..<RESERVED>
+A7FB-A827,PVALID,LATIN EPIGRAPHIC LETTER REVERSED F..SYLOTI NAGRI VOWEL SIGN OO
+A828-A82B,DISALLOWED,SYLOTI NAGRI POETRY MARK-1..SYLOTI NAGRI POETRY MARK-4
+A82C-A82F,UNASSIGNED,<RESERVED>..<RESERVED>
+A830-A839,DISALLOWED,NORTH INDIC FRACTION ONE QUARTER..NORTH INDIC QUANTITY MARK
+A83A-A83F,UNASSIGNED,<RESERVED>..<RESERVED>
+A840-A873,PVALID,PHAGS-PA LETTER KA..PHAGS-PA LETTER CANDRABINDU
+A874-A877,DISALLOWED,PHAGS-PA SINGLE HEAD MARK..PHAGS-PA MARK DOUBLE SHAD
+A878-A87F,UNASSIGNED,<RESERVED>..<RESERVED>
+A880-A8C4,PVALID,SAURASHTRA SIGN ANUSVARA..SAURASHTRA SIGN VIRAMA
+A8C5-A8CD,UNASSIGNED,<RESERVED>..<RESERVED>
+A8CE-A8CF,DISALLOWED,SAURASHTRA DANDA..SAURASHTRA DOUBLE DANDA
+A8D0-A8D9,PVALID,SAURASHTRA DIGIT ZERO..SAURASHTRA DIGIT NINE
+A8DA-A8DF,UNASSIGNED,<RESERVED>..<RESERVED>
+A8E0-A8F7,PVALID,COMBINING DEVANAGARI DIGIT ZERO..DEVANAGARI SIGN CANDRABINDU AVAGRAHA
+A8F8-A8FA,DISALLOWED,DEVANAGARI SIGN PUSHPIKA..DEVANAGARI CARET
+A8FB,PVALID,DEVANAGARI HEADSTROKE
+A8FC-A8FF,UNASSIGNED,<RESERVED>..<RESERVED>
+A900-A92D,PVALID,KAYAH LI DIGIT ZERO..KAYAH LI TONE CALYA PLOPHU
+A92E-A92F,DISALLOWED,KAYAH LI SIGN CWI..KAYAH LI SIGN SHYA
+A930-A953,PVALID,REJANG LETTER KA..REJANG VIRAMA
+A954-A95E,UNASSIGNED,<RESERVED>..<RESERVED>
+A95F-A97C,DISALLOWED,REJANG SECTION MARK..HANGUL CHOSEONG SSANGYEORINHIEUH
+A97D-A97F,UNASSIGNED,<RESERVED>..<RESERVED>
+A980-A9C0,PVALID,JAVANESE SIGN PANYANGGA..JAVANESE PANGKON
+A9C1-A9CD,DISALLOWED,JAVANESE LEFT RERENGGAN..JAVANESE TURNED PADA PISELEH
+A9CE,UNASSIGNED,<RESERVED>
+A9CF-A9D9,PVALID,JAVANESE PANGRANGKEP..JAVANESE DIGIT NINE
+A9DA-A9DD,UNASSIGNED,<RESERVED>..<RESERVED>
+A9DE-A9DF,DISALLOWED,JAVANESE PADA TIRTA TUMETES..JAVANESE PADA ISEN-ISEN
+A9E0-A9FF,UNASSIGNED,<RESERVED>..<RESERVED>
+AA00-AA36,PVALID,CHAM LETTER A..CHAM CONSONANT SIGN WA
+AA37-AA3F,UNASSIGNED,<RESERVED>..<RESERVED>
+AA40-AA4D,PVALID,CHAM LETTER FINAL K..CHAM CONSONANT SIGN FINAL H
+AA4E-AA4F,UNASSIGNED,<RESERVED>..<RESERVED>
+AA50-AA59,PVALID,CHAM DIGIT ZERO..CHAM DIGIT NINE
+AA5A-AA5B,UNASSIGNED,<RESERVED>..<RESERVED>
+AA5C-AA5F,DISALLOWED,CHAM PUNCTUATION SPIRAL..CHAM PUNCTUATION TRIPLE DANDA
+AA60-AA76,PVALID,MYANMAR LETTER KHAMTI GA..MYANMAR LOGOGRAM KHAMTI HM
+AA77-AA79,DISALLOWED,MYANMAR SYMBOL AITON EXCLAMATION..MYANMAR SYMBOL AITON TWO
+AA7A-AA7B,PVALID,MYANMAR LETTER AITON RA..MYANMAR SIGN PAO KAREN TONE
+AA7C-AA7F,UNASSIGNED,<RESERVED>..<RESERVED>
+AA80-AAC2,PVALID,TAI VIET LETTER LOW KO..TAI VIET TONE MAI SONG
+AAC3-AADA,UNASSIGNED,<RESERVED>..<RESERVED>
+AADB-AADD,PVALID,TAI VIET SYMBOL KON..TAI VIET SYMBOL SAM
+AADE-AADF,DISALLOWED,TAI VIET SYMBOL HO HOI..TAI VIET SYMBOL KOI KOI
+AAE0-ABBF,UNASSIGNED,<RESERVED>..<RESERVED>
+ABC0-ABEA,PVALID,MEETEI MAYEK LETTER KOK..MEETEI MAYEK VOWEL SIGN NUNG
+ABEB,DISALLOWED,MEETEI MAYEK CHEIKHEI
+ABEC-ABED,PVALID,MEETEI MAYEK LUM IYEK..MEETEI MAYEK APUN IYEK
+ABEE-ABEF,UNASSIGNED,<RESERVED>..<RESERVED>
+ABF0-ABF9,PVALID,MEETEI MAYEK DIGIT ZERO..MEETEI MAYEK DIGIT NINE
+ABFA-ABFF,UNASSIGNED,<RESERVED>..<RESERVED>
+AC00-D7A3,PVALID,"<HANGUL SYLLABLE, FIRST>..<HANGUL SYLLABLE, LAST>"
+D7A4-D7AF,UNASSIGNED,<RESERVED>..<RESERVED>
+D7B0-D7C6,DISALLOWED,HANGUL JUNGSEONG O-YEO..HANGUL JUNGSEONG ARAEA-E
+D7C7-D7CA,UNASSIGNED,<RESERVED>..<RESERVED>
+D7CB-D7FB,DISALLOWED,HANGUL JONGSEONG NIEUN-RIEUL..HANGUL JONGSEONG PHIEUPH-THIEUTH
+D7FC-D7FF,UNASSIGNED,<RESERVED>..<RESERVED>
+D800-FA0D,DISALLOWED,"<NON PRIVATE USE HIGH SURROGATE, FIRST>..CJK COMPATIBILITY IDEOGRAPH-FA0D"
+FA0E-FA0F,PVALID,CJK COMPATIBILITY IDEOGRAPH-FA0E..CJK COMPATIBILITY IDEOGRAPH-FA0F
+FA10,DISALLOWED,CJK COMPATIBILITY IDEOGRAPH-FA10
+FA11,PVALID,CJK COMPATIBILITY IDEOGRAPH-FA11
+FA12,DISALLOWED,CJK COMPATIBILITY IDEOGRAPH-FA12
+FA13-FA14,PVALID,CJK COMPATIBILITY IDEOGRAPH-FA13..CJK COMPATIBILITY IDEOGRAPH-FA14
+FA15-FA1E,DISALLOWED,CJK COMPATIBILITY IDEOGRAPH-FA15..CJK COMPATIBILITY IDEOGRAPH-FA1E
+FA1F,PVALID,CJK COMPATIBILITY IDEOGRAPH-FA1F
+FA20,DISALLOWED,CJK COMPATIBILITY IDEOGRAPH-FA20
+FA21,PVALID,CJK COMPATIBILITY IDEOGRAPH-FA21
+FA22,DISALLOWED,CJK COMPATIBILITY IDEOGRAPH-FA22
+FA23-FA24,PVALID,CJK COMPATIBILITY IDEOGRAPH-FA23..CJK COMPATIBILITY IDEOGRAPH-FA24
+FA25-FA26,DISALLOWED,CJK COMPATIBILITY IDEOGRAPH-FA25..CJK COMPATIBILITY IDEOGRAPH-FA26
+FA27-FA29,PVALID,CJK COMPATIBILITY IDEOGRAPH-FA27..CJK COMPATIBILITY IDEOGRAPH-FA29
+FA2A-FA2D,DISALLOWED,CJK COMPATIBILITY IDEOGRAPH-FA2A..CJK COMPATIBILITY IDEOGRAPH-FA2D
+FA2E-FA2F,UNASSIGNED,<RESERVED>..<RESERVED>
+FA30-FA6D,DISALLOWED,CJK COMPATIBILITY IDEOGRAPH-FA30..CJK COMPATIBILITY IDEOGRAPH-FA6D
+FA6E-FA6F,UNASSIGNED,<RESERVED>..<RESERVED>
+FA70-FAD9,DISALLOWED,CJK COMPATIBILITY IDEOGRAPH-FA70..CJK COMPATIBILITY IDEOGRAPH-FAD9
+FADA-FAFF,UNASSIGNED,<RESERVED>..<RESERVED>
+FB00-FB06,DISALLOWED,LATIN SMALL LIGATURE FF..LATIN SMALL LIGATURE ST
+FB07-FB12,UNASSIGNED,<RESERVED>..<RESERVED>
+FB13-FB17,DISALLOWED,ARMENIAN SMALL LIGATURE MEN NOW..ARMENIAN SMALL LIGATURE MEN XEH
+FB18-FB1C,UNASSIGNED,<RESERVED>..<RESERVED>
+FB1D,DISALLOWED,HEBREW LETTER YOD WITH HIRIQ
+FB1E,PVALID,HEBREW POINT JUDEO-SPANISH VARIKA
+FB1F-FB36,DISALLOWED,HEBREW LIGATURE YIDDISH YOD YOD PATAH..HEBREW LETTER ZAYIN WITH DAGESH
+FB37,UNASSIGNED,<RESERVED>
+FB38-FB3C,DISALLOWED,HEBREW LETTER TET WITH DAGESH..HEBREW LETTER LAMED WITH DAGESH
+FB3D,UNASSIGNED,<RESERVED>
+FB3E,DISALLOWED,HEBREW LETTER MEM WITH DAGESH
+FB3F,UNASSIGNED,<RESERVED>
+FB40-FB41,DISALLOWED,HEBREW LETTER NUN WITH DAGESH..HEBREW LETTER SAMEKH WITH DAGESH
+FB42,UNASSIGNED,<RESERVED>
+FB43-FB44,DISALLOWED,HEBREW LETTER FINAL PE WITH DAGESH..HEBREW LETTER PE WITH DAGESH
+FB45,UNASSIGNED,<RESERVED>
+FB46-FBB1,DISALLOWED,HEBREW LETTER TSADI WITH DAGESH..ARABIC LETTER YEH BARREE WITH HAMZA ABOVE FINAL FORM
+FBB2-FBD2,UNASSIGNED,<RESERVED>..<RESERVED>
+FBD3-FD3F,DISALLOWED,ARABIC LETTER NG ISOLATED FORM..ORNATE RIGHT PARENTHESIS
+FD40-FD4F,UNASSIGNED,<RESERVED>..<RESERVED>
+FD50-FD8F,DISALLOWED,ARABIC LIGATURE TEH WITH JEEM WITH MEEM INITIAL FORM..ARABIC LIGATURE MEEM WITH KHAH WITH MEEM INITIAL FORM
+FD90-FD91,UNASSIGNED,<RESERVED>..<RESERVED>
+FD92-FDC7,DISALLOWED,ARABIC LIGATURE MEEM WITH JEEM WITH KHAH INITIAL FORM..ARABIC LIGATURE NOON WITH JEEM WITH YEH FINAL FORM
+FDC8-FDCF,UNASSIGNED,<RESERVED>..<RESERVED>
+FDD0-FDFD,DISALLOWED,<NOT A CHARACTER>..ARABIC LIGATURE BISMILLAH AR-RAHMAN AR-RAHEEM
+FDFE-FDFF,UNASSIGNED,<RESERVED>..<RESERVED>
+FE00-FE19,DISALLOWED,VARIATION SELECTOR-1..PRESENTATION FORM FOR VERTICAL HORIZONTAL ELLIPSIS
+FE1A-FE1F,UNASSIGNED,<RESERVED>..<RESERVED>
+FE20-FE26,PVALID,COMBINING LIGATURE LEFT HALF..COMBINING CONJOINING MACRON
+FE27-FE2F,UNASSIGNED,<RESERVED>..<RESERVED>
+FE30-FE52,DISALLOWED,PRESENTATION FORM FOR VERTICAL TWO DOT LEADER..SMALL FULL STOP
+FE53,UNASSIGNED,<RESERVED>
+FE54-FE66,DISALLOWED,SMALL SEMICOLON..SMALL EQUALS SIGN
+FE67,UNASSIGNED,<RESERVED>
+FE68-FE6B,DISALLOWED,SMALL REVERSE SOLIDUS..SMALL COMMERCIAL AT
+FE6C-FE6F,UNASSIGNED,<RESERVED>..<RESERVED>
+FE70-FE72,DISALLOWED,ARABIC FATHATAN ISOLATED FORM..ARABIC DAMMATAN ISOLATED FORM
+FE73,PVALID,ARABIC TAIL FRAGMENT
+FE74,DISALLOWED,ARABIC KASRATAN ISOLATED FORM
+FE75,UNASSIGNED,<RESERVED>
+FE76-FEFC,DISALLOWED,ARABIC FATHA ISOLATED FORM..ARABIC LIGATURE LAM WITH ALEF FINAL FORM
+FEFD-FEFE,UNASSIGNED,<RESERVED>..<RESERVED>
+FEFF,DISALLOWED,ZERO WIDTH NO-BREAK SPACE
+FF00,UNASSIGNED,<RESERVED>
+FF01-FFBE,DISALLOWED,FULLWIDTH EXCLAMATION MARK..HALFWIDTH HANGUL LETTER HIEUH
+FFBF-FFC1,UNASSIGNED,<RESERVED>..<RESERVED>
+FFC2-FFC7,DISALLOWED,HALFWIDTH HANGUL LETTER A..HALFWIDTH HANGUL LETTER E
+FFC8-FFC9,UNASSIGNED,<RESERVED>..<RESERVED>
+FFCA-FFCF,DISALLOWED,HALFWIDTH HANGUL LETTER YEO..HALFWIDTH HANGUL LETTER OE
+FFD0-FFD1,UNASSIGNED,<RESERVED>..<RESERVED>
+FFD2-FFD7,DISALLOWED,HALFWIDTH HANGUL LETTER YO..HALFWIDTH HANGUL LETTER YU
+FFD8-FFD9,UNASSIGNED,<RESERVED>..<RESERVED>
+FFDA-FFDC,DISALLOWED,HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL LETTER I
+FFDD-FFDF,UNASSIGNED,<RESERVED>..<RESERVED>
+FFE0-FFE6,DISALLOWED,FULLWIDTH CENT SIGN..FULLWIDTH WON SIGN
+FFE7,UNASSIGNED,<RESERVED>
+FFE8-FFEE,DISALLOWED,HALFWIDTH FORMS LIGHT VERTICAL..HALFWIDTH WHITE CIRCLE
+FFEF-FFF8,UNASSIGNED,<RESERVED>..<RESERVED>
+FFF9-FFFF,DISALLOWED,INTERLINEAR ANNOTATION ANCHOR..<NOT A CHARACTER>
+10000-1000B,PVALID,LINEAR B SYLLABLE B008 A..LINEAR B SYLLABLE B046 JE
+1000C,UNASSIGNED,<RESERVED>
+1000D-10026,PVALID,LINEAR B SYLLABLE B036 JO..LINEAR B SYLLABLE B032 QO
+10027,UNASSIGNED,<RESERVED>
+10028-1003A,PVALID,LINEAR B SYLLABLE B060 RA..LINEAR B SYLLABLE B042 WO
+1003B,UNASSIGNED,<RESERVED>
+1003C-1003D,PVALID,LINEAR B SYLLABLE B017 ZA..LINEAR B SYLLABLE B074 ZE
+1003E,UNASSIGNED,<RESERVED>
+1003F-1004D,PVALID,LINEAR B SYLLABLE B020 ZO..LINEAR B SYLLABLE B091 TWO
+1004E-1004F,UNASSIGNED,<RESERVED>..<RESERVED>
+10050-1005D,PVALID,LINEAR B SYMBOL B018..LINEAR B SYMBOL B089
+1005E-1007F,UNASSIGNED,<RESERVED>..<RESERVED>
+10080-100FA,PVALID,LINEAR B IDEOGRAM B100 MAN..LINEAR B IDEOGRAM VESSEL B305
+100FB-100FF,UNASSIGNED,<RESERVED>..<RESERVED>
+10100-10102,DISALLOWED,AEGEAN WORD SEPARATOR LINE..AEGEAN CHECK MARK
+10103-10106,UNASSIGNED,<RESERVED>..<RESERVED>
+10107-10133,DISALLOWED,AEGEAN NUMBER ONE..AEGEAN NUMBER NINETY THOUSAND
+10134-10136,UNASSIGNED,<RESERVED>..<RESERVED>
+10137-1018A,DISALLOWED,AEGEAN WEIGHT BASE UNIT..GREEK ZERO SIGN
+1018B-1018F,UNASSIGNED,<RESERVED>..<RESERVED>
+10190-1019B,DISALLOWED,ROMAN SEXTANS SIGN..ROMAN CENTURIAL SIGN
+1019C-101CF,UNASSIGNED,<RESERVED>..<RESERVED>
+101D0-101FC,DISALLOWED,PHAISTOS DISC SIGN PEDESTRIAN..PHAISTOS DISC SIGN WAVY BAND
+101FD,PVALID,PHAISTOS DISC SIGN COMBINING OBLIQUE STROKE
+101FE-1027F,UNASSIGNED,<RESERVED>..<RESERVED>
+10280-1029C,PVALID,LYCIAN LETTER A..LYCIAN LETTER X
+1029D-1029F,UNASSIGNED,<RESERVED>..<RESERVED>
+102A0-102D0,PVALID,CARIAN LETTER A..CARIAN LETTER UUU3
+102D1-102FF,UNASSIGNED,<RESERVED>..<RESERVED>
+10300-1031E,PVALID,OLD ITALIC LETTER A..OLD ITALIC LETTER UU
+1031F,UNASSIGNED,<RESERVED>
+10320-10323,DISALLOWED,OLD ITALIC NUMERAL ONE..OLD ITALIC NUMERAL FIFTY
+10324-1032F,UNASSIGNED,<RESERVED>..<RESERVED>
+10330-10340,PVALID,GOTHIC LETTER AHSA..GOTHIC LETTER PAIRTHRA
+10341,DISALLOWED,GOTHIC LETTER NINETY
+10342-10349,PVALID,GOTHIC LETTER RAIDA..GOTHIC LETTER OTHAL
+1034A,DISALLOWED,GOTHIC LETTER NINE HUNDRED
+1034B-1037F,UNASSIGNED,<RESERVED>..<RESERVED>
+10380-1039D,PVALID,UGARITIC LETTER ALPA..UGARITIC LETTER SSU
+1039E,UNASSIGNED,<RESERVED>
+1039F,DISALLOWED,UGARITIC WORD DIVIDER
+103A0-103C3,PVALID,OLD PERSIAN SIGN A..OLD PERSIAN SIGN HA
+103C4-103C7,UNASSIGNED,<RESERVED>..<RESERVED>
+103C8-103CF,PVALID,OLD PERSIAN SIGN AURAMAZDAA..OLD PERSIAN SIGN BUUMISH
+103D0-103D5,DISALLOWED,OLD PERSIAN WORD DIVIDER..OLD PERSIAN NUMBER HUNDRED
+103D6-103FF,UNASSIGNED,<RESERVED>..<RESERVED>
+10400-10427,DISALLOWED,DESERET CAPITAL LETTER LONG I..DESERET CAPITAL LETTER EW
+10428-1049D,PVALID,DESERET SMALL LETTER LONG I..OSMANYA LETTER OO
+1049E-1049F,UNASSIGNED,<RESERVED>..<RESERVED>
+104A0-104A9,PVALID,OSMANYA DIGIT ZERO..OSMANYA DIGIT NINE
+104AA-107FF,UNASSIGNED,<RESERVED>..<RESERVED>
+10800-10805,PVALID,CYPRIOT SYLLABLE A..CYPRIOT SYLLABLE JA
+10806-10807,UNASSIGNED,<RESERVED>..<RESERVED>
+10808,PVALID,CYPRIOT SYLLABLE JO
+10809,UNASSIGNED,<RESERVED>
+1080A-10835,PVALID,CYPRIOT SYLLABLE KA..CYPRIOT SYLLABLE WO
+10836,UNASSIGNED,<RESERVED>
+10837-10838,PVALID,CYPRIOT SYLLABLE XA..CYPRIOT SYLLABLE XE
+10839-1083B,UNASSIGNED,<RESERVED>..<RESERVED>
+1083C,PVALID,CYPRIOT SYLLABLE ZA
+1083D-1083E,UNASSIGNED,<RESERVED>..<RESERVED>
+1083F-10855,PVALID,CYPRIOT SYLLABLE ZO..IMPERIAL ARAMAIC LETTER TAW
+10856,UNASSIGNED,<RESERVED>
+10857-1085F,DISALLOWED,IMPERIAL ARAMAIC SECTION SIGN..IMPERIAL ARAMAIC NUMBER TEN THOUSAND
+10860-108FF,UNASSIGNED,<RESERVED>..<RESERVED>
+10900-10915,PVALID,PHOENICIAN LETTER ALF..PHOENICIAN LETTER TAU
+10916-1091B,DISALLOWED,PHOENICIAN NUMBER ONE..PHOENICIAN NUMBER THREE
+1091C-1091E,UNASSIGNED,<RESERVED>..<RESERVED>
+1091F,DISALLOWED,PHOENICIAN WORD SEPARATOR
+10920-10939,PVALID,LYDIAN LETTER A..LYDIAN LETTER C
+1093A-1093E,UNASSIGNED,<RESERVED>..<RESERVED>
+1093F,DISALLOWED,LYDIAN TRIANGULAR MARK
+10940-109FF,UNASSIGNED,<RESERVED>..<RESERVED>
+10A00-10A03,PVALID,KHAROSHTHI LETTER A..KHAROSHTHI VOWEL SIGN VOCALIC R
+10A04,UNASSIGNED,<RESERVED>
+10A05-10A06,PVALID,KHAROSHTHI VOWEL SIGN E..KHAROSHTHI VOWEL SIGN O
+10A07-10A0B,UNASSIGNED,<RESERVED>..<RESERVED>
+10A0C-10A13,PVALID,KHAROSHTHI VOWEL LENGTH MARK..KHAROSHTHI LETTER GHA
+10A14,UNASSIGNED,<RESERVED>
+10A15-10A17,PVALID,KHAROSHTHI LETTER CA..KHAROSHTHI LETTER JA
+10A18,UNASSIGNED,<RESERVED>
+10A19-10A33,PVALID,KHAROSHTHI LETTER NYA..KHAROSHTHI LETTER TTTHA
+10A34-10A37,UNASSIGNED,<RESERVED>..<RESERVED>
+10A38-10A3A,PVALID,KHAROSHTHI SIGN BAR ABOVE..KHAROSHTHI SIGN DOT BELOW
+10A3B-10A3E,UNASSIGNED,<RESERVED>..<RESERVED>
+10A3F,PVALID,KHAROSHTHI VIRAMA
+10A40-10A47,DISALLOWED,KHAROSHTHI DIGIT ONE..KHAROSHTHI NUMBER ONE THOUSAND
+10A48-10A4F,UNASSIGNED,<RESERVED>..<RESERVED>
+10A50-10A58,DISALLOWED,KHAROSHTHI PUNCTUATION DOT..KHAROSHTHI PUNCTUATION LINES
+10A59-10A5F,UNASSIGNED,<RESERVED>..<RESERVED>
+10A60-10A7C,PVALID,OLD SOUTH ARABIAN LETTER HE..OLD SOUTH ARABIAN LETTER THETH
+10A7D-10A7F,DISALLOWED,OLD SOUTH ARABIAN NUMBER ONE..OLD SOUTH ARABIAN NUMERIC INDICATOR
+10A80-10AFF,UNASSIGNED,<RESERVED>..<RESERVED>
+10B00-10B35,PVALID,AVESTAN LETTER A..AVESTAN LETTER HE
+10B36-10B38,UNASSIGNED,<RESERVED>..<RESERVED>
+10B39-10B3F,DISALLOWED,AVESTAN ABBREVIATION MARK..LARGE ONE RING OVER TWO RINGS PUNCTUATION
+10B40-10B55,PVALID,INSCRIPTIONAL PARTHIAN LETTER ALEPH..INSCRIPTIONAL PARTHIAN LETTER TAW
+10B56-10B57,UNASSIGNED,<RESERVED>..<RESERVED>
+10B58-10B5F,DISALLOWED,INSCRIPTIONAL PARTHIAN NUMBER ONE..INSCRIPTIONAL PARTHIAN NUMBER ONE THOUSAND
+10B60-10B72,PVALID,INSCRIPTIONAL PAHLAVI LETTER ALEPH..INSCRIPTIONAL PAHLAVI LETTER TAW
+10B73-10B77,UNASSIGNED,<RESERVED>..<RESERVED>
+10B78-10B7F,DISALLOWED,INSCRIPTIONAL PAHLAVI NUMBER ONE..INSCRIPTIONAL PAHLAVI NUMBER ONE THOUSAND
+10B80-10BFF,UNASSIGNED,<RESERVED>..<RESERVED>
+10C00-10C48,PVALID,OLD TURKIC LETTER ORKHON A..OLD TURKIC LETTER ORKHON BASH
+10C49-10E5F,UNASSIGNED,<RESERVED>..<RESERVED>
+10E60-10E7E,DISALLOWED,RUMI DIGIT ONE..RUMI FRACTION TWO THIRDS
+10E7F-1107F,UNASSIGNED,<RESERVED>..<RESERVED>
+11080-110BA,PVALID,KAITHI SIGN CANDRABINDU..KAITHI SIGN NUKTA
+110BB-110C1,DISALLOWED,KAITHI ABBREVIATION SIGN..KAITHI DOUBLE DANDA
+110C2-11FFF,UNASSIGNED,<RESERVED>..<RESERVED>
+12000-1236E,PVALID,CUNEIFORM SIGN A..CUNEIFORM SIGN ZUM
+1236F-123FF,UNASSIGNED,<RESERVED>..<RESERVED>
+12400-12462,DISALLOWED,CUNEIFORM NUMERIC SIGN TWO ASH..CUNEIFORM NUMERIC SIGN OLD ASSYRIAN ONE QUARTER
+12463-1246F,UNASSIGNED,<RESERVED>..<RESERVED>
+12470-12473,DISALLOWED,CUNEIFORM PUNCTUATION SIGN OLD ASSYRIAN WORD DIVIDER..CUNEIFORM PUNCTUATION SIGN DIAGONAL TRICOLON
+12474-12FFF,UNASSIGNED,<RESERVED>..<RESERVED>
+13000-1342E,PVALID,EGYPTIAN HIEROGLYPH A001..EGYPTIAN HIEROGLYPH AA032
+1342F-1CFFF,UNASSIGNED,<RESERVED>..<RESERVED>
+1D000-1D0F5,DISALLOWED,BYZANTINE MUSICAL SYMBOL PSILI..BYZANTINE MUSICAL SYMBOL GORGON NEO KATO
+1D0F6-1D0FF,UNASSIGNED,<RESERVED>..<RESERVED>
+1D100-1D126,DISALLOWED,MUSICAL SYMBOL SINGLE BARLINE..MUSICAL SYMBOL DRUM CLEF-2
+1D127-1D128,UNASSIGNED,<RESERVED>..<RESERVED>
+1D129-1D1DD,DISALLOWED,MUSICAL SYMBOL MULTIPLE MEASURE REST..MUSICAL SYMBOL PES SUBPUNCTIS
+1D1DE-1D1FF,UNASSIGNED,<RESERVED>..<RESERVED>
+1D200-1D245,DISALLOWED,GREEK VOCAL NOTATION SYMBOL-1..GREEK MUSICAL LEIMMA
+1D246-1D2FF,UNASSIGNED,<RESERVED>..<RESERVED>
+1D300-1D356,DISALLOWED,MONOGRAM FOR EARTH..TETRAGRAM FOR FOSTERING
+1D357-1D35F,UNASSIGNED,<RESERVED>..<RESERVED>
+1D360-1D371,DISALLOWED,COUNTING ROD UNIT DIGIT ONE..COUNTING ROD TENS DIGIT NINE
+1D372-1D3FF,UNASSIGNED,<RESERVED>..<RESERVED>
+1D400-1D454,DISALLOWED,MATHEMATICAL BOLD CAPITAL A..MATHEMATICAL ITALIC SMALL G
+1D455,UNASSIGNED,<RESERVED>
+1D456-1D49C,DISALLOWED,MATHEMATICAL ITALIC SMALL I..MATHEMATICAL SCRIPT CAPITAL A
+1D49D,UNASSIGNED,<RESERVED>
+1D49E-1D49F,DISALLOWED,MATHEMATICAL SCRIPT CAPITAL C..MATHEMATICAL SCRIPT CAPITAL D
+1D4A0-1D4A1,UNASSIGNED,<RESERVED>..<RESERVED>
+1D4A2,DISALLOWED,MATHEMATICAL SCRIPT CAPITAL G
+1D4A3-1D4A4,UNASSIGNED,<RESERVED>..<RESERVED>
+1D4A5-1D4A6,DISALLOWED,MATHEMATICAL SCRIPT CAPITAL J..MATHEMATICAL SCRIPT CAPITAL K
+1D4A7-1D4A8,UNASSIGNED,<RESERVED>..<RESERVED>
+1D4A9-1D4AC,DISALLOWED,MATHEMATICAL SCRIPT CAPITAL N..MATHEMATICAL SCRIPT CAPITAL Q
+1D4AD,UNASSIGNED,<RESERVED>
+1D4AE-1D4B9,DISALLOWED,MATHEMATICAL SCRIPT CAPITAL S..MATHEMATICAL SCRIPT SMALL D
+1D4BA,UNASSIGNED,<RESERVED>
+1D4BB,DISALLOWED,MATHEMATICAL SCRIPT SMALL F
+1D4BC,UNASSIGNED,<RESERVED>
+1D4BD-1D4C3,DISALLOWED,MATHEMATICAL SCRIPT SMALL H..MATHEMATICAL SCRIPT SMALL N
+1D4C4,UNASSIGNED,<RESERVED>
+1D4C5-1D505,DISALLOWED,MATHEMATICAL SCRIPT SMALL P..MATHEMATICAL FRAKTUR CAPITAL B
+1D506,UNASSIGNED,<RESERVED>
+1D507-1D50A,DISALLOWED,MATHEMATICAL FRAKTUR CAPITAL D..MATHEMATICAL FRAKTUR CAPITAL G
+1D50B-1D50C,UNASSIGNED,<RESERVED>..<RESERVED>
+1D50D-1D514,DISALLOWED,MATHEMATICAL FRAKTUR CAPITAL J..MATHEMATICAL FRAKTUR CAPITAL Q
+1D515,UNASSIGNED,<RESERVED>
+1D516-1D51C,DISALLOWED,MATHEMATICAL FRAKTUR CAPITAL S..MATHEMATICAL FRAKTUR CAPITAL Y
+1D51D,UNASSIGNED,<RESERVED>
+1D51E-1D539,DISALLOWED,MATHEMATICAL FRAKTUR SMALL A..MATHEMATICAL DOUBLE-STRUCK CAPITAL B
+1D53A,UNASSIGNED,<RESERVED>
+1D53B-1D53E,DISALLOWED,MATHEMATICAL DOUBLE-STRUCK CAPITAL D..MATHEMATICAL DOUBLE-STRUCK CAPITAL G
+1D53F,UNASSIGNED,<RESERVED>
+1D540-1D544,DISALLOWED,MATHEMATICAL DOUBLE-STRUCK CAPITAL I..MATHEMATICAL DOUBLE-STRUCK CAPITAL M
+1D545,UNASSIGNED,<RESERVED>
+1D546,DISALLOWED,MATHEMATICAL DOUBLE-STRUCK CAPITAL O
+1D547-1D549,UNASSIGNED,<RESERVED>..<RESERVED>
+1D54A-1D550,DISALLOWED,MATHEMATICAL DOUBLE-STRUCK CAPITAL S..MATHEMATICAL DOUBLE-STRUCK CAPITAL Y
+1D551,UNASSIGNED,<RESERVED>
+1D552-1D6A5,DISALLOWED,MATHEMATICAL DOUBLE-STRUCK SMALL A..MATHEMATICAL ITALIC SMALL DOTLESS J
+1D6A6-1D6A7,UNASSIGNED,<RESERVED>..<RESERVED>
+1D6A8-1D7CB,DISALLOWED,MATHEMATICAL BOLD CAPITAL ALPHA..MATHEMATICAL BOLD SMALL DIGAMMA
+1D7CC-1D7CD,UNASSIGNED,<RESERVED>..<RESERVED>
+1D7CE-1D7FF,DISALLOWED,MATHEMATICAL BOLD DIGIT ZERO..MATHEMATICAL MONOSPACE DIGIT NINE
+1D800-1EFFF,UNASSIGNED,<RESERVED>..<RESERVED>
+1F000-1F02B,DISALLOWED,MAHJONG TILE EAST WIND..MAHJONG TILE BACK
+1F02C-1F02F,UNASSIGNED,<RESERVED>..<RESERVED>
+1F030-1F093,DISALLOWED,DOMINO TILE HORIZONTAL BACK..DOMINO TILE VERTICAL-06-06
+1F094-1F0FF,UNASSIGNED,<RESERVED>..<RESERVED>
+1F100-1F10A,DISALLOWED,DIGIT ZERO FULL STOP..DIGIT NINE COMMA
+1F10B-1F10F,UNASSIGNED,<RESERVED>..<RESERVED>
+1F110-1F12E,DISALLOWED,PARENTHESIZED LATIN CAPITAL LETTER A..CIRCLED WZ
+1F12F-1F130,UNASSIGNED,<RESERVED>..<RESERVED>
+1F131,DISALLOWED,SQUARED LATIN CAPITAL LETTER B
+1F132-1F13C,UNASSIGNED,<RESERVED>..<RESERVED>
+1F13D,DISALLOWED,SQUARED LATIN CAPITAL LETTER N
+1F13E,UNASSIGNED,<RESERVED>
+1F13F,DISALLOWED,SQUARED LATIN CAPITAL LETTER P
+1F140-1F141,UNASSIGNED,<RESERVED>..<RESERVED>
+1F142,DISALLOWED,SQUARED LATIN CAPITAL LETTER S
+1F143-1F145,UNASSIGNED,<RESERVED>..<RESERVED>
+1F146,DISALLOWED,SQUARED LATIN CAPITAL LETTER W
+1F147-1F149,UNASSIGNED,<RESERVED>..<RESERVED>
+1F14A-1F14E,DISALLOWED,SQUARED HV..SQUARED PPV
+1F14F-1F156,UNASSIGNED,<RESERVED>..<RESERVED>
+1F157,DISALLOWED,NEGATIVE CIRCLED LATIN CAPITAL LETTER H
+1F158-1F15E,UNASSIGNED,<RESERVED>..<RESERVED>
+1F15F,DISALLOWED,NEGATIVE CIRCLED LATIN CAPITAL LETTER P
+1F160-1F178,UNASSIGNED,<RESERVED>..<RESERVED>
+1F179,DISALLOWED,NEGATIVE SQUARED LATIN CAPITAL LETTER J
+1F17A,UNASSIGNED,<RESERVED>
+1F17B-1F17C,DISALLOWED,NEGATIVE SQUARED LATIN CAPITAL LETTER L..NEGATIVE SQUARED LATIN CAPITAL LETTER M
+1F17D-1F17E,UNASSIGNED,<RESERVED>..<RESERVED>
+1F17F,DISALLOWED,NEGATIVE SQUARED LATIN CAPITAL LETTER P
+1F180-1F189,UNASSIGNED,<RESERVED>..<RESERVED>
+1F18A-1F18D,DISALLOWED,CROSSED NEGATIVE SQUARED LATIN CAPITAL LETTER P..NEGATIVE SQUARED SA
+1F18E-1F18F,UNASSIGNED,<RESERVED>..<RESERVED>
+1F190,DISALLOWED,SQUARE DJ
+1F191-1F1FF,UNASSIGNED,<RESERVED>..<RESERVED>
+1F200,DISALLOWED,SQUARE HIRAGANA HOKA
+1F201-1F20F,UNASSIGNED,<RESERVED>..<RESERVED>
+1F210-1F231,DISALLOWED,SQUARED CJK UNIFIED IDEOGRAPH-624B..SQUARED CJK UNIFIED IDEOGRAPH-6253
+1F232-1F23F,UNASSIGNED,<RESERVED>..<RESERVED>
+1F240-1F248,DISALLOWED,TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-672C..TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-6557
+1F249-1FFFD,UNASSIGNED,<RESERVED>..<RESERVED>
+1FFFE-1FFFF,DISALLOWED,<NOT A CHARACTER>..<NOT A CHARACTER>
+20000-2A6D6,PVALID,"<CJK IDEOGRAPH EXTENSION B, FIRST>..<CJK IDEOGRAPH EXTENSION B, LAST>"
+2A6D7-2A6FF,UNASSIGNED,<RESERVED>..<RESERVED>
+2A700-2B734,PVALID,"<CJK IDEOGRAPH EXTENSION C, FIRST>..<CJK IDEOGRAPH EXTENSION C, LAST>"
+2B735-2F7FF,UNASSIGNED,<RESERVED>..<RESERVED>
+2F800-2FA1D,DISALLOWED,CJK COMPATIBILITY IDEOGRAPH-2F800..CJK COMPATIBILITY IDEOGRAPH-2FA1D
+2FA1E-2FFFD,UNASSIGNED,<RESERVED>..<RESERVED>
+2FFFE-2FFFF,DISALLOWED,<NOT A CHARACTER>..<NOT A CHARACTER>
+30000-3FFFD,UNASSIGNED,<RESERVED>..<RESERVED>
+3FFFE-3FFFF,DISALLOWED,<NOT A CHARACTER>..<NOT A CHARACTER>
+40000-4FFFD,UNASSIGNED,<RESERVED>..<RESERVED>
+4FFFE-4FFFF,DISALLOWED,<NOT A CHARACTER>..<NOT A CHARACTER>
+50000-5FFFD,UNASSIGNED,<RESERVED>..<RESERVED>
+5FFFE-5FFFF,DISALLOWED,<NOT A CHARACTER>..<NOT A CHARACTER>
+60000-6FFFD,UNASSIGNED,<RESERVED>..<RESERVED>
+6FFFE-6FFFF,DISALLOWED,<NOT A CHARACTER>..<NOT A CHARACTER>
+70000-7FFFD,UNASSIGNED,<RESERVED>..<RESERVED>
+7FFFE-7FFFF,DISALLOWED,<NOT A CHARACTER>..<NOT A CHARACTER>
+80000-8FFFD,UNASSIGNED,<RESERVED>..<RESERVED>
+8FFFE-8FFFF,DISALLOWED,<NOT A CHARACTER>..<NOT A CHARACTER>
+90000-9FFFD,UNASSIGNED,<RESERVED>..<RESERVED>
+9FFFE-9FFFF,DISALLOWED,<NOT A CHARACTER>..<NOT A CHARACTER>
+A0000-AFFFD,UNASSIGNED,<RESERVED>..<RESERVED>
+AFFFE-AFFFF,DISALLOWED,<NOT A CHARACTER>..<NOT A CHARACTER>
+B0000-BFFFD,UNASSIGNED,<RESERVED>..<RESERVED>
+BFFFE-BFFFF,DISALLOWED,<NOT A CHARACTER>..<NOT A CHARACTER>
+C0000-CFFFD,UNASSIGNED,<RESERVED>..<RESERVED>
+CFFFE-CFFFF,DISALLOWED,<NOT A CHARACTER>..<NOT A CHARACTER>
+D0000-DFFFD,UNASSIGNED,<RESERVED>..<RESERVED>
+DFFFE-DFFFF,DISALLOWED,<NOT A CHARACTER>..<NOT A CHARACTER>
+E0000,UNASSIGNED,<RESERVED>
+E0001,DISALLOWED,LANGUAGE TAG
+E0002-E001F,UNASSIGNED,<RESERVED>..<RESERVED>
+E0020-E007F,DISALLOWED,TAG SPACE..CANCEL TAG
+E0080-E00FF,UNASSIGNED,<RESERVED>..<RESERVED>
+E0100-E01EF,DISALLOWED,VARIATION SELECTOR-17..VARIATION SELECTOR-256
+E01F0-EFFFD,UNASSIGNED,<RESERVED>..<RESERVED>
+EFFFE-10FFFF,DISALLOWED,<NOT A CHARACTER>..<NOT A CHARACTER>
diff --git a/utils/idna_props.h b/utils/idna_props.h
new file mode 100644
index 000000000..b5ca966c0
--- /dev/null
+++ b/utils/idna_props.h
@@ -0,0 +1,2634 @@
+/* This file is generated by idna-derived-props-gen.pl
+ * DO NOT EDIT BY HAND
+ */
+#ifndef _NETSURF_UTILS_IDNA_PROPS_H_
+#define _NETSURF_UTILS_IDNA_PROPS_H_
+
+typedef enum idna_property {
+ IDNA_P_PVALID = 1,
+ IDNA_P_CONTEXTJ = 2,
+ IDNA_P_CONTEXTO = 3,
+ IDNA_P_DISALLOWED = 4,
+ IDNA_P_UNASSIGNED = 5
+} idna_property;
+
+typedef enum idna_unicode_jt {
+ IDNA_UNICODE_JT_U = 0,
+ IDNA_UNICODE_JT_C = 1,
+ IDNA_UNICODE_JT_D = 2,
+ IDNA_UNICODE_JT_R = 3,
+ IDNA_UNICODE_JT_T = 4,
+ IDNA_UNICODE_JT_L = 5
+} idna_unicode_jt;
+
+
+typedef struct idna_table {
+ int32_t start;
+ int32_t end;
+ union p {
+ idna_property property;
+ idna_unicode_jt jt;
+ } p;
+} idna_table;
+
+idna_table idna_derived[] = {
+ { 0x0000, 0x002C, .p.property = IDNA_P_DISALLOWED },
+ { 0x002D, 0x002D, .p.property = IDNA_P_PVALID },
+ { 0x002E, 0x002F, .p.property = IDNA_P_DISALLOWED },
+ { 0x0030, 0x0039, .p.property = IDNA_P_PVALID },
+ { 0x003A, 0x0060, .p.property = IDNA_P_DISALLOWED },
+ { 0x0061, 0x007A, .p.property = IDNA_P_PVALID },
+ { 0x007B, 0x00B6, .p.property = IDNA_P_DISALLOWED },
+ { 0x00B7, 0x00B7, .p.property = IDNA_P_CONTEXTO },
+ { 0x00B8, 0x00DE, .p.property = IDNA_P_DISALLOWED },
+ { 0x00DF, 0x00F6, .p.property = IDNA_P_PVALID },
+ { 0x00F7, 0x00F7, .p.property = IDNA_P_DISALLOWED },
+ { 0x00F8, 0x00FF, .p.property = IDNA_P_PVALID },
+ { 0x0100, 0x0100, .p.property = IDNA_P_DISALLOWED },
+ { 0x0101, 0x0101, .p.property = IDNA_P_PVALID },
+ { 0x0102, 0x0102, .p.property = IDNA_P_DISALLOWED },
+ { 0x0103, 0x0103, .p.property = IDNA_P_PVALID },
+ { 0x0104, 0x0104, .p.property = IDNA_P_DISALLOWED },
+ { 0x0105, 0x0105, .p.property = IDNA_P_PVALID },
+ { 0x0106, 0x0106, .p.property = IDNA_P_DISALLOWED },
+ { 0x0107, 0x0107, .p.property = IDNA_P_PVALID },
+ { 0x0108, 0x0108, .p.property = IDNA_P_DISALLOWED },
+ { 0x0109, 0x0109, .p.property = IDNA_P_PVALID },
+ { 0x010A, 0x010A, .p.property = IDNA_P_DISALLOWED },
+ { 0x010B, 0x010B, .p.property = IDNA_P_PVALID },
+ { 0x010C, 0x010C, .p.property = IDNA_P_DISALLOWED },
+ { 0x010D, 0x010D, .p.property = IDNA_P_PVALID },
+ { 0x010E, 0x010E, .p.property = IDNA_P_DISALLOWED },
+ { 0x010F, 0x010F, .p.property = IDNA_P_PVALID },
+ { 0x0110, 0x0110, .p.property = IDNA_P_DISALLOWED },
+ { 0x0111, 0x0111, .p.property = IDNA_P_PVALID },
+ { 0x0112, 0x0112, .p.property = IDNA_P_DISALLOWED },
+ { 0x0113, 0x0113, .p.property = IDNA_P_PVALID },
+ { 0x0114, 0x0114, .p.property = IDNA_P_DISALLOWED },
+ { 0x0115, 0x0115, .p.property = IDNA_P_PVALID },
+ { 0x0116, 0x0116, .p.property = IDNA_P_DISALLOWED },
+ { 0x0117, 0x0117, .p.property = IDNA_P_PVALID },
+ { 0x0118, 0x0118, .p.property = IDNA_P_DISALLOWED },
+ { 0x0119, 0x0119, .p.property = IDNA_P_PVALID },
+ { 0x011A, 0x011A, .p.property = IDNA_P_DISALLOWED },
+ { 0x011B, 0x011B, .p.property = IDNA_P_PVALID },
+ { 0x011C, 0x011C, .p.property = IDNA_P_DISALLOWED },
+ { 0x011D, 0x011D, .p.property = IDNA_P_PVALID },
+ { 0x011E, 0x011E, .p.property = IDNA_P_DISALLOWED },
+ { 0x011F, 0x011F, .p.property = IDNA_P_PVALID },
+ { 0x0120, 0x0120, .p.property = IDNA_P_DISALLOWED },
+ { 0x0121, 0x0121, .p.property = IDNA_P_PVALID },
+ { 0x0122, 0x0122, .p.property = IDNA_P_DISALLOWED },
+ { 0x0123, 0x0123, .p.property = IDNA_P_PVALID },
+ { 0x0124, 0x0124, .p.property = IDNA_P_DISALLOWED },
+ { 0x0125, 0x0125, .p.property = IDNA_P_PVALID },
+ { 0x0126, 0x0126, .p.property = IDNA_P_DISALLOWED },
+ { 0x0127, 0x0127, .p.property = IDNA_P_PVALID },
+ { 0x0128, 0x0128, .p.property = IDNA_P_DISALLOWED },
+ { 0x0129, 0x0129, .p.property = IDNA_P_PVALID },
+ { 0x012A, 0x012A, .p.property = IDNA_P_DISALLOWED },
+ { 0x012B, 0x012B, .p.property = IDNA_P_PVALID },
+ { 0x012C, 0x012C, .p.property = IDNA_P_DISALLOWED },
+ { 0x012D, 0x012D, .p.property = IDNA_P_PVALID },
+ { 0x012E, 0x012E, .p.property = IDNA_P_DISALLOWED },
+ { 0x012F, 0x012F, .p.property = IDNA_P_PVALID },
+ { 0x0130, 0x0130, .p.property = IDNA_P_DISALLOWED },
+ { 0x0131, 0x0131, .p.property = IDNA_P_PVALID },
+ { 0x0132, 0x0134, .p.property = IDNA_P_DISALLOWED },
+ { 0x0135, 0x0135, .p.property = IDNA_P_PVALID },
+ { 0x0136, 0x0136, .p.property = IDNA_P_DISALLOWED },
+ { 0x0137, 0x0138, .p.property = IDNA_P_PVALID },
+ { 0x0139, 0x0139, .p.property = IDNA_P_DISALLOWED },
+ { 0x013A, 0x013A, .p.property = IDNA_P_PVALID },
+ { 0x013B, 0x013B, .p.property = IDNA_P_DISALLOWED },
+ { 0x013C, 0x013C, .p.property = IDNA_P_PVALID },
+ { 0x013D, 0x013D, .p.property = IDNA_P_DISALLOWED },
+ { 0x013E, 0x013E, .p.property = IDNA_P_PVALID },
+ { 0x013F, 0x0141, .p.property = IDNA_P_DISALLOWED },
+ { 0x0142, 0x0142, .p.property = IDNA_P_PVALID },
+ { 0x0143, 0x0143, .p.property = IDNA_P_DISALLOWED },
+ { 0x0144, 0x0144, .p.property = IDNA_P_PVALID },
+ { 0x0145, 0x0145, .p.property = IDNA_P_DISALLOWED },
+ { 0x0146, 0x0146, .p.property = IDNA_P_PVALID },
+ { 0x0147, 0x0147, .p.property = IDNA_P_DISALLOWED },
+ { 0x0148, 0x0148, .p.property = IDNA_P_PVALID },
+ { 0x0149, 0x014A, .p.property = IDNA_P_DISALLOWED },
+ { 0x014B, 0x014B, .p.property = IDNA_P_PVALID },
+ { 0x014C, 0x014C, .p.property = IDNA_P_DISALLOWED },
+ { 0x014D, 0x014D, .p.property = IDNA_P_PVALID },
+ { 0x014E, 0x014E, .p.property = IDNA_P_DISALLOWED },
+ { 0x014F, 0x014F, .p.property = IDNA_P_PVALID },
+ { 0x0150, 0x0150, .p.property = IDNA_P_DISALLOWED },
+ { 0x0151, 0x0151, .p.property = IDNA_P_PVALID },
+ { 0x0152, 0x0152, .p.property = IDNA_P_DISALLOWED },
+ { 0x0153, 0x0153, .p.property = IDNA_P_PVALID },
+ { 0x0154, 0x0154, .p.property = IDNA_P_DISALLOWED },
+ { 0x0155, 0x0155, .p.property = IDNA_P_PVALID },
+ { 0x0156, 0x0156, .p.property = IDNA_P_DISALLOWED },
+ { 0x0157, 0x0157, .p.property = IDNA_P_PVALID },
+ { 0x0158, 0x0158, .p.property = IDNA_P_DISALLOWED },
+ { 0x0159, 0x0159, .p.property = IDNA_P_PVALID },
+ { 0x015A, 0x015A, .p.property = IDNA_P_DISALLOWED },
+ { 0x015B, 0x015B, .p.property = IDNA_P_PVALID },
+ { 0x015C, 0x015C, .p.property = IDNA_P_DISALLOWED },
+ { 0x015D, 0x015D, .p.property = IDNA_P_PVALID },
+ { 0x015E, 0x015E, .p.property = IDNA_P_DISALLOWED },
+ { 0x015F, 0x015F, .p.property = IDNA_P_PVALID },
+ { 0x0160, 0x0160, .p.property = IDNA_P_DISALLOWED },
+ { 0x0161, 0x0161, .p.property = IDNA_P_PVALID },
+ { 0x0162, 0x0162, .p.property = IDNA_P_DISALLOWED },
+ { 0x0163, 0x0163, .p.property = IDNA_P_PVALID },
+ { 0x0164, 0x0164, .p.property = IDNA_P_DISALLOWED },
+ { 0x0165, 0x0165, .p.property = IDNA_P_PVALID },
+ { 0x0166, 0x0166, .p.property = IDNA_P_DISALLOWED },
+ { 0x0167, 0x0167, .p.property = IDNA_P_PVALID },
+ { 0x0168, 0x0168, .p.property = IDNA_P_DISALLOWED },
+ { 0x0169, 0x0169, .p.property = IDNA_P_PVALID },
+ { 0x016A, 0x016A, .p.property = IDNA_P_DISALLOWED },
+ { 0x016B, 0x016B, .p.property = IDNA_P_PVALID },
+ { 0x016C, 0x016C, .p.property = IDNA_P_DISALLOWED },
+ { 0x016D, 0x016D, .p.property = IDNA_P_PVALID },
+ { 0x016E, 0x016E, .p.property = IDNA_P_DISALLOWED },
+ { 0x016F, 0x016F, .p.property = IDNA_P_PVALID },
+ { 0x0170, 0x0170, .p.property = IDNA_P_DISALLOWED },
+ { 0x0171, 0x0171, .p.property = IDNA_P_PVALID },
+ { 0x0172, 0x0172, .p.property = IDNA_P_DISALLOWED },
+ { 0x0173, 0x0173, .p.property = IDNA_P_PVALID },
+ { 0x0174, 0x0174, .p.property = IDNA_P_DISALLOWED },
+ { 0x0175, 0x0175, .p.property = IDNA_P_PVALID },
+ { 0x0176, 0x0176, .p.property = IDNA_P_DISALLOWED },
+ { 0x0177, 0x0177, .p.property = IDNA_P_PVALID },
+ { 0x0178, 0x0179, .p.property = IDNA_P_DISALLOWED },
+ { 0x017A, 0x017A, .p.property = IDNA_P_PVALID },
+ { 0x017B, 0x017B, .p.property = IDNA_P_DISALLOWED },
+ { 0x017C, 0x017C, .p.property = IDNA_P_PVALID },
+ { 0x017D, 0x017D, .p.property = IDNA_P_DISALLOWED },
+ { 0x017E, 0x017E, .p.property = IDNA_P_PVALID },
+ { 0x017F, 0x017F, .p.property = IDNA_P_DISALLOWED },
+ { 0x0180, 0x0180, .p.property = IDNA_P_PVALID },
+ { 0x0181, 0x0182, .p.property = IDNA_P_DISALLOWED },
+ { 0x0183, 0x0183, .p.property = IDNA_P_PVALID },
+ { 0x0184, 0x0184, .p.property = IDNA_P_DISALLOWED },
+ { 0x0185, 0x0185, .p.property = IDNA_P_PVALID },
+ { 0x0186, 0x0187, .p.property = IDNA_P_DISALLOWED },
+ { 0x0188, 0x0188, .p.property = IDNA_P_PVALID },
+ { 0x0189, 0x018B, .p.property = IDNA_P_DISALLOWED },
+ { 0x018C, 0x018D, .p.property = IDNA_P_PVALID },
+ { 0x018E, 0x0191, .p.property = IDNA_P_DISALLOWED },
+ { 0x0192, 0x0192, .p.property = IDNA_P_PVALID },
+ { 0x0193, 0x0194, .p.property = IDNA_P_DISALLOWED },
+ { 0x0195, 0x0195, .p.property = IDNA_P_PVALID },
+ { 0x0196, 0x0198, .p.property = IDNA_P_DISALLOWED },
+ { 0x0199, 0x019B, .p.property = IDNA_P_PVALID },
+ { 0x019C, 0x019D, .p.property = IDNA_P_DISALLOWED },
+ { 0x019E, 0x019E, .p.property = IDNA_P_PVALID },
+ { 0x019F, 0x01A0, .p.property = IDNA_P_DISALLOWED },
+ { 0x01A1, 0x01A1, .p.property = IDNA_P_PVALID },
+ { 0x01A2, 0x01A2, .p.property = IDNA_P_DISALLOWED },
+ { 0x01A3, 0x01A3, .p.property = IDNA_P_PVALID },
+ { 0x01A4, 0x01A4, .p.property = IDNA_P_DISALLOWED },
+ { 0x01A5, 0x01A5, .p.property = IDNA_P_PVALID },
+ { 0x01A6, 0x01A7, .p.property = IDNA_P_DISALLOWED },
+ { 0x01A8, 0x01A8, .p.property = IDNA_P_PVALID },
+ { 0x01A9, 0x01A9, .p.property = IDNA_P_DISALLOWED },
+ { 0x01AA, 0x01AB, .p.property = IDNA_P_PVALID },
+ { 0x01AC, 0x01AC, .p.property = IDNA_P_DISALLOWED },
+ { 0x01AD, 0x01AD, .p.property = IDNA_P_PVALID },
+ { 0x01AE, 0x01AF, .p.property = IDNA_P_DISALLOWED },
+ { 0x01B0, 0x01B0, .p.property = IDNA_P_PVALID },
+ { 0x01B1, 0x01B3, .p.property = IDNA_P_DISALLOWED },
+ { 0x01B4, 0x01B4, .p.property = IDNA_P_PVALID },
+ { 0x01B5, 0x01B5, .p.property = IDNA_P_DISALLOWED },
+ { 0x01B6, 0x01B6, .p.property = IDNA_P_PVALID },
+ { 0x01B7, 0x01B8, .p.property = IDNA_P_DISALLOWED },
+ { 0x01B9, 0x01BB, .p.property = IDNA_P_PVALID },
+ { 0x01BC, 0x01BC, .p.property = IDNA_P_DISALLOWED },
+ { 0x01BD, 0x01C3, .p.property = IDNA_P_PVALID },
+ { 0x01C4, 0x01CD, .p.property = IDNA_P_DISALLOWED },
+ { 0x01CE, 0x01CE, .p.property = IDNA_P_PVALID },
+ { 0x01CF, 0x01CF, .p.property = IDNA_P_DISALLOWED },
+ { 0x01D0, 0x01D0, .p.property = IDNA_P_PVALID },
+ { 0x01D1, 0x01D1, .p.property = IDNA_P_DISALLOWED },
+ { 0x01D2, 0x01D2, .p.property = IDNA_P_PVALID },
+ { 0x01D3, 0x01D3, .p.property = IDNA_P_DISALLOWED },
+ { 0x01D4, 0x01D4, .p.property = IDNA_P_PVALID },
+ { 0x01D5, 0x01D5, .p.property = IDNA_P_DISALLOWED },
+ { 0x01D6, 0x01D6, .p.property = IDNA_P_PVALID },
+ { 0x01D7, 0x01D7, .p.property = IDNA_P_DISALLOWED },
+ { 0x01D8, 0x01D8, .p.property = IDNA_P_PVALID },
+ { 0x01D9, 0x01D9, .p.property = IDNA_P_DISALLOWED },
+ { 0x01DA, 0x01DA, .p.property = IDNA_P_PVALID },
+ { 0x01DB, 0x01DB, .p.property = IDNA_P_DISALLOWED },
+ { 0x01DC, 0x01DD, .p.property = IDNA_P_PVALID },
+ { 0x01DE, 0x01DE, .p.property = IDNA_P_DISALLOWED },
+ { 0x01DF, 0x01DF, .p.property = IDNA_P_PVALID },
+ { 0x01E0, 0x01E0, .p.property = IDNA_P_DISALLOWED },
+ { 0x01E1, 0x01E1, .p.property = IDNA_P_PVALID },
+ { 0x01E2, 0x01E2, .p.property = IDNA_P_DISALLOWED },
+ { 0x01E3, 0x01E3, .p.property = IDNA_P_PVALID },
+ { 0x01E4, 0x01E4, .p.property = IDNA_P_DISALLOWED },
+ { 0x01E5, 0x01E5, .p.property = IDNA_P_PVALID },
+ { 0x01E6, 0x01E6, .p.property = IDNA_P_DISALLOWED },
+ { 0x01E7, 0x01E7, .p.property = IDNA_P_PVALID },
+ { 0x01E8, 0x01E8, .p.property = IDNA_P_DISALLOWED },
+ { 0x01E9, 0x01E9, .p.property = IDNA_P_PVALID },
+ { 0x01EA, 0x01EA, .p.property = IDNA_P_DISALLOWED },
+ { 0x01EB, 0x01EB, .p.property = IDNA_P_PVALID },
+ { 0x01EC, 0x01EC, .p.property = IDNA_P_DISALLOWED },
+ { 0x01ED, 0x01ED, .p.property = IDNA_P_PVALID },
+ { 0x01EE, 0x01EE, .p.property = IDNA_P_DISALLOWED },
+ { 0x01EF, 0x01F0, .p.property = IDNA_P_PVALID },
+ { 0x01F1, 0x01F4, .p.property = IDNA_P_DISALLOWED },
+ { 0x01F5, 0x01F5, .p.property = IDNA_P_PVALID },
+ { 0x01F6, 0x01F8, .p.property = IDNA_P_DISALLOWED },
+ { 0x01F9, 0x01F9, .p.property = IDNA_P_PVALID },
+ { 0x01FA, 0x01FA, .p.property = IDNA_P_DISALLOWED },
+ { 0x01FB, 0x01FB, .p.property = IDNA_P_PVALID },
+ { 0x01FC, 0x01FC, .p.property = IDNA_P_DISALLOWED },
+ { 0x01FD, 0x01FD, .p.property = IDNA_P_PVALID },
+ { 0x01FE, 0x01FE, .p.property = IDNA_P_DISALLOWED },
+ { 0x01FF, 0x01FF, .p.property = IDNA_P_PVALID },
+ { 0x0200, 0x0200, .p.property = IDNA_P_DISALLOWED },
+ { 0x0201, 0x0201, .p.property = IDNA_P_PVALID },
+ { 0x0202, 0x0202, .p.property = IDNA_P_DISALLOWED },
+ { 0x0203, 0x0203, .p.property = IDNA_P_PVALID },
+ { 0x0204, 0x0204, .p.property = IDNA_P_DISALLOWED },
+ { 0x0205, 0x0205, .p.property = IDNA_P_PVALID },
+ { 0x0206, 0x0206, .p.property = IDNA_P_DISALLOWED },
+ { 0x0207, 0x0207, .p.property = IDNA_P_PVALID },
+ { 0x0208, 0x0208, .p.property = IDNA_P_DISALLOWED },
+ { 0x0209, 0x0209, .p.property = IDNA_P_PVALID },
+ { 0x020A, 0x020A, .p.property = IDNA_P_DISALLOWED },
+ { 0x020B, 0x020B, .p.property = IDNA_P_PVALID },
+ { 0x020C, 0x020C, .p.property = IDNA_P_DISALLOWED },
+ { 0x020D, 0x020D, .p.property = IDNA_P_PVALID },
+ { 0x020E, 0x020E, .p.property = IDNA_P_DISALLOWED },
+ { 0x020F, 0x020F, .p.property = IDNA_P_PVALID },
+ { 0x0210, 0x0210, .p.property = IDNA_P_DISALLOWED },
+ { 0x0211, 0x0211, .p.property = IDNA_P_PVALID },
+ { 0x0212, 0x0212, .p.property = IDNA_P_DISALLOWED },
+ { 0x0213, 0x0213, .p.property = IDNA_P_PVALID },
+ { 0x0214, 0x0214, .p.property = IDNA_P_DISALLOWED },
+ { 0x0215, 0x0215, .p.property = IDNA_P_PVALID },
+ { 0x0216, 0x0216, .p.property = IDNA_P_DISALLOWED },
+ { 0x0217, 0x0217, .p.property = IDNA_P_PVALID },
+ { 0x0218, 0x0218, .p.property = IDNA_P_DISALLOWED },
+ { 0x0219, 0x0219, .p.property = IDNA_P_PVALID },
+ { 0x021A, 0x021A, .p.property = IDNA_P_DISALLOWED },
+ { 0x021B, 0x021B, .p.property = IDNA_P_PVALID },
+ { 0x021C, 0x021C, .p.property = IDNA_P_DISALLOWED },
+ { 0x021D, 0x021D, .p.property = IDNA_P_PVALID },
+ { 0x021E, 0x021E, .p.property = IDNA_P_DISALLOWED },
+ { 0x021F, 0x021F, .p.property = IDNA_P_PVALID },
+ { 0x0220, 0x0220, .p.property = IDNA_P_DISALLOWED },
+ { 0x0221, 0x0221, .p.property = IDNA_P_PVALID },
+ { 0x0222, 0x0222, .p.property = IDNA_P_DISALLOWED },
+ { 0x0223, 0x0223, .p.property = IDNA_P_PVALID },
+ { 0x0224, 0x0224, .p.property = IDNA_P_DISALLOWED },
+ { 0x0225, 0x0225, .p.property = IDNA_P_PVALID },
+ { 0x0226, 0x0226, .p.property = IDNA_P_DISALLOWED },
+ { 0x0227, 0x0227, .p.property = IDNA_P_PVALID },
+ { 0x0228, 0x0228, .p.property = IDNA_P_DISALLOWED },
+ { 0x0229, 0x0229, .p.property = IDNA_P_PVALID },
+ { 0x022A, 0x022A, .p.property = IDNA_P_DISALLOWED },
+ { 0x022B, 0x022B, .p.property = IDNA_P_PVALID },
+ { 0x022C, 0x022C, .p.property = IDNA_P_DISALLOWED },
+ { 0x022D, 0x022D, .p.property = IDNA_P_PVALID },
+ { 0x022E, 0x022E, .p.property = IDNA_P_DISALLOWED },
+ { 0x022F, 0x022F, .p.property = IDNA_P_PVALID },
+ { 0x0230, 0x0230, .p.property = IDNA_P_DISALLOWED },
+ { 0x0231, 0x0231, .p.property = IDNA_P_PVALID },
+ { 0x0232, 0x0232, .p.property = IDNA_P_DISALLOWED },
+ { 0x0233, 0x0239, .p.property = IDNA_P_PVALID },
+ { 0x023A, 0x023B, .p.property = IDNA_P_DISALLOWED },
+ { 0x023C, 0x023C, .p.property = IDNA_P_PVALID },
+ { 0x023D, 0x023E, .p.property = IDNA_P_DISALLOWED },
+ { 0x023F, 0x0240, .p.property = IDNA_P_PVALID },
+ { 0x0241, 0x0241, .p.property = IDNA_P_DISALLOWED },
+ { 0x0242, 0x0242, .p.property = IDNA_P_PVALID },
+ { 0x0243, 0x0246, .p.property = IDNA_P_DISALLOWED },
+ { 0x0247, 0x0247, .p.property = IDNA_P_PVALID },
+ { 0x0248, 0x0248, .p.property = IDNA_P_DISALLOWED },
+ { 0x0249, 0x0249, .p.property = IDNA_P_PVALID },
+ { 0x024A, 0x024A, .p.property = IDNA_P_DISALLOWED },
+ { 0x024B, 0x024B, .p.property = IDNA_P_PVALID },
+ { 0x024C, 0x024C, .p.property = IDNA_P_DISALLOWED },
+ { 0x024D, 0x024D, .p.property = IDNA_P_PVALID },
+ { 0x024E, 0x024E, .p.property = IDNA_P_DISALLOWED },
+ { 0x024F, 0x02AF, .p.property = IDNA_P_PVALID },
+ { 0x02B0, 0x02B8, .p.property = IDNA_P_DISALLOWED },
+ { 0x02B9, 0x02C1, .p.property = IDNA_P_PVALID },
+ { 0x02C2, 0x02C5, .p.property = IDNA_P_DISALLOWED },
+ { 0x02C6, 0x02D1, .p.property = IDNA_P_PVALID },
+ { 0x02D2, 0x02EB, .p.property = IDNA_P_DISALLOWED },
+ { 0x02EC, 0x02EC, .p.property = IDNA_P_PVALID },
+ { 0x02ED, 0x02ED, .p.property = IDNA_P_DISALLOWED },
+ { 0x02EE, 0x02EE, .p.property = IDNA_P_PVALID },
+ { 0x02EF, 0x02FF, .p.property = IDNA_P_DISALLOWED },
+ { 0x0300, 0x033F, .p.property = IDNA_P_PVALID },
+ { 0x0340, 0x0341, .p.property = IDNA_P_DISALLOWED },
+ { 0x0342, 0x0342, .p.property = IDNA_P_PVALID },
+ { 0x0343, 0x0345, .p.property = IDNA_P_DISALLOWED },
+ { 0x0346, 0x034E, .p.property = IDNA_P_PVALID },
+ { 0x034F, 0x034F, .p.property = IDNA_P_DISALLOWED },
+ { 0x0350, 0x036F, .p.property = IDNA_P_PVALID },
+ { 0x0370, 0x0370, .p.property = IDNA_P_DISALLOWED },
+ { 0x0371, 0x0371, .p.property = IDNA_P_PVALID },
+ { 0x0372, 0x0372, .p.property = IDNA_P_DISALLOWED },
+ { 0x0373, 0x0373, .p.property = IDNA_P_PVALID },
+ { 0x0374, 0x0374, .p.property = IDNA_P_DISALLOWED },
+ { 0x0375, 0x0375, .p.property = IDNA_P_CONTEXTO },
+ { 0x0376, 0x0376, .p.property = IDNA_P_DISALLOWED },
+ { 0x0377, 0x0377, .p.property = IDNA_P_PVALID },
+ { 0x0378, 0x0379, .p.property = IDNA_P_UNASSIGNED },
+ { 0x037A, 0x037A, .p.property = IDNA_P_DISALLOWED },
+ { 0x037B, 0x037D, .p.property = IDNA_P_PVALID },
+ { 0x037E, 0x037E, .p.property = IDNA_P_DISALLOWED },
+ { 0x037F, 0x0383, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0384, 0x038A, .p.property = IDNA_P_DISALLOWED },
+ { 0x038B, 0x038B, .p.property = IDNA_P_UNASSIGNED },
+ { 0x038C, 0x038C, .p.property = IDNA_P_DISALLOWED },
+ { 0x038D, 0x038D, .p.property = IDNA_P_UNASSIGNED },
+ { 0x038E, 0x038F, .p.property = IDNA_P_DISALLOWED },
+ { 0x0390, 0x0390, .p.property = IDNA_P_PVALID },
+ { 0x0391, 0x03A1, .p.property = IDNA_P_DISALLOWED },
+ { 0x03A2, 0x03A2, .p.property = IDNA_P_UNASSIGNED },
+ { 0x03A3, 0x03AB, .p.property = IDNA_P_DISALLOWED },
+ { 0x03AC, 0x03CE, .p.property = IDNA_P_PVALID },
+ { 0x03CF, 0x03D6, .p.property = IDNA_P_DISALLOWED },
+ { 0x03D7, 0x03D7, .p.property = IDNA_P_PVALID },
+ { 0x03D8, 0x03D8, .p.property = IDNA_P_DISALLOWED },
+ { 0x03D9, 0x03D9, .p.property = IDNA_P_PVALID },
+ { 0x03DA, 0x03DA, .p.property = IDNA_P_DISALLOWED },
+ { 0x03DB, 0x03DB, .p.property = IDNA_P_PVALID },
+ { 0x03DC, 0x03DC, .p.property = IDNA_P_DISALLOWED },
+ { 0x03DD, 0x03DD, .p.property = IDNA_P_PVALID },
+ { 0x03DE, 0x03DE, .p.property = IDNA_P_DISALLOWED },
+ { 0x03DF, 0x03DF, .p.property = IDNA_P_PVALID },
+ { 0x03E0, 0x03E0, .p.property = IDNA_P_DISALLOWED },
+ { 0x03E1, 0x03E1, .p.property = IDNA_P_PVALID },
+ { 0x03E2, 0x03E2, .p.property = IDNA_P_DISALLOWED },
+ { 0x03E3, 0x03E3, .p.property = IDNA_P_PVALID },
+ { 0x03E4, 0x03E4, .p.property = IDNA_P_DISALLOWED },
+ { 0x03E5, 0x03E5, .p.property = IDNA_P_PVALID },
+ { 0x03E6, 0x03E6, .p.property = IDNA_P_DISALLOWED },
+ { 0x03E7, 0x03E7, .p.property = IDNA_P_PVALID },
+ { 0x03E8, 0x03E8, .p.property = IDNA_P_DISALLOWED },
+ { 0x03E9, 0x03E9, .p.property = IDNA_P_PVALID },
+ { 0x03EA, 0x03EA, .p.property = IDNA_P_DISALLOWED },
+ { 0x03EB, 0x03EB, .p.property = IDNA_P_PVALID },
+ { 0x03EC, 0x03EC, .p.property = IDNA_P_DISALLOWED },
+ { 0x03ED, 0x03ED, .p.property = IDNA_P_PVALID },
+ { 0x03EE, 0x03EE, .p.property = IDNA_P_DISALLOWED },
+ { 0x03EF, 0x03EF, .p.property = IDNA_P_PVALID },
+ { 0x03F0, 0x03F2, .p.property = IDNA_P_DISALLOWED },
+ { 0x03F3, 0x03F3, .p.property = IDNA_P_PVALID },
+ { 0x03F4, 0x03F7, .p.property = IDNA_P_DISALLOWED },
+ { 0x03F8, 0x03F8, .p.property = IDNA_P_PVALID },
+ { 0x03F9, 0x03FA, .p.property = IDNA_P_DISALLOWED },
+ { 0x03FB, 0x03FC, .p.property = IDNA_P_PVALID },
+ { 0x03FD, 0x042F, .p.property = IDNA_P_DISALLOWED },
+ { 0x0430, 0x045F, .p.property = IDNA_P_PVALID },
+ { 0x0460, 0x0460, .p.property = IDNA_P_DISALLOWED },
+ { 0x0461, 0x0461, .p.property = IDNA_P_PVALID },
+ { 0x0462, 0x0462, .p.property = IDNA_P_DISALLOWED },
+ { 0x0463, 0x0463, .p.property = IDNA_P_PVALID },
+ { 0x0464, 0x0464, .p.property = IDNA_P_DISALLOWED },
+ { 0x0465, 0x0465, .p.property = IDNA_P_PVALID },
+ { 0x0466, 0x0466, .p.property = IDNA_P_DISALLOWED },
+ { 0x0467, 0x0467, .p.property = IDNA_P_PVALID },
+ { 0x0468, 0x0468, .p.property = IDNA_P_DISALLOWED },
+ { 0x0469, 0x0469, .p.property = IDNA_P_PVALID },
+ { 0x046A, 0x046A, .p.property = IDNA_P_DISALLOWED },
+ { 0x046B, 0x046B, .p.property = IDNA_P_PVALID },
+ { 0x046C, 0x046C, .p.property = IDNA_P_DISALLOWED },
+ { 0x046D, 0x046D, .p.property = IDNA_P_PVALID },
+ { 0x046E, 0x046E, .p.property = IDNA_P_DISALLOWED },
+ { 0x046F, 0x046F, .p.property = IDNA_P_PVALID },
+ { 0x0470, 0x0470, .p.property = IDNA_P_DISALLOWED },
+ { 0x0471, 0x0471, .p.property = IDNA_P_PVALID },
+ { 0x0472, 0x0472, .p.property = IDNA_P_DISALLOWED },
+ { 0x0473, 0x0473, .p.property = IDNA_P_PVALID },
+ { 0x0474, 0x0474, .p.property = IDNA_P_DISALLOWED },
+ { 0x0475, 0x0475, .p.property = IDNA_P_PVALID },
+ { 0x0476, 0x0476, .p.property = IDNA_P_DISALLOWED },
+ { 0x0477, 0x0477, .p.property = IDNA_P_PVALID },
+ { 0x0478, 0x0478, .p.property = IDNA_P_DISALLOWED },
+ { 0x0479, 0x0479, .p.property = IDNA_P_PVALID },
+ { 0x047A, 0x047A, .p.property = IDNA_P_DISALLOWED },
+ { 0x047B, 0x047B, .p.property = IDNA_P_PVALID },
+ { 0x047C, 0x047C, .p.property = IDNA_P_DISALLOWED },
+ { 0x047D, 0x047D, .p.property = IDNA_P_PVALID },
+ { 0x047E, 0x047E, .p.property = IDNA_P_DISALLOWED },
+ { 0x047F, 0x047F, .p.property = IDNA_P_PVALID },
+ { 0x0480, 0x0480, .p.property = IDNA_P_DISALLOWED },
+ { 0x0481, 0x0481, .p.property = IDNA_P_PVALID },
+ { 0x0482, 0x0482, .p.property = IDNA_P_DISALLOWED },
+ { 0x0483, 0x0487, .p.property = IDNA_P_PVALID },
+ { 0x0488, 0x048A, .p.property = IDNA_P_DISALLOWED },
+ { 0x048B, 0x048B, .p.property = IDNA_P_PVALID },
+ { 0x048C, 0x048C, .p.property = IDNA_P_DISALLOWED },
+ { 0x048D, 0x048D, .p.property = IDNA_P_PVALID },
+ { 0x048E, 0x048E, .p.property = IDNA_P_DISALLOWED },
+ { 0x048F, 0x048F, .p.property = IDNA_P_PVALID },
+ { 0x0490, 0x0490, .p.property = IDNA_P_DISALLOWED },
+ { 0x0491, 0x0491, .p.property = IDNA_P_PVALID },
+ { 0x0492, 0x0492, .p.property = IDNA_P_DISALLOWED },
+ { 0x0493, 0x0493, .p.property = IDNA_P_PVALID },
+ { 0x0494, 0x0494, .p.property = IDNA_P_DISALLOWED },
+ { 0x0495, 0x0495, .p.property = IDNA_P_PVALID },
+ { 0x0496, 0x0496, .p.property = IDNA_P_DISALLOWED },
+ { 0x0497, 0x0497, .p.property = IDNA_P_PVALID },
+ { 0x0498, 0x0498, .p.property = IDNA_P_DISALLOWED },
+ { 0x0499, 0x0499, .p.property = IDNA_P_PVALID },
+ { 0x049A, 0x049A, .p.property = IDNA_P_DISALLOWED },
+ { 0x049B, 0x049B, .p.property = IDNA_P_PVALID },
+ { 0x049C, 0x049C, .p.property = IDNA_P_DISALLOWED },
+ { 0x049D, 0x049D, .p.property = IDNA_P_PVALID },
+ { 0x049E, 0x049E, .p.property = IDNA_P_DISALLOWED },
+ { 0x049F, 0x049F, .p.property = IDNA_P_PVALID },
+ { 0x04A0, 0x04A0, .p.property = IDNA_P_DISALLOWED },
+ { 0x04A1, 0x04A1, .p.property = IDNA_P_PVALID },
+ { 0x04A2, 0x04A2, .p.property = IDNA_P_DISALLOWED },
+ { 0x04A3, 0x04A3, .p.property = IDNA_P_PVALID },
+ { 0x04A4, 0x04A4, .p.property = IDNA_P_DISALLOWED },
+ { 0x04A5, 0x04A5, .p.property = IDNA_P_PVALID },
+ { 0x04A6, 0x04A6, .p.property = IDNA_P_DISALLOWED },
+ { 0x04A7, 0x04A7, .p.property = IDNA_P_PVALID },
+ { 0x04A8, 0x04A8, .p.property = IDNA_P_DISALLOWED },
+ { 0x04A9, 0x04A9, .p.property = IDNA_P_PVALID },
+ { 0x04AA, 0x04AA, .p.property = IDNA_P_DISALLOWED },
+ { 0x04AB, 0x04AB, .p.property = IDNA_P_PVALID },
+ { 0x04AC, 0x04AC, .p.property = IDNA_P_DISALLOWED },
+ { 0x04AD, 0x04AD, .p.property = IDNA_P_PVALID },
+ { 0x04AE, 0x04AE, .p.property = IDNA_P_DISALLOWED },
+ { 0x04AF, 0x04AF, .p.property = IDNA_P_PVALID },
+ { 0x04B0, 0x04B0, .p.property = IDNA_P_DISALLOWED },
+ { 0x04B1, 0x04B1, .p.property = IDNA_P_PVALID },
+ { 0x04B2, 0x04B2, .p.property = IDNA_P_DISALLOWED },
+ { 0x04B3, 0x04B3, .p.property = IDNA_P_PVALID },
+ { 0x04B4, 0x04B4, .p.property = IDNA_P_DISALLOWED },
+ { 0x04B5, 0x04B5, .p.property = IDNA_P_PVALID },
+ { 0x04B6, 0x04B6, .p.property = IDNA_P_DISALLOWED },
+ { 0x04B7, 0x04B7, .p.property = IDNA_P_PVALID },
+ { 0x04B8, 0x04B8, .p.property = IDNA_P_DISALLOWED },
+ { 0x04B9, 0x04B9, .p.property = IDNA_P_PVALID },
+ { 0x04BA, 0x04BA, .p.property = IDNA_P_DISALLOWED },
+ { 0x04BB, 0x04BB, .p.property = IDNA_P_PVALID },
+ { 0x04BC, 0x04BC, .p.property = IDNA_P_DISALLOWED },
+ { 0x04BD, 0x04BD, .p.property = IDNA_P_PVALID },
+ { 0x04BE, 0x04BE, .p.property = IDNA_P_DISALLOWED },
+ { 0x04BF, 0x04BF, .p.property = IDNA_P_PVALID },
+ { 0x04C0, 0x04C1, .p.property = IDNA_P_DISALLOWED },
+ { 0x04C2, 0x04C2, .p.property = IDNA_P_PVALID },
+ { 0x04C3, 0x04C3, .p.property = IDNA_P_DISALLOWED },
+ { 0x04C4, 0x04C4, .p.property = IDNA_P_PVALID },
+ { 0x04C5, 0x04C5, .p.property = IDNA_P_DISALLOWED },
+ { 0x04C6, 0x04C6, .p.property = IDNA_P_PVALID },
+ { 0x04C7, 0x04C7, .p.property = IDNA_P_DISALLOWED },
+ { 0x04C8, 0x04C8, .p.property = IDNA_P_PVALID },
+ { 0x04C9, 0x04C9, .p.property = IDNA_P_DISALLOWED },
+ { 0x04CA, 0x04CA, .p.property = IDNA_P_PVALID },
+ { 0x04CB, 0x04CB, .p.property = IDNA_P_DISALLOWED },
+ { 0x04CC, 0x04CC, .p.property = IDNA_P_PVALID },
+ { 0x04CD, 0x04CD, .p.property = IDNA_P_DISALLOWED },
+ { 0x04CE, 0x04CF, .p.property = IDNA_P_PVALID },
+ { 0x04D0, 0x04D0, .p.property = IDNA_P_DISALLOWED },
+ { 0x04D1, 0x04D1, .p.property = IDNA_P_PVALID },
+ { 0x04D2, 0x04D2, .p.property = IDNA_P_DISALLOWED },
+ { 0x04D3, 0x04D3, .p.property = IDNA_P_PVALID },
+ { 0x04D4, 0x04D4, .p.property = IDNA_P_DISALLOWED },
+ { 0x04D5, 0x04D5, .p.property = IDNA_P_PVALID },
+ { 0x04D6, 0x04D6, .p.property = IDNA_P_DISALLOWED },
+ { 0x04D7, 0x04D7, .p.property = IDNA_P_PVALID },
+ { 0x04D8, 0x04D8, .p.property = IDNA_P_DISALLOWED },
+ { 0x04D9, 0x04D9, .p.property = IDNA_P_PVALID },
+ { 0x04DA, 0x04DA, .p.property = IDNA_P_DISALLOWED },
+ { 0x04DB, 0x04DB, .p.property = IDNA_P_PVALID },
+ { 0x04DC, 0x04DC, .p.property = IDNA_P_DISALLOWED },
+ { 0x04DD, 0x04DD, .p.property = IDNA_P_PVALID },
+ { 0x04DE, 0x04DE, .p.property = IDNA_P_DISALLOWED },
+ { 0x04DF, 0x04DF, .p.property = IDNA_P_PVALID },
+ { 0x04E0, 0x04E0, .p.property = IDNA_P_DISALLOWED },
+ { 0x04E1, 0x04E1, .p.property = IDNA_P_PVALID },
+ { 0x04E2, 0x04E2, .p.property = IDNA_P_DISALLOWED },
+ { 0x04E3, 0x04E3, .p.property = IDNA_P_PVALID },
+ { 0x04E4, 0x04E4, .p.property = IDNA_P_DISALLOWED },
+ { 0x04E5, 0x04E5, .p.property = IDNA_P_PVALID },
+ { 0x04E6, 0x04E6, .p.property = IDNA_P_DISALLOWED },
+ { 0x04E7, 0x04E7, .p.property = IDNA_P_PVALID },
+ { 0x04E8, 0x04E8, .p.property = IDNA_P_DISALLOWED },
+ { 0x04E9, 0x04E9, .p.property = IDNA_P_PVALID },
+ { 0x04EA, 0x04EA, .p.property = IDNA_P_DISALLOWED },
+ { 0x04EB, 0x04EB, .p.property = IDNA_P_PVALID },
+ { 0x04EC, 0x04EC, .p.property = IDNA_P_DISALLOWED },
+ { 0x04ED, 0x04ED, .p.property = IDNA_P_PVALID },
+ { 0x04EE, 0x04EE, .p.property = IDNA_P_DISALLOWED },
+ { 0x04EF, 0x04EF, .p.property = IDNA_P_PVALID },
+ { 0x04F0, 0x04F0, .p.property = IDNA_P_DISALLOWED },
+ { 0x04F1, 0x04F1, .p.property = IDNA_P_PVALID },
+ { 0x04F2, 0x04F2, .p.property = IDNA_P_DISALLOWED },
+ { 0x04F3, 0x04F3, .p.property = IDNA_P_PVALID },
+ { 0x04F4, 0x04F4, .p.property = IDNA_P_DISALLOWED },
+ { 0x04F5, 0x04F5, .p.property = IDNA_P_PVALID },
+ { 0x04F6, 0x04F6, .p.property = IDNA_P_DISALLOWED },
+ { 0x04F7, 0x04F7, .p.property = IDNA_P_PVALID },
+ { 0x04F8, 0x04F8, .p.property = IDNA_P_DISALLOWED },
+ { 0x04F9, 0x04F9, .p.property = IDNA_P_PVALID },
+ { 0x04FA, 0x04FA, .p.property = IDNA_P_DISALLOWED },
+ { 0x04FB, 0x04FB, .p.property = IDNA_P_PVALID },
+ { 0x04FC, 0x04FC, .p.property = IDNA_P_DISALLOWED },
+ { 0x04FD, 0x04FD, .p.property = IDNA_P_PVALID },
+ { 0x04FE, 0x04FE, .p.property = IDNA_P_DISALLOWED },
+ { 0x04FF, 0x04FF, .p.property = IDNA_P_PVALID },
+ { 0x0500, 0x0500, .p.property = IDNA_P_DISALLOWED },
+ { 0x0501, 0x0501, .p.property = IDNA_P_PVALID },
+ { 0x0502, 0x0502, .p.property = IDNA_P_DISALLOWED },
+ { 0x0503, 0x0503, .p.property = IDNA_P_PVALID },
+ { 0x0504, 0x0504, .p.property = IDNA_P_DISALLOWED },
+ { 0x0505, 0x0505, .p.property = IDNA_P_PVALID },
+ { 0x0506, 0x0506, .p.property = IDNA_P_DISALLOWED },
+ { 0x0507, 0x0507, .p.property = IDNA_P_PVALID },
+ { 0x0508, 0x0508, .p.property = IDNA_P_DISALLOWED },
+ { 0x0509, 0x0509, .p.property = IDNA_P_PVALID },
+ { 0x050A, 0x050A, .p.property = IDNA_P_DISALLOWED },
+ { 0x050B, 0x050B, .p.property = IDNA_P_PVALID },
+ { 0x050C, 0x050C, .p.property = IDNA_P_DISALLOWED },
+ { 0x050D, 0x050D, .p.property = IDNA_P_PVALID },
+ { 0x050E, 0x050E, .p.property = IDNA_P_DISALLOWED },
+ { 0x050F, 0x050F, .p.property = IDNA_P_PVALID },
+ { 0x0510, 0x0510, .p.property = IDNA_P_DISALLOWED },
+ { 0x0511, 0x0511, .p.property = IDNA_P_PVALID },
+ { 0x0512, 0x0512, .p.property = IDNA_P_DISALLOWED },
+ { 0x0513, 0x0513, .p.property = IDNA_P_PVALID },
+ { 0x0514, 0x0514, .p.property = IDNA_P_DISALLOWED },
+ { 0x0515, 0x0515, .p.property = IDNA_P_PVALID },
+ { 0x0516, 0x0516, .p.property = IDNA_P_DISALLOWED },
+ { 0x0517, 0x0517, .p.property = IDNA_P_PVALID },
+ { 0x0518, 0x0518, .p.property = IDNA_P_DISALLOWED },
+ { 0x0519, 0x0519, .p.property = IDNA_P_PVALID },
+ { 0x051A, 0x051A, .p.property = IDNA_P_DISALLOWED },
+ { 0x051B, 0x051B, .p.property = IDNA_P_PVALID },
+ { 0x051C, 0x051C, .p.property = IDNA_P_DISALLOWED },
+ { 0x051D, 0x051D, .p.property = IDNA_P_PVALID },
+ { 0x051E, 0x051E, .p.property = IDNA_P_DISALLOWED },
+ { 0x051F, 0x051F, .p.property = IDNA_P_PVALID },
+ { 0x0520, 0x0520, .p.property = IDNA_P_DISALLOWED },
+ { 0x0521, 0x0521, .p.property = IDNA_P_PVALID },
+ { 0x0522, 0x0522, .p.property = IDNA_P_DISALLOWED },
+ { 0x0523, 0x0523, .p.property = IDNA_P_PVALID },
+ { 0x0524, 0x0524, .p.property = IDNA_P_DISALLOWED },
+ { 0x0525, 0x0525, .p.property = IDNA_P_PVALID },
+ { 0x0526, 0x0530, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0531, 0x0556, .p.property = IDNA_P_DISALLOWED },
+ { 0x0557, 0x0558, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0559, 0x0559, .p.property = IDNA_P_PVALID },
+ { 0x055A, 0x055F, .p.property = IDNA_P_DISALLOWED },
+ { 0x0560, 0x0560, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0561, 0x0586, .p.property = IDNA_P_PVALID },
+ { 0x0587, 0x0587, .p.property = IDNA_P_DISALLOWED },
+ { 0x0588, 0x0588, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0589, 0x058A, .p.property = IDNA_P_DISALLOWED },
+ { 0x058B, 0x0590, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0591, 0x05BD, .p.property = IDNA_P_PVALID },
+ { 0x05BE, 0x05BE, .p.property = IDNA_P_DISALLOWED },
+ { 0x05BF, 0x05BF, .p.property = IDNA_P_PVALID },
+ { 0x05C0, 0x05C0, .p.property = IDNA_P_DISALLOWED },
+ { 0x05C1, 0x05C2, .p.property = IDNA_P_PVALID },
+ { 0x05C3, 0x05C3, .p.property = IDNA_P_DISALLOWED },
+ { 0x05C4, 0x05C5, .p.property = IDNA_P_PVALID },
+ { 0x05C6, 0x05C6, .p.property = IDNA_P_DISALLOWED },
+ { 0x05C7, 0x05C7, .p.property = IDNA_P_PVALID },
+ { 0x05C8, 0x05CF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x05D0, 0x05EA, .p.property = IDNA_P_PVALID },
+ { 0x05EB, 0x05EF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x05F0, 0x05F2, .p.property = IDNA_P_PVALID },
+ { 0x05F3, 0x05F4, .p.property = IDNA_P_CONTEXTO },
+ { 0x05F5, 0x05FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0600, 0x0603, .p.property = IDNA_P_DISALLOWED },
+ { 0x0604, 0x0605, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0606, 0x060F, .p.property = IDNA_P_DISALLOWED },
+ { 0x0610, 0x061A, .p.property = IDNA_P_PVALID },
+ { 0x061B, 0x061B, .p.property = IDNA_P_DISALLOWED },
+ { 0x061C, 0x061D, .p.property = IDNA_P_UNASSIGNED },
+ { 0x061E, 0x061F, .p.property = IDNA_P_DISALLOWED },
+ { 0x0620, 0x0620, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0621, 0x063F, .p.property = IDNA_P_PVALID },
+ { 0x0640, 0x0640, .p.property = IDNA_P_DISALLOWED },
+ { 0x0641, 0x065E, .p.property = IDNA_P_PVALID },
+ { 0x065F, 0x065F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0660, 0x0669, .p.property = IDNA_P_CONTEXTO },
+ { 0x066A, 0x066D, .p.property = IDNA_P_DISALLOWED },
+ { 0x066E, 0x0674, .p.property = IDNA_P_PVALID },
+ { 0x0675, 0x0678, .p.property = IDNA_P_DISALLOWED },
+ { 0x0679, 0x06D3, .p.property = IDNA_P_PVALID },
+ { 0x06D4, 0x06D4, .p.property = IDNA_P_DISALLOWED },
+ { 0x06D5, 0x06DC, .p.property = IDNA_P_PVALID },
+ { 0x06DD, 0x06DE, .p.property = IDNA_P_DISALLOWED },
+ { 0x06DF, 0x06E8, .p.property = IDNA_P_PVALID },
+ { 0x06E9, 0x06E9, .p.property = IDNA_P_DISALLOWED },
+ { 0x06EA, 0x06EF, .p.property = IDNA_P_PVALID },
+ { 0x06F0, 0x06F9, .p.property = IDNA_P_CONTEXTO },
+ { 0x06FA, 0x06FF, .p.property = IDNA_P_PVALID },
+ { 0x0700, 0x070D, .p.property = IDNA_P_DISALLOWED },
+ { 0x070E, 0x070E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x070F, 0x070F, .p.property = IDNA_P_DISALLOWED },
+ { 0x0710, 0x074A, .p.property = IDNA_P_PVALID },
+ { 0x074B, 0x074C, .p.property = IDNA_P_UNASSIGNED },
+ { 0x074D, 0x07B1, .p.property = IDNA_P_PVALID },
+ { 0x07B2, 0x07BF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x07C0, 0x07F5, .p.property = IDNA_P_PVALID },
+ { 0x07F6, 0x07FA, .p.property = IDNA_P_DISALLOWED },
+ { 0x07FB, 0x07FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0800, 0x082D, .p.property = IDNA_P_PVALID },
+ { 0x082E, 0x082F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0830, 0x083E, .p.property = IDNA_P_DISALLOWED },
+ { 0x083F, 0x08FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0900, 0x0939, .p.property = IDNA_P_PVALID },
+ { 0x093A, 0x093B, .p.property = IDNA_P_UNASSIGNED },
+ { 0x093C, 0x094E, .p.property = IDNA_P_PVALID },
+ { 0x094F, 0x094F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0950, 0x0955, .p.property = IDNA_P_PVALID },
+ { 0x0956, 0x0957, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0958, 0x095F, .p.property = IDNA_P_DISALLOWED },
+ { 0x0960, 0x0963, .p.property = IDNA_P_PVALID },
+ { 0x0964, 0x0965, .p.property = IDNA_P_DISALLOWED },
+ { 0x0966, 0x096F, .p.property = IDNA_P_PVALID },
+ { 0x0970, 0x0970, .p.property = IDNA_P_DISALLOWED },
+ { 0x0971, 0x0972, .p.property = IDNA_P_PVALID },
+ { 0x0973, 0x0978, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0979, 0x097F, .p.property = IDNA_P_PVALID },
+ { 0x0980, 0x0980, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0981, 0x0983, .p.property = IDNA_P_PVALID },
+ { 0x0984, 0x0984, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0985, 0x098C, .p.property = IDNA_P_PVALID },
+ { 0x098D, 0x098E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x098F, 0x0990, .p.property = IDNA_P_PVALID },
+ { 0x0991, 0x0992, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0993, 0x09A8, .p.property = IDNA_P_PVALID },
+ { 0x09A9, 0x09A9, .p.property = IDNA_P_UNASSIGNED },
+ { 0x09AA, 0x09B0, .p.property = IDNA_P_PVALID },
+ { 0x09B1, 0x09B1, .p.property = IDNA_P_UNASSIGNED },
+ { 0x09B2, 0x09B2, .p.property = IDNA_P_PVALID },
+ { 0x09B3, 0x09B5, .p.property = IDNA_P_UNASSIGNED },
+ { 0x09B6, 0x09B9, .p.property = IDNA_P_PVALID },
+ { 0x09BA, 0x09BB, .p.property = IDNA_P_UNASSIGNED },
+ { 0x09BC, 0x09C4, .p.property = IDNA_P_PVALID },
+ { 0x09C5, 0x09C6, .p.property = IDNA_P_UNASSIGNED },
+ { 0x09C7, 0x09C8, .p.property = IDNA_P_PVALID },
+ { 0x09C9, 0x09CA, .p.property = IDNA_P_UNASSIGNED },
+ { 0x09CB, 0x09CE, .p.property = IDNA_P_PVALID },
+ { 0x09CF, 0x09D6, .p.property = IDNA_P_UNASSIGNED },
+ { 0x09D7, 0x09D7, .p.property = IDNA_P_PVALID },
+ { 0x09D8, 0x09DB, .p.property = IDNA_P_UNASSIGNED },
+ { 0x09DC, 0x09DD, .p.property = IDNA_P_DISALLOWED },
+ { 0x09DE, 0x09DE, .p.property = IDNA_P_UNASSIGNED },
+ { 0x09DF, 0x09DF, .p.property = IDNA_P_DISALLOWED },
+ { 0x09E0, 0x09E3, .p.property = IDNA_P_PVALID },
+ { 0x09E4, 0x09E5, .p.property = IDNA_P_UNASSIGNED },
+ { 0x09E6, 0x09F1, .p.property = IDNA_P_PVALID },
+ { 0x09F2, 0x09FB, .p.property = IDNA_P_DISALLOWED },
+ { 0x09FC, 0x0A00, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A01, 0x0A03, .p.property = IDNA_P_PVALID },
+ { 0x0A04, 0x0A04, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A05, 0x0A0A, .p.property = IDNA_P_PVALID },
+ { 0x0A0B, 0x0A0E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A0F, 0x0A10, .p.property = IDNA_P_PVALID },
+ { 0x0A11, 0x0A12, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A13, 0x0A28, .p.property = IDNA_P_PVALID },
+ { 0x0A29, 0x0A29, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A2A, 0x0A30, .p.property = IDNA_P_PVALID },
+ { 0x0A31, 0x0A31, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A32, 0x0A32, .p.property = IDNA_P_PVALID },
+ { 0x0A33, 0x0A33, .p.property = IDNA_P_DISALLOWED },
+ { 0x0A34, 0x0A34, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A35, 0x0A35, .p.property = IDNA_P_PVALID },
+ { 0x0A36, 0x0A36, .p.property = IDNA_P_DISALLOWED },
+ { 0x0A37, 0x0A37, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A38, 0x0A39, .p.property = IDNA_P_PVALID },
+ { 0x0A3A, 0x0A3B, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A3C, 0x0A3C, .p.property = IDNA_P_PVALID },
+ { 0x0A3D, 0x0A3D, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A3E, 0x0A42, .p.property = IDNA_P_PVALID },
+ { 0x0A43, 0x0A46, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A47, 0x0A48, .p.property = IDNA_P_PVALID },
+ { 0x0A49, 0x0A4A, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A4B, 0x0A4D, .p.property = IDNA_P_PVALID },
+ { 0x0A4E, 0x0A50, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A51, 0x0A51, .p.property = IDNA_P_PVALID },
+ { 0x0A52, 0x0A58, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A59, 0x0A5B, .p.property = IDNA_P_DISALLOWED },
+ { 0x0A5C, 0x0A5C, .p.property = IDNA_P_PVALID },
+ { 0x0A5D, 0x0A5D, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A5E, 0x0A5E, .p.property = IDNA_P_DISALLOWED },
+ { 0x0A5F, 0x0A65, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A66, 0x0A75, .p.property = IDNA_P_PVALID },
+ { 0x0A76, 0x0A80, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A81, 0x0A83, .p.property = IDNA_P_PVALID },
+ { 0x0A84, 0x0A84, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A85, 0x0A8D, .p.property = IDNA_P_PVALID },
+ { 0x0A8E, 0x0A8E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A8F, 0x0A91, .p.property = IDNA_P_PVALID },
+ { 0x0A92, 0x0A92, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0A93, 0x0AA8, .p.property = IDNA_P_PVALID },
+ { 0x0AA9, 0x0AA9, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0AAA, 0x0AB0, .p.property = IDNA_P_PVALID },
+ { 0x0AB1, 0x0AB1, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0AB2, 0x0AB3, .p.property = IDNA_P_PVALID },
+ { 0x0AB4, 0x0AB4, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0AB5, 0x0AB9, .p.property = IDNA_P_PVALID },
+ { 0x0ABA, 0x0ABB, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0ABC, 0x0AC5, .p.property = IDNA_P_PVALID },
+ { 0x0AC6, 0x0AC6, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0AC7, 0x0AC9, .p.property = IDNA_P_PVALID },
+ { 0x0ACA, 0x0ACA, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0ACB, 0x0ACD, .p.property = IDNA_P_PVALID },
+ { 0x0ACE, 0x0ACF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0AD0, 0x0AD0, .p.property = IDNA_P_PVALID },
+ { 0x0AD1, 0x0ADF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0AE0, 0x0AE3, .p.property = IDNA_P_PVALID },
+ { 0x0AE4, 0x0AE5, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0AE6, 0x0AEF, .p.property = IDNA_P_PVALID },
+ { 0x0AF0, 0x0AF0, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0AF1, 0x0AF1, .p.property = IDNA_P_DISALLOWED },
+ { 0x0AF2, 0x0B00, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B01, 0x0B03, .p.property = IDNA_P_PVALID },
+ { 0x0B04, 0x0B04, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B05, 0x0B0C, .p.property = IDNA_P_PVALID },
+ { 0x0B0D, 0x0B0E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B0F, 0x0B10, .p.property = IDNA_P_PVALID },
+ { 0x0B11, 0x0B12, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B13, 0x0B28, .p.property = IDNA_P_PVALID },
+ { 0x0B29, 0x0B29, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B2A, 0x0B30, .p.property = IDNA_P_PVALID },
+ { 0x0B31, 0x0B31, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B32, 0x0B33, .p.property = IDNA_P_PVALID },
+ { 0x0B34, 0x0B34, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B35, 0x0B39, .p.property = IDNA_P_PVALID },
+ { 0x0B3A, 0x0B3B, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B3C, 0x0B44, .p.property = IDNA_P_PVALID },
+ { 0x0B45, 0x0B46, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B47, 0x0B48, .p.property = IDNA_P_PVALID },
+ { 0x0B49, 0x0B4A, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B4B, 0x0B4D, .p.property = IDNA_P_PVALID },
+ { 0x0B4E, 0x0B55, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B56, 0x0B57, .p.property = IDNA_P_PVALID },
+ { 0x0B58, 0x0B5B, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B5C, 0x0B5D, .p.property = IDNA_P_DISALLOWED },
+ { 0x0B5E, 0x0B5E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B5F, 0x0B63, .p.property = IDNA_P_PVALID },
+ { 0x0B64, 0x0B65, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B66, 0x0B6F, .p.property = IDNA_P_PVALID },
+ { 0x0B70, 0x0B70, .p.property = IDNA_P_DISALLOWED },
+ { 0x0B71, 0x0B71, .p.property = IDNA_P_PVALID },
+ { 0x0B72, 0x0B81, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B82, 0x0B83, .p.property = IDNA_P_PVALID },
+ { 0x0B84, 0x0B84, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B85, 0x0B8A, .p.property = IDNA_P_PVALID },
+ { 0x0B8B, 0x0B8D, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B8E, 0x0B90, .p.property = IDNA_P_PVALID },
+ { 0x0B91, 0x0B91, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B92, 0x0B95, .p.property = IDNA_P_PVALID },
+ { 0x0B96, 0x0B98, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B99, 0x0B9A, .p.property = IDNA_P_PVALID },
+ { 0x0B9B, 0x0B9B, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B9C, 0x0B9C, .p.property = IDNA_P_PVALID },
+ { 0x0B9D, 0x0B9D, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0B9E, 0x0B9F, .p.property = IDNA_P_PVALID },
+ { 0x0BA0, 0x0BA2, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0BA3, 0x0BA4, .p.property = IDNA_P_PVALID },
+ { 0x0BA5, 0x0BA7, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0BA8, 0x0BAA, .p.property = IDNA_P_PVALID },
+ { 0x0BAB, 0x0BAD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0BAE, 0x0BB9, .p.property = IDNA_P_PVALID },
+ { 0x0BBA, 0x0BBD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0BBE, 0x0BC2, .p.property = IDNA_P_PVALID },
+ { 0x0BC3, 0x0BC5, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0BC6, 0x0BC8, .p.property = IDNA_P_PVALID },
+ { 0x0BC9, 0x0BC9, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0BCA, 0x0BCD, .p.property = IDNA_P_PVALID },
+ { 0x0BCE, 0x0BCF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0BD0, 0x0BD0, .p.property = IDNA_P_PVALID },
+ { 0x0BD1, 0x0BD6, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0BD7, 0x0BD7, .p.property = IDNA_P_PVALID },
+ { 0x0BD8, 0x0BE5, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0BE6, 0x0BEF, .p.property = IDNA_P_PVALID },
+ { 0x0BF0, 0x0BFA, .p.property = IDNA_P_DISALLOWED },
+ { 0x0BFB, 0x0C00, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C01, 0x0C03, .p.property = IDNA_P_PVALID },
+ { 0x0C04, 0x0C04, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C05, 0x0C0C, .p.property = IDNA_P_PVALID },
+ { 0x0C0D, 0x0C0D, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C0E, 0x0C10, .p.property = IDNA_P_PVALID },
+ { 0x0C11, 0x0C11, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C12, 0x0C28, .p.property = IDNA_P_PVALID },
+ { 0x0C29, 0x0C29, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C2A, 0x0C33, .p.property = IDNA_P_PVALID },
+ { 0x0C34, 0x0C34, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C35, 0x0C39, .p.property = IDNA_P_PVALID },
+ { 0x0C3A, 0x0C3C, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C3D, 0x0C44, .p.property = IDNA_P_PVALID },
+ { 0x0C45, 0x0C45, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C46, 0x0C48, .p.property = IDNA_P_PVALID },
+ { 0x0C49, 0x0C49, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C4A, 0x0C4D, .p.property = IDNA_P_PVALID },
+ { 0x0C4E, 0x0C54, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C55, 0x0C56, .p.property = IDNA_P_PVALID },
+ { 0x0C57, 0x0C57, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C58, 0x0C59, .p.property = IDNA_P_PVALID },
+ { 0x0C5A, 0x0C5F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C60, 0x0C63, .p.property = IDNA_P_PVALID },
+ { 0x0C64, 0x0C65, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C66, 0x0C6F, .p.property = IDNA_P_PVALID },
+ { 0x0C70, 0x0C77, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C78, 0x0C7F, .p.property = IDNA_P_DISALLOWED },
+ { 0x0C80, 0x0C81, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C82, 0x0C83, .p.property = IDNA_P_PVALID },
+ { 0x0C84, 0x0C84, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C85, 0x0C8C, .p.property = IDNA_P_PVALID },
+ { 0x0C8D, 0x0C8D, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C8E, 0x0C90, .p.property = IDNA_P_PVALID },
+ { 0x0C91, 0x0C91, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0C92, 0x0CA8, .p.property = IDNA_P_PVALID },
+ { 0x0CA9, 0x0CA9, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0CAA, 0x0CB3, .p.property = IDNA_P_PVALID },
+ { 0x0CB4, 0x0CB4, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0CB5, 0x0CB9, .p.property = IDNA_P_PVALID },
+ { 0x0CBA, 0x0CBB, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0CBC, 0x0CC4, .p.property = IDNA_P_PVALID },
+ { 0x0CC5, 0x0CC5, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0CC6, 0x0CC8, .p.property = IDNA_P_PVALID },
+ { 0x0CC9, 0x0CC9, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0CCA, 0x0CCD, .p.property = IDNA_P_PVALID },
+ { 0x0CCE, 0x0CD4, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0CD5, 0x0CD6, .p.property = IDNA_P_PVALID },
+ { 0x0CD7, 0x0CDD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0CDE, 0x0CDE, .p.property = IDNA_P_PVALID },
+ { 0x0CDF, 0x0CDF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0CE0, 0x0CE3, .p.property = IDNA_P_PVALID },
+ { 0x0CE4, 0x0CE5, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0CE6, 0x0CEF, .p.property = IDNA_P_PVALID },
+ { 0x0CF0, 0x0CF0, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0CF1, 0x0CF2, .p.property = IDNA_P_DISALLOWED },
+ { 0x0CF3, 0x0D01, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0D02, 0x0D03, .p.property = IDNA_P_PVALID },
+ { 0x0D04, 0x0D04, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0D05, 0x0D0C, .p.property = IDNA_P_PVALID },
+ { 0x0D0D, 0x0D0D, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0D0E, 0x0D10, .p.property = IDNA_P_PVALID },
+ { 0x0D11, 0x0D11, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0D12, 0x0D28, .p.property = IDNA_P_PVALID },
+ { 0x0D29, 0x0D29, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0D2A, 0x0D39, .p.property = IDNA_P_PVALID },
+ { 0x0D3A, 0x0D3C, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0D3D, 0x0D44, .p.property = IDNA_P_PVALID },
+ { 0x0D45, 0x0D45, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0D46, 0x0D48, .p.property = IDNA_P_PVALID },
+ { 0x0D49, 0x0D49, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0D4A, 0x0D4D, .p.property = IDNA_P_PVALID },
+ { 0x0D4E, 0x0D56, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0D57, 0x0D57, .p.property = IDNA_P_PVALID },
+ { 0x0D58, 0x0D5F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0D60, 0x0D63, .p.property = IDNA_P_PVALID },
+ { 0x0D64, 0x0D65, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0D66, 0x0D6F, .p.property = IDNA_P_PVALID },
+ { 0x0D70, 0x0D75, .p.property = IDNA_P_DISALLOWED },
+ { 0x0D76, 0x0D78, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0D79, 0x0D79, .p.property = IDNA_P_DISALLOWED },
+ { 0x0D7A, 0x0D7F, .p.property = IDNA_P_PVALID },
+ { 0x0D80, 0x0D81, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0D82, 0x0D83, .p.property = IDNA_P_PVALID },
+ { 0x0D84, 0x0D84, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0D85, 0x0D96, .p.property = IDNA_P_PVALID },
+ { 0x0D97, 0x0D99, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0D9A, 0x0DB1, .p.property = IDNA_P_PVALID },
+ { 0x0DB2, 0x0DB2, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0DB3, 0x0DBB, .p.property = IDNA_P_PVALID },
+ { 0x0DBC, 0x0DBC, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0DBD, 0x0DBD, .p.property = IDNA_P_PVALID },
+ { 0x0DBE, 0x0DBF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0DC0, 0x0DC6, .p.property = IDNA_P_PVALID },
+ { 0x0DC7, 0x0DC9, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0DCA, 0x0DCA, .p.property = IDNA_P_PVALID },
+ { 0x0DCB, 0x0DCE, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0DCF, 0x0DD4, .p.property = IDNA_P_PVALID },
+ { 0x0DD5, 0x0DD5, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0DD6, 0x0DD6, .p.property = IDNA_P_PVALID },
+ { 0x0DD7, 0x0DD7, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0DD8, 0x0DDF, .p.property = IDNA_P_PVALID },
+ { 0x0DE0, 0x0DF1, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0DF2, 0x0DF3, .p.property = IDNA_P_PVALID },
+ { 0x0DF4, 0x0DF4, .p.property = IDNA_P_DISALLOWED },
+ { 0x0DF5, 0x0E00, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0E01, 0x0E32, .p.property = IDNA_P_PVALID },
+ { 0x0E33, 0x0E33, .p.property = IDNA_P_DISALLOWED },
+ { 0x0E34, 0x0E3A, .p.property = IDNA_P_PVALID },
+ { 0x0E3B, 0x0E3E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0E3F, 0x0E3F, .p.property = IDNA_P_DISALLOWED },
+ { 0x0E40, 0x0E4E, .p.property = IDNA_P_PVALID },
+ { 0x0E4F, 0x0E4F, .p.property = IDNA_P_DISALLOWED },
+ { 0x0E50, 0x0E59, .p.property = IDNA_P_PVALID },
+ { 0x0E5A, 0x0E5B, .p.property = IDNA_P_DISALLOWED },
+ { 0x0E5C, 0x0E80, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0E81, 0x0E82, .p.property = IDNA_P_PVALID },
+ { 0x0E83, 0x0E83, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0E84, 0x0E84, .p.property = IDNA_P_PVALID },
+ { 0x0E85, 0x0E86, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0E87, 0x0E88, .p.property = IDNA_P_PVALID },
+ { 0x0E89, 0x0E89, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0E8A, 0x0E8A, .p.property = IDNA_P_PVALID },
+ { 0x0E8B, 0x0E8C, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0E8D, 0x0E8D, .p.property = IDNA_P_PVALID },
+ { 0x0E8E, 0x0E93, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0E94, 0x0E97, .p.property = IDNA_P_PVALID },
+ { 0x0E98, 0x0E98, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0E99, 0x0E9F, .p.property = IDNA_P_PVALID },
+ { 0x0EA0, 0x0EA0, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0EA1, 0x0EA3, .p.property = IDNA_P_PVALID },
+ { 0x0EA4, 0x0EA4, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0EA5, 0x0EA5, .p.property = IDNA_P_PVALID },
+ { 0x0EA6, 0x0EA6, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0EA7, 0x0EA7, .p.property = IDNA_P_PVALID },
+ { 0x0EA8, 0x0EA9, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0EAA, 0x0EAB, .p.property = IDNA_P_PVALID },
+ { 0x0EAC, 0x0EAC, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0EAD, 0x0EB2, .p.property = IDNA_P_PVALID },
+ { 0x0EB3, 0x0EB3, .p.property = IDNA_P_DISALLOWED },
+ { 0x0EB4, 0x0EB9, .p.property = IDNA_P_PVALID },
+ { 0x0EBA, 0x0EBA, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0EBB, 0x0EBD, .p.property = IDNA_P_PVALID },
+ { 0x0EBE, 0x0EBF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0EC0, 0x0EC4, .p.property = IDNA_P_PVALID },
+ { 0x0EC5, 0x0EC5, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0EC6, 0x0EC6, .p.property = IDNA_P_PVALID },
+ { 0x0EC7, 0x0EC7, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0EC8, 0x0ECD, .p.property = IDNA_P_PVALID },
+ { 0x0ECE, 0x0ECF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0ED0, 0x0ED9, .p.property = IDNA_P_PVALID },
+ { 0x0EDA, 0x0EDB, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0EDC, 0x0EDD, .p.property = IDNA_P_DISALLOWED },
+ { 0x0EDE, 0x0EFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0F00, 0x0F00, .p.property = IDNA_P_PVALID },
+ { 0x0F01, 0x0F0A, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F0B, 0x0F0B, .p.property = IDNA_P_PVALID },
+ { 0x0F0C, 0x0F17, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F18, 0x0F19, .p.property = IDNA_P_PVALID },
+ { 0x0F1A, 0x0F1F, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F20, 0x0F29, .p.property = IDNA_P_PVALID },
+ { 0x0F2A, 0x0F34, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F35, 0x0F35, .p.property = IDNA_P_PVALID },
+ { 0x0F36, 0x0F36, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F37, 0x0F37, .p.property = IDNA_P_PVALID },
+ { 0x0F38, 0x0F38, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F39, 0x0F39, .p.property = IDNA_P_PVALID },
+ { 0x0F3A, 0x0F3D, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F3E, 0x0F42, .p.property = IDNA_P_PVALID },
+ { 0x0F43, 0x0F43, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F44, 0x0F47, .p.property = IDNA_P_PVALID },
+ { 0x0F48, 0x0F48, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0F49, 0x0F4C, .p.property = IDNA_P_PVALID },
+ { 0x0F4D, 0x0F4D, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F4E, 0x0F51, .p.property = IDNA_P_PVALID },
+ { 0x0F52, 0x0F52, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F53, 0x0F56, .p.property = IDNA_P_PVALID },
+ { 0x0F57, 0x0F57, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F58, 0x0F5B, .p.property = IDNA_P_PVALID },
+ { 0x0F5C, 0x0F5C, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F5D, 0x0F68, .p.property = IDNA_P_PVALID },
+ { 0x0F69, 0x0F69, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F6A, 0x0F6C, .p.property = IDNA_P_PVALID },
+ { 0x0F6D, 0x0F70, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0F71, 0x0F72, .p.property = IDNA_P_PVALID },
+ { 0x0F73, 0x0F73, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F74, 0x0F74, .p.property = IDNA_P_PVALID },
+ { 0x0F75, 0x0F79, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F7A, 0x0F80, .p.property = IDNA_P_PVALID },
+ { 0x0F81, 0x0F81, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F82, 0x0F84, .p.property = IDNA_P_PVALID },
+ { 0x0F85, 0x0F85, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F86, 0x0F8B, .p.property = IDNA_P_PVALID },
+ { 0x0F8C, 0x0F8F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0F90, 0x0F92, .p.property = IDNA_P_PVALID },
+ { 0x0F93, 0x0F93, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F94, 0x0F97, .p.property = IDNA_P_PVALID },
+ { 0x0F98, 0x0F98, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0F99, 0x0F9C, .p.property = IDNA_P_PVALID },
+ { 0x0F9D, 0x0F9D, .p.property = IDNA_P_DISALLOWED },
+ { 0x0F9E, 0x0FA1, .p.property = IDNA_P_PVALID },
+ { 0x0FA2, 0x0FA2, .p.property = IDNA_P_DISALLOWED },
+ { 0x0FA3, 0x0FA6, .p.property = IDNA_P_PVALID },
+ { 0x0FA7, 0x0FA7, .p.property = IDNA_P_DISALLOWED },
+ { 0x0FA8, 0x0FAB, .p.property = IDNA_P_PVALID },
+ { 0x0FAC, 0x0FAC, .p.property = IDNA_P_DISALLOWED },
+ { 0x0FAD, 0x0FB8, .p.property = IDNA_P_PVALID },
+ { 0x0FB9, 0x0FB9, .p.property = IDNA_P_DISALLOWED },
+ { 0x0FBA, 0x0FBC, .p.property = IDNA_P_PVALID },
+ { 0x0FBD, 0x0FBD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0FBE, 0x0FC5, .p.property = IDNA_P_DISALLOWED },
+ { 0x0FC6, 0x0FC6, .p.property = IDNA_P_PVALID },
+ { 0x0FC7, 0x0FCC, .p.property = IDNA_P_DISALLOWED },
+ { 0x0FCD, 0x0FCD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x0FCE, 0x0FD8, .p.property = IDNA_P_DISALLOWED },
+ { 0x0FD9, 0x0FFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1000, 0x1049, .p.property = IDNA_P_PVALID },
+ { 0x104A, 0x104F, .p.property = IDNA_P_DISALLOWED },
+ { 0x1050, 0x109D, .p.property = IDNA_P_PVALID },
+ { 0x109E, 0x10C5, .p.property = IDNA_P_DISALLOWED },
+ { 0x10C6, 0x10CF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10D0, 0x10FA, .p.property = IDNA_P_PVALID },
+ { 0x10FB, 0x10FC, .p.property = IDNA_P_DISALLOWED },
+ { 0x10FD, 0x10FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1100, 0x11FF, .p.property = IDNA_P_DISALLOWED },
+ { 0x1200, 0x1248, .p.property = IDNA_P_PVALID },
+ { 0x1249, 0x1249, .p.property = IDNA_P_UNASSIGNED },
+ { 0x124A, 0x124D, .p.property = IDNA_P_PVALID },
+ { 0x124E, 0x124F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1250, 0x1256, .p.property = IDNA_P_PVALID },
+ { 0x1257, 0x1257, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1258, 0x1258, .p.property = IDNA_P_PVALID },
+ { 0x1259, 0x1259, .p.property = IDNA_P_UNASSIGNED },
+ { 0x125A, 0x125D, .p.property = IDNA_P_PVALID },
+ { 0x125E, 0x125F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1260, 0x1288, .p.property = IDNA_P_PVALID },
+ { 0x1289, 0x1289, .p.property = IDNA_P_UNASSIGNED },
+ { 0x128A, 0x128D, .p.property = IDNA_P_PVALID },
+ { 0x128E, 0x128F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1290, 0x12B0, .p.property = IDNA_P_PVALID },
+ { 0x12B1, 0x12B1, .p.property = IDNA_P_UNASSIGNED },
+ { 0x12B2, 0x12B5, .p.property = IDNA_P_PVALID },
+ { 0x12B6, 0x12B7, .p.property = IDNA_P_UNASSIGNED },
+ { 0x12B8, 0x12BE, .p.property = IDNA_P_PVALID },
+ { 0x12BF, 0x12BF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x12C0, 0x12C0, .p.property = IDNA_P_PVALID },
+ { 0x12C1, 0x12C1, .p.property = IDNA_P_UNASSIGNED },
+ { 0x12C2, 0x12C5, .p.property = IDNA_P_PVALID },
+ { 0x12C6, 0x12C7, .p.property = IDNA_P_UNASSIGNED },
+ { 0x12C8, 0x12D6, .p.property = IDNA_P_PVALID },
+ { 0x12D7, 0x12D7, .p.property = IDNA_P_UNASSIGNED },
+ { 0x12D8, 0x1310, .p.property = IDNA_P_PVALID },
+ { 0x1311, 0x1311, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1312, 0x1315, .p.property = IDNA_P_PVALID },
+ { 0x1316, 0x1317, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1318, 0x135A, .p.property = IDNA_P_PVALID },
+ { 0x135B, 0x135E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x135F, 0x135F, .p.property = IDNA_P_PVALID },
+ { 0x1360, 0x137C, .p.property = IDNA_P_DISALLOWED },
+ { 0x137D, 0x137F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1380, 0x138F, .p.property = IDNA_P_PVALID },
+ { 0x1390, 0x1399, .p.property = IDNA_P_DISALLOWED },
+ { 0x139A, 0x139F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x13A0, 0x13F4, .p.property = IDNA_P_PVALID },
+ { 0x13F5, 0x13FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1400, 0x1400, .p.property = IDNA_P_DISALLOWED },
+ { 0x1401, 0x166C, .p.property = IDNA_P_PVALID },
+ { 0x166D, 0x166E, .p.property = IDNA_P_DISALLOWED },
+ { 0x166F, 0x167F, .p.property = IDNA_P_PVALID },
+ { 0x1680, 0x1680, .p.property = IDNA_P_DISALLOWED },
+ { 0x1681, 0x169A, .p.property = IDNA_P_PVALID },
+ { 0x169B, 0x169C, .p.property = IDNA_P_DISALLOWED },
+ { 0x169D, 0x169F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x16A0, 0x16EA, .p.property = IDNA_P_PVALID },
+ { 0x16EB, 0x16F0, .p.property = IDNA_P_DISALLOWED },
+ { 0x16F1, 0x16FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1700, 0x170C, .p.property = IDNA_P_PVALID },
+ { 0x170D, 0x170D, .p.property = IDNA_P_UNASSIGNED },
+ { 0x170E, 0x1714, .p.property = IDNA_P_PVALID },
+ { 0x1715, 0x171F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1720, 0x1734, .p.property = IDNA_P_PVALID },
+ { 0x1735, 0x1736, .p.property = IDNA_P_DISALLOWED },
+ { 0x1737, 0x173F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1740, 0x1753, .p.property = IDNA_P_PVALID },
+ { 0x1754, 0x175F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1760, 0x176C, .p.property = IDNA_P_PVALID },
+ { 0x176D, 0x176D, .p.property = IDNA_P_UNASSIGNED },
+ { 0x176E, 0x1770, .p.property = IDNA_P_PVALID },
+ { 0x1771, 0x1771, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1772, 0x1773, .p.property = IDNA_P_PVALID },
+ { 0x1774, 0x177F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1780, 0x17B3, .p.property = IDNA_P_PVALID },
+ { 0x17B4, 0x17B5, .p.property = IDNA_P_DISALLOWED },
+ { 0x17B6, 0x17D3, .p.property = IDNA_P_PVALID },
+ { 0x17D4, 0x17D6, .p.property = IDNA_P_DISALLOWED },
+ { 0x17D7, 0x17D7, .p.property = IDNA_P_PVALID },
+ { 0x17D8, 0x17DB, .p.property = IDNA_P_DISALLOWED },
+ { 0x17DC, 0x17DD, .p.property = IDNA_P_PVALID },
+ { 0x17DE, 0x17DF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x17E0, 0x17E9, .p.property = IDNA_P_PVALID },
+ { 0x17EA, 0x17EF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x17F0, 0x17F9, .p.property = IDNA_P_DISALLOWED },
+ { 0x17FA, 0x17FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1800, 0x180E, .p.property = IDNA_P_DISALLOWED },
+ { 0x180F, 0x180F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1810, 0x1819, .p.property = IDNA_P_PVALID },
+ { 0x181A, 0x181F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1820, 0x1877, .p.property = IDNA_P_PVALID },
+ { 0x1878, 0x187F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1880, 0x18AA, .p.property = IDNA_P_PVALID },
+ { 0x18AB, 0x18AF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x18B0, 0x18F5, .p.property = IDNA_P_PVALID },
+ { 0x18F6, 0x18FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1900, 0x191C, .p.property = IDNA_P_PVALID },
+ { 0x191D, 0x191F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1920, 0x192B, .p.property = IDNA_P_PVALID },
+ { 0x192C, 0x192F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1930, 0x193B, .p.property = IDNA_P_PVALID },
+ { 0x193C, 0x193F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1940, 0x1940, .p.property = IDNA_P_DISALLOWED },
+ { 0x1941, 0x1943, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1944, 0x1945, .p.property = IDNA_P_DISALLOWED },
+ { 0x1946, 0x196D, .p.property = IDNA_P_PVALID },
+ { 0x196E, 0x196F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1970, 0x1974, .p.property = IDNA_P_PVALID },
+ { 0x1975, 0x197F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1980, 0x19AB, .p.property = IDNA_P_PVALID },
+ { 0x19AC, 0x19AF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x19B0, 0x19C9, .p.property = IDNA_P_PVALID },
+ { 0x19CA, 0x19CF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x19D0, 0x19DA, .p.property = IDNA_P_PVALID },
+ { 0x19DB, 0x19DD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x19DE, 0x19FF, .p.property = IDNA_P_DISALLOWED },
+ { 0x1A00, 0x1A1B, .p.property = IDNA_P_PVALID },
+ { 0x1A1C, 0x1A1D, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1A1E, 0x1A1F, .p.property = IDNA_P_DISALLOWED },
+ { 0x1A20, 0x1A5E, .p.property = IDNA_P_PVALID },
+ { 0x1A5F, 0x1A5F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1A60, 0x1A7C, .p.property = IDNA_P_PVALID },
+ { 0x1A7D, 0x1A7E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1A7F, 0x1A89, .p.property = IDNA_P_PVALID },
+ { 0x1A8A, 0x1A8F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1A90, 0x1A99, .p.property = IDNA_P_PVALID },
+ { 0x1A9A, 0x1A9F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1AA0, 0x1AA6, .p.property = IDNA_P_DISALLOWED },
+ { 0x1AA7, 0x1AA7, .p.property = IDNA_P_PVALID },
+ { 0x1AA8, 0x1AAD, .p.property = IDNA_P_DISALLOWED },
+ { 0x1AAE, 0x1AFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1B00, 0x1B4B, .p.property = IDNA_P_PVALID },
+ { 0x1B4C, 0x1B4F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1B50, 0x1B59, .p.property = IDNA_P_PVALID },
+ { 0x1B5A, 0x1B6A, .p.property = IDNA_P_DISALLOWED },
+ { 0x1B6B, 0x1B73, .p.property = IDNA_P_PVALID },
+ { 0x1B74, 0x1B7C, .p.property = IDNA_P_DISALLOWED },
+ { 0x1B7D, 0x1B7F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1B80, 0x1BAA, .p.property = IDNA_P_PVALID },
+ { 0x1BAB, 0x1BAD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1BAE, 0x1BB9, .p.property = IDNA_P_PVALID },
+ { 0x1BBA, 0x1BFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1C00, 0x1C37, .p.property = IDNA_P_PVALID },
+ { 0x1C38, 0x1C3A, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1C3B, 0x1C3F, .p.property = IDNA_P_DISALLOWED },
+ { 0x1C40, 0x1C49, .p.property = IDNA_P_PVALID },
+ { 0x1C4A, 0x1C4C, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1C4D, 0x1C7D, .p.property = IDNA_P_PVALID },
+ { 0x1C7E, 0x1C7F, .p.property = IDNA_P_DISALLOWED },
+ { 0x1C80, 0x1CCF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1CD0, 0x1CD2, .p.property = IDNA_P_PVALID },
+ { 0x1CD3, 0x1CD3, .p.property = IDNA_P_DISALLOWED },
+ { 0x1CD4, 0x1CF2, .p.property = IDNA_P_PVALID },
+ { 0x1CF3, 0x1CFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D00, 0x1D2B, .p.property = IDNA_P_PVALID },
+ { 0x1D2C, 0x1D2E, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D2F, 0x1D2F, .p.property = IDNA_P_PVALID },
+ { 0x1D30, 0x1D3A, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D3B, 0x1D3B, .p.property = IDNA_P_PVALID },
+ { 0x1D3C, 0x1D4D, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D4E, 0x1D4E, .p.property = IDNA_P_PVALID },
+ { 0x1D4F, 0x1D6A, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D6B, 0x1D77, .p.property = IDNA_P_PVALID },
+ { 0x1D78, 0x1D78, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D79, 0x1D9A, .p.property = IDNA_P_PVALID },
+ { 0x1D9B, 0x1DBF, .p.property = IDNA_P_DISALLOWED },
+ { 0x1DC0, 0x1DE6, .p.property = IDNA_P_PVALID },
+ { 0x1DE7, 0x1DFC, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1DFD, 0x1DFF, .p.property = IDNA_P_PVALID },
+ { 0x1E00, 0x1E00, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E01, 0x1E01, .p.property = IDNA_P_PVALID },
+ { 0x1E02, 0x1E02, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E03, 0x1E03, .p.property = IDNA_P_PVALID },
+ { 0x1E04, 0x1E04, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E05, 0x1E05, .p.property = IDNA_P_PVALID },
+ { 0x1E06, 0x1E06, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E07, 0x1E07, .p.property = IDNA_P_PVALID },
+ { 0x1E08, 0x1E08, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E09, 0x1E09, .p.property = IDNA_P_PVALID },
+ { 0x1E0A, 0x1E0A, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E0B, 0x1E0B, .p.property = IDNA_P_PVALID },
+ { 0x1E0C, 0x1E0C, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E0D, 0x1E0D, .p.property = IDNA_P_PVALID },
+ { 0x1E0E, 0x1E0E, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E0F, 0x1E0F, .p.property = IDNA_P_PVALID },
+ { 0x1E10, 0x1E10, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E11, 0x1E11, .p.property = IDNA_P_PVALID },
+ { 0x1E12, 0x1E12, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E13, 0x1E13, .p.property = IDNA_P_PVALID },
+ { 0x1E14, 0x1E14, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E15, 0x1E15, .p.property = IDNA_P_PVALID },
+ { 0x1E16, 0x1E16, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E17, 0x1E17, .p.property = IDNA_P_PVALID },
+ { 0x1E18, 0x1E18, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E19, 0x1E19, .p.property = IDNA_P_PVALID },
+ { 0x1E1A, 0x1E1A, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E1B, 0x1E1B, .p.property = IDNA_P_PVALID },
+ { 0x1E1C, 0x1E1C, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E1D, 0x1E1D, .p.property = IDNA_P_PVALID },
+ { 0x1E1E, 0x1E1E, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E1F, 0x1E1F, .p.property = IDNA_P_PVALID },
+ { 0x1E20, 0x1E20, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E21, 0x1E21, .p.property = IDNA_P_PVALID },
+ { 0x1E22, 0x1E22, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E23, 0x1E23, .p.property = IDNA_P_PVALID },
+ { 0x1E24, 0x1E24, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E25, 0x1E25, .p.property = IDNA_P_PVALID },
+ { 0x1E26, 0x1E26, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E27, 0x1E27, .p.property = IDNA_P_PVALID },
+ { 0x1E28, 0x1E28, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E29, 0x1E29, .p.property = IDNA_P_PVALID },
+ { 0x1E2A, 0x1E2A, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E2B, 0x1E2B, .p.property = IDNA_P_PVALID },
+ { 0x1E2C, 0x1E2C, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E2D, 0x1E2D, .p.property = IDNA_P_PVALID },
+ { 0x1E2E, 0x1E2E, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E2F, 0x1E2F, .p.property = IDNA_P_PVALID },
+ { 0x1E30, 0x1E30, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E31, 0x1E31, .p.property = IDNA_P_PVALID },
+ { 0x1E32, 0x1E32, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E33, 0x1E33, .p.property = IDNA_P_PVALID },
+ { 0x1E34, 0x1E34, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E35, 0x1E35, .p.property = IDNA_P_PVALID },
+ { 0x1E36, 0x1E36, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E37, 0x1E37, .p.property = IDNA_P_PVALID },
+ { 0x1E38, 0x1E38, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E39, 0x1E39, .p.property = IDNA_P_PVALID },
+ { 0x1E3A, 0x1E3A, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E3B, 0x1E3B, .p.property = IDNA_P_PVALID },
+ { 0x1E3C, 0x1E3C, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E3D, 0x1E3D, .p.property = IDNA_P_PVALID },
+ { 0x1E3E, 0x1E3E, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E3F, 0x1E3F, .p.property = IDNA_P_PVALID },
+ { 0x1E40, 0x1E40, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E41, 0x1E41, .p.property = IDNA_P_PVALID },
+ { 0x1E42, 0x1E42, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E43, 0x1E43, .p.property = IDNA_P_PVALID },
+ { 0x1E44, 0x1E44, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E45, 0x1E45, .p.property = IDNA_P_PVALID },
+ { 0x1E46, 0x1E46, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E47, 0x1E47, .p.property = IDNA_P_PVALID },
+ { 0x1E48, 0x1E48, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E49, 0x1E49, .p.property = IDNA_P_PVALID },
+ { 0x1E4A, 0x1E4A, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E4B, 0x1E4B, .p.property = IDNA_P_PVALID },
+ { 0x1E4C, 0x1E4C, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E4D, 0x1E4D, .p.property = IDNA_P_PVALID },
+ { 0x1E4E, 0x1E4E, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E4F, 0x1E4F, .p.property = IDNA_P_PVALID },
+ { 0x1E50, 0x1E50, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E51, 0x1E51, .p.property = IDNA_P_PVALID },
+ { 0x1E52, 0x1E52, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E53, 0x1E53, .p.property = IDNA_P_PVALID },
+ { 0x1E54, 0x1E54, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E55, 0x1E55, .p.property = IDNA_P_PVALID },
+ { 0x1E56, 0x1E56, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E57, 0x1E57, .p.property = IDNA_P_PVALID },
+ { 0x1E58, 0x1E58, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E59, 0x1E59, .p.property = IDNA_P_PVALID },
+ { 0x1E5A, 0x1E5A, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E5B, 0x1E5B, .p.property = IDNA_P_PVALID },
+ { 0x1E5C, 0x1E5C, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E5D, 0x1E5D, .p.property = IDNA_P_PVALID },
+ { 0x1E5E, 0x1E5E, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E5F, 0x1E5F, .p.property = IDNA_P_PVALID },
+ { 0x1E60, 0x1E60, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E61, 0x1E61, .p.property = IDNA_P_PVALID },
+ { 0x1E62, 0x1E62, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E63, 0x1E63, .p.property = IDNA_P_PVALID },
+ { 0x1E64, 0x1E64, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E65, 0x1E65, .p.property = IDNA_P_PVALID },
+ { 0x1E66, 0x1E66, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E67, 0x1E67, .p.property = IDNA_P_PVALID },
+ { 0x1E68, 0x1E68, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E69, 0x1E69, .p.property = IDNA_P_PVALID },
+ { 0x1E6A, 0x1E6A, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E6B, 0x1E6B, .p.property = IDNA_P_PVALID },
+ { 0x1E6C, 0x1E6C, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E6D, 0x1E6D, .p.property = IDNA_P_PVALID },
+ { 0x1E6E, 0x1E6E, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E6F, 0x1E6F, .p.property = IDNA_P_PVALID },
+ { 0x1E70, 0x1E70, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E71, 0x1E71, .p.property = IDNA_P_PVALID },
+ { 0x1E72, 0x1E72, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E73, 0x1E73, .p.property = IDNA_P_PVALID },
+ { 0x1E74, 0x1E74, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E75, 0x1E75, .p.property = IDNA_P_PVALID },
+ { 0x1E76, 0x1E76, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E77, 0x1E77, .p.property = IDNA_P_PVALID },
+ { 0x1E78, 0x1E78, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E79, 0x1E79, .p.property = IDNA_P_PVALID },
+ { 0x1E7A, 0x1E7A, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E7B, 0x1E7B, .p.property = IDNA_P_PVALID },
+ { 0x1E7C, 0x1E7C, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E7D, 0x1E7D, .p.property = IDNA_P_PVALID },
+ { 0x1E7E, 0x1E7E, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E7F, 0x1E7F, .p.property = IDNA_P_PVALID },
+ { 0x1E80, 0x1E80, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E81, 0x1E81, .p.property = IDNA_P_PVALID },
+ { 0x1E82, 0x1E82, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E83, 0x1E83, .p.property = IDNA_P_PVALID },
+ { 0x1E84, 0x1E84, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E85, 0x1E85, .p.property = IDNA_P_PVALID },
+ { 0x1E86, 0x1E86, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E87, 0x1E87, .p.property = IDNA_P_PVALID },
+ { 0x1E88, 0x1E88, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E89, 0x1E89, .p.property = IDNA_P_PVALID },
+ { 0x1E8A, 0x1E8A, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E8B, 0x1E8B, .p.property = IDNA_P_PVALID },
+ { 0x1E8C, 0x1E8C, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E8D, 0x1E8D, .p.property = IDNA_P_PVALID },
+ { 0x1E8E, 0x1E8E, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E8F, 0x1E8F, .p.property = IDNA_P_PVALID },
+ { 0x1E90, 0x1E90, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E91, 0x1E91, .p.property = IDNA_P_PVALID },
+ { 0x1E92, 0x1E92, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E93, 0x1E93, .p.property = IDNA_P_PVALID },
+ { 0x1E94, 0x1E94, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E95, 0x1E99, .p.property = IDNA_P_PVALID },
+ { 0x1E9A, 0x1E9B, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E9C, 0x1E9D, .p.property = IDNA_P_PVALID },
+ { 0x1E9E, 0x1E9E, .p.property = IDNA_P_DISALLOWED },
+ { 0x1E9F, 0x1E9F, .p.property = IDNA_P_PVALID },
+ { 0x1EA0, 0x1EA0, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EA1, 0x1EA1, .p.property = IDNA_P_PVALID },
+ { 0x1EA2, 0x1EA2, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EA3, 0x1EA3, .p.property = IDNA_P_PVALID },
+ { 0x1EA4, 0x1EA4, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EA5, 0x1EA5, .p.property = IDNA_P_PVALID },
+ { 0x1EA6, 0x1EA6, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EA7, 0x1EA7, .p.property = IDNA_P_PVALID },
+ { 0x1EA8, 0x1EA8, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EA9, 0x1EA9, .p.property = IDNA_P_PVALID },
+ { 0x1EAA, 0x1EAA, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EAB, 0x1EAB, .p.property = IDNA_P_PVALID },
+ { 0x1EAC, 0x1EAC, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EAD, 0x1EAD, .p.property = IDNA_P_PVALID },
+ { 0x1EAE, 0x1EAE, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EAF, 0x1EAF, .p.property = IDNA_P_PVALID },
+ { 0x1EB0, 0x1EB0, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EB1, 0x1EB1, .p.property = IDNA_P_PVALID },
+ { 0x1EB2, 0x1EB2, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EB3, 0x1EB3, .p.property = IDNA_P_PVALID },
+ { 0x1EB4, 0x1EB4, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EB5, 0x1EB5, .p.property = IDNA_P_PVALID },
+ { 0x1EB6, 0x1EB6, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EB7, 0x1EB7, .p.property = IDNA_P_PVALID },
+ { 0x1EB8, 0x1EB8, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EB9, 0x1EB9, .p.property = IDNA_P_PVALID },
+ { 0x1EBA, 0x1EBA, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EBB, 0x1EBB, .p.property = IDNA_P_PVALID },
+ { 0x1EBC, 0x1EBC, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EBD, 0x1EBD, .p.property = IDNA_P_PVALID },
+ { 0x1EBE, 0x1EBE, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EBF, 0x1EBF, .p.property = IDNA_P_PVALID },
+ { 0x1EC0, 0x1EC0, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EC1, 0x1EC1, .p.property = IDNA_P_PVALID },
+ { 0x1EC2, 0x1EC2, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EC3, 0x1EC3, .p.property = IDNA_P_PVALID },
+ { 0x1EC4, 0x1EC4, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EC5, 0x1EC5, .p.property = IDNA_P_PVALID },
+ { 0x1EC6, 0x1EC6, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EC7, 0x1EC7, .p.property = IDNA_P_PVALID },
+ { 0x1EC8, 0x1EC8, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EC9, 0x1EC9, .p.property = IDNA_P_PVALID },
+ { 0x1ECA, 0x1ECA, .p.property = IDNA_P_DISALLOWED },
+ { 0x1ECB, 0x1ECB, .p.property = IDNA_P_PVALID },
+ { 0x1ECC, 0x1ECC, .p.property = IDNA_P_DISALLOWED },
+ { 0x1ECD, 0x1ECD, .p.property = IDNA_P_PVALID },
+ { 0x1ECE, 0x1ECE, .p.property = IDNA_P_DISALLOWED },
+ { 0x1ECF, 0x1ECF, .p.property = IDNA_P_PVALID },
+ { 0x1ED0, 0x1ED0, .p.property = IDNA_P_DISALLOWED },
+ { 0x1ED1, 0x1ED1, .p.property = IDNA_P_PVALID },
+ { 0x1ED2, 0x1ED2, .p.property = IDNA_P_DISALLOWED },
+ { 0x1ED3, 0x1ED3, .p.property = IDNA_P_PVALID },
+ { 0x1ED4, 0x1ED4, .p.property = IDNA_P_DISALLOWED },
+ { 0x1ED5, 0x1ED5, .p.property = IDNA_P_PVALID },
+ { 0x1ED6, 0x1ED6, .p.property = IDNA_P_DISALLOWED },
+ { 0x1ED7, 0x1ED7, .p.property = IDNA_P_PVALID },
+ { 0x1ED8, 0x1ED8, .p.property = IDNA_P_DISALLOWED },
+ { 0x1ED9, 0x1ED9, .p.property = IDNA_P_PVALID },
+ { 0x1EDA, 0x1EDA, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EDB, 0x1EDB, .p.property = IDNA_P_PVALID },
+ { 0x1EDC, 0x1EDC, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EDD, 0x1EDD, .p.property = IDNA_P_PVALID },
+ { 0x1EDE, 0x1EDE, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EDF, 0x1EDF, .p.property = IDNA_P_PVALID },
+ { 0x1EE0, 0x1EE0, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EE1, 0x1EE1, .p.property = IDNA_P_PVALID },
+ { 0x1EE2, 0x1EE2, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EE3, 0x1EE3, .p.property = IDNA_P_PVALID },
+ { 0x1EE4, 0x1EE4, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EE5, 0x1EE5, .p.property = IDNA_P_PVALID },
+ { 0x1EE6, 0x1EE6, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EE7, 0x1EE7, .p.property = IDNA_P_PVALID },
+ { 0x1EE8, 0x1EE8, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EE9, 0x1EE9, .p.property = IDNA_P_PVALID },
+ { 0x1EEA, 0x1EEA, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EEB, 0x1EEB, .p.property = IDNA_P_PVALID },
+ { 0x1EEC, 0x1EEC, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EED, 0x1EED, .p.property = IDNA_P_PVALID },
+ { 0x1EEE, 0x1EEE, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EEF, 0x1EEF, .p.property = IDNA_P_PVALID },
+ { 0x1EF0, 0x1EF0, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EF1, 0x1EF1, .p.property = IDNA_P_PVALID },
+ { 0x1EF2, 0x1EF2, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EF3, 0x1EF3, .p.property = IDNA_P_PVALID },
+ { 0x1EF4, 0x1EF4, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EF5, 0x1EF5, .p.property = IDNA_P_PVALID },
+ { 0x1EF6, 0x1EF6, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EF7, 0x1EF7, .p.property = IDNA_P_PVALID },
+ { 0x1EF8, 0x1EF8, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EF9, 0x1EF9, .p.property = IDNA_P_PVALID },
+ { 0x1EFA, 0x1EFA, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EFB, 0x1EFB, .p.property = IDNA_P_PVALID },
+ { 0x1EFC, 0x1EFC, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EFD, 0x1EFD, .p.property = IDNA_P_PVALID },
+ { 0x1EFE, 0x1EFE, .p.property = IDNA_P_DISALLOWED },
+ { 0x1EFF, 0x1F07, .p.property = IDNA_P_PVALID },
+ { 0x1F08, 0x1F0F, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F10, 0x1F15, .p.property = IDNA_P_PVALID },
+ { 0x1F16, 0x1F17, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F18, 0x1F1D, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F1E, 0x1F1F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F20, 0x1F27, .p.property = IDNA_P_PVALID },
+ { 0x1F28, 0x1F2F, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F30, 0x1F37, .p.property = IDNA_P_PVALID },
+ { 0x1F38, 0x1F3F, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F40, 0x1F45, .p.property = IDNA_P_PVALID },
+ { 0x1F46, 0x1F47, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F48, 0x1F4D, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F4E, 0x1F4F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F50, 0x1F57, .p.property = IDNA_P_PVALID },
+ { 0x1F58, 0x1F58, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F59, 0x1F59, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F5A, 0x1F5A, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F5B, 0x1F5B, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F5C, 0x1F5C, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F5D, 0x1F5D, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F5E, 0x1F5E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F5F, 0x1F5F, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F60, 0x1F67, .p.property = IDNA_P_PVALID },
+ { 0x1F68, 0x1F6F, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F70, 0x1F70, .p.property = IDNA_P_PVALID },
+ { 0x1F71, 0x1F71, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F72, 0x1F72, .p.property = IDNA_P_PVALID },
+ { 0x1F73, 0x1F73, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F74, 0x1F74, .p.property = IDNA_P_PVALID },
+ { 0x1F75, 0x1F75, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F76, 0x1F76, .p.property = IDNA_P_PVALID },
+ { 0x1F77, 0x1F77, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F78, 0x1F78, .p.property = IDNA_P_PVALID },
+ { 0x1F79, 0x1F79, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F7A, 0x1F7A, .p.property = IDNA_P_PVALID },
+ { 0x1F7B, 0x1F7B, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F7C, 0x1F7C, .p.property = IDNA_P_PVALID },
+ { 0x1F7D, 0x1F7D, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F7E, 0x1F7F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F80, 0x1FAF, .p.property = IDNA_P_DISALLOWED },
+ { 0x1FB0, 0x1FB1, .p.property = IDNA_P_PVALID },
+ { 0x1FB2, 0x1FB4, .p.property = IDNA_P_DISALLOWED },
+ { 0x1FB5, 0x1FB5, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1FB6, 0x1FB6, .p.property = IDNA_P_PVALID },
+ { 0x1FB7, 0x1FC4, .p.property = IDNA_P_DISALLOWED },
+ { 0x1FC5, 0x1FC5, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1FC6, 0x1FC6, .p.property = IDNA_P_PVALID },
+ { 0x1FC7, 0x1FCF, .p.property = IDNA_P_DISALLOWED },
+ { 0x1FD0, 0x1FD2, .p.property = IDNA_P_PVALID },
+ { 0x1FD3, 0x1FD3, .p.property = IDNA_P_DISALLOWED },
+ { 0x1FD4, 0x1FD5, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1FD6, 0x1FD7, .p.property = IDNA_P_PVALID },
+ { 0x1FD8, 0x1FDB, .p.property = IDNA_P_DISALLOWED },
+ { 0x1FDC, 0x1FDC, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1FDD, 0x1FDF, .p.property = IDNA_P_DISALLOWED },
+ { 0x1FE0, 0x1FE2, .p.property = IDNA_P_PVALID },
+ { 0x1FE3, 0x1FE3, .p.property = IDNA_P_DISALLOWED },
+ { 0x1FE4, 0x1FE7, .p.property = IDNA_P_PVALID },
+ { 0x1FE8, 0x1FEF, .p.property = IDNA_P_DISALLOWED },
+ { 0x1FF0, 0x1FF1, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1FF2, 0x1FF4, .p.property = IDNA_P_DISALLOWED },
+ { 0x1FF5, 0x1FF5, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1FF6, 0x1FF6, .p.property = IDNA_P_PVALID },
+ { 0x1FF7, 0x1FFE, .p.property = IDNA_P_DISALLOWED },
+ { 0x1FFF, 0x1FFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2000, 0x200B, .p.property = IDNA_P_DISALLOWED },
+ { 0x200C, 0x200D, .p.property = IDNA_P_CONTEXTJ },
+ { 0x200E, 0x2064, .p.property = IDNA_P_DISALLOWED },
+ { 0x2065, 0x2069, .p.property = IDNA_P_UNASSIGNED },
+ { 0x206A, 0x2071, .p.property = IDNA_P_DISALLOWED },
+ { 0x2072, 0x2073, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2074, 0x208E, .p.property = IDNA_P_DISALLOWED },
+ { 0x208F, 0x208F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2090, 0x2094, .p.property = IDNA_P_DISALLOWED },
+ { 0x2095, 0x209F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x20A0, 0x20B8, .p.property = IDNA_P_DISALLOWED },
+ { 0x20B9, 0x20CF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x20D0, 0x20F0, .p.property = IDNA_P_DISALLOWED },
+ { 0x20F1, 0x20FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2100, 0x214D, .p.property = IDNA_P_DISALLOWED },
+ { 0x214E, 0x214E, .p.property = IDNA_P_PVALID },
+ { 0x214F, 0x2183, .p.property = IDNA_P_DISALLOWED },
+ { 0x2184, 0x2184, .p.property = IDNA_P_PVALID },
+ { 0x2185, 0x2189, .p.property = IDNA_P_DISALLOWED },
+ { 0x218A, 0x218F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2190, 0x23E8, .p.property = IDNA_P_DISALLOWED },
+ { 0x23E9, 0x23FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2400, 0x2426, .p.property = IDNA_P_DISALLOWED },
+ { 0x2427, 0x243F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2440, 0x244A, .p.property = IDNA_P_DISALLOWED },
+ { 0x244B, 0x245F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2460, 0x26CD, .p.property = IDNA_P_DISALLOWED },
+ { 0x26CE, 0x26CE, .p.property = IDNA_P_UNASSIGNED },
+ { 0x26CF, 0x26E1, .p.property = IDNA_P_DISALLOWED },
+ { 0x26E2, 0x26E2, .p.property = IDNA_P_UNASSIGNED },
+ { 0x26E3, 0x26E3, .p.property = IDNA_P_DISALLOWED },
+ { 0x26E4, 0x26E7, .p.property = IDNA_P_UNASSIGNED },
+ { 0x26E8, 0x26FF, .p.property = IDNA_P_DISALLOWED },
+ { 0x2700, 0x2700, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2701, 0x2704, .p.property = IDNA_P_DISALLOWED },
+ { 0x2705, 0x2705, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2706, 0x2709, .p.property = IDNA_P_DISALLOWED },
+ { 0x270A, 0x270B, .p.property = IDNA_P_UNASSIGNED },
+ { 0x270C, 0x2727, .p.property = IDNA_P_DISALLOWED },
+ { 0x2728, 0x2728, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2729, 0x274B, .p.property = IDNA_P_DISALLOWED },
+ { 0x274C, 0x274C, .p.property = IDNA_P_UNASSIGNED },
+ { 0x274D, 0x274D, .p.property = IDNA_P_DISALLOWED },
+ { 0x274E, 0x274E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x274F, 0x2752, .p.property = IDNA_P_DISALLOWED },
+ { 0x2753, 0x2755, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2756, 0x275E, .p.property = IDNA_P_DISALLOWED },
+ { 0x275F, 0x2760, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2761, 0x2794, .p.property = IDNA_P_DISALLOWED },
+ { 0x2795, 0x2797, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2798, 0x27AF, .p.property = IDNA_P_DISALLOWED },
+ { 0x27B0, 0x27B0, .p.property = IDNA_P_UNASSIGNED },
+ { 0x27B1, 0x27BE, .p.property = IDNA_P_DISALLOWED },
+ { 0x27BF, 0x27BF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x27C0, 0x27CA, .p.property = IDNA_P_DISALLOWED },
+ { 0x27CB, 0x27CB, .p.property = IDNA_P_UNASSIGNED },
+ { 0x27CC, 0x27CC, .p.property = IDNA_P_DISALLOWED },
+ { 0x27CD, 0x27CF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x27D0, 0x2B4C, .p.property = IDNA_P_DISALLOWED },
+ { 0x2B4D, 0x2B4F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2B50, 0x2B59, .p.property = IDNA_P_DISALLOWED },
+ { 0x2B5A, 0x2BFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2C00, 0x2C2E, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C2F, 0x2C2F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2C30, 0x2C5E, .p.property = IDNA_P_PVALID },
+ { 0x2C5F, 0x2C5F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2C60, 0x2C60, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C61, 0x2C61, .p.property = IDNA_P_PVALID },
+ { 0x2C62, 0x2C64, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C65, 0x2C66, .p.property = IDNA_P_PVALID },
+ { 0x2C67, 0x2C67, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C68, 0x2C68, .p.property = IDNA_P_PVALID },
+ { 0x2C69, 0x2C69, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C6A, 0x2C6A, .p.property = IDNA_P_PVALID },
+ { 0x2C6B, 0x2C6B, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C6C, 0x2C6C, .p.property = IDNA_P_PVALID },
+ { 0x2C6D, 0x2C70, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C71, 0x2C71, .p.property = IDNA_P_PVALID },
+ { 0x2C72, 0x2C72, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C73, 0x2C74, .p.property = IDNA_P_PVALID },
+ { 0x2C75, 0x2C75, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C76, 0x2C7B, .p.property = IDNA_P_PVALID },
+ { 0x2C7C, 0x2C80, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C81, 0x2C81, .p.property = IDNA_P_PVALID },
+ { 0x2C82, 0x2C82, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C83, 0x2C83, .p.property = IDNA_P_PVALID },
+ { 0x2C84, 0x2C84, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C85, 0x2C85, .p.property = IDNA_P_PVALID },
+ { 0x2C86, 0x2C86, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C87, 0x2C87, .p.property = IDNA_P_PVALID },
+ { 0x2C88, 0x2C88, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C89, 0x2C89, .p.property = IDNA_P_PVALID },
+ { 0x2C8A, 0x2C8A, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C8B, 0x2C8B, .p.property = IDNA_P_PVALID },
+ { 0x2C8C, 0x2C8C, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C8D, 0x2C8D, .p.property = IDNA_P_PVALID },
+ { 0x2C8E, 0x2C8E, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C8F, 0x2C8F, .p.property = IDNA_P_PVALID },
+ { 0x2C90, 0x2C90, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C91, 0x2C91, .p.property = IDNA_P_PVALID },
+ { 0x2C92, 0x2C92, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C93, 0x2C93, .p.property = IDNA_P_PVALID },
+ { 0x2C94, 0x2C94, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C95, 0x2C95, .p.property = IDNA_P_PVALID },
+ { 0x2C96, 0x2C96, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C97, 0x2C97, .p.property = IDNA_P_PVALID },
+ { 0x2C98, 0x2C98, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C99, 0x2C99, .p.property = IDNA_P_PVALID },
+ { 0x2C9A, 0x2C9A, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C9B, 0x2C9B, .p.property = IDNA_P_PVALID },
+ { 0x2C9C, 0x2C9C, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C9D, 0x2C9D, .p.property = IDNA_P_PVALID },
+ { 0x2C9E, 0x2C9E, .p.property = IDNA_P_DISALLOWED },
+ { 0x2C9F, 0x2C9F, .p.property = IDNA_P_PVALID },
+ { 0x2CA0, 0x2CA0, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CA1, 0x2CA1, .p.property = IDNA_P_PVALID },
+ { 0x2CA2, 0x2CA2, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CA3, 0x2CA3, .p.property = IDNA_P_PVALID },
+ { 0x2CA4, 0x2CA4, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CA5, 0x2CA5, .p.property = IDNA_P_PVALID },
+ { 0x2CA6, 0x2CA6, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CA7, 0x2CA7, .p.property = IDNA_P_PVALID },
+ { 0x2CA8, 0x2CA8, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CA9, 0x2CA9, .p.property = IDNA_P_PVALID },
+ { 0x2CAA, 0x2CAA, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CAB, 0x2CAB, .p.property = IDNA_P_PVALID },
+ { 0x2CAC, 0x2CAC, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CAD, 0x2CAD, .p.property = IDNA_P_PVALID },
+ { 0x2CAE, 0x2CAE, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CAF, 0x2CAF, .p.property = IDNA_P_PVALID },
+ { 0x2CB0, 0x2CB0, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CB1, 0x2CB1, .p.property = IDNA_P_PVALID },
+ { 0x2CB2, 0x2CB2, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CB3, 0x2CB3, .p.property = IDNA_P_PVALID },
+ { 0x2CB4, 0x2CB4, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CB5, 0x2CB5, .p.property = IDNA_P_PVALID },
+ { 0x2CB6, 0x2CB6, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CB7, 0x2CB7, .p.property = IDNA_P_PVALID },
+ { 0x2CB8, 0x2CB8, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CB9, 0x2CB9, .p.property = IDNA_P_PVALID },
+ { 0x2CBA, 0x2CBA, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CBB, 0x2CBB, .p.property = IDNA_P_PVALID },
+ { 0x2CBC, 0x2CBC, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CBD, 0x2CBD, .p.property = IDNA_P_PVALID },
+ { 0x2CBE, 0x2CBE, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CBF, 0x2CBF, .p.property = IDNA_P_PVALID },
+ { 0x2CC0, 0x2CC0, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CC1, 0x2CC1, .p.property = IDNA_P_PVALID },
+ { 0x2CC2, 0x2CC2, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CC3, 0x2CC3, .p.property = IDNA_P_PVALID },
+ { 0x2CC4, 0x2CC4, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CC5, 0x2CC5, .p.property = IDNA_P_PVALID },
+ { 0x2CC6, 0x2CC6, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CC7, 0x2CC7, .p.property = IDNA_P_PVALID },
+ { 0x2CC8, 0x2CC8, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CC9, 0x2CC9, .p.property = IDNA_P_PVALID },
+ { 0x2CCA, 0x2CCA, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CCB, 0x2CCB, .p.property = IDNA_P_PVALID },
+ { 0x2CCC, 0x2CCC, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CCD, 0x2CCD, .p.property = IDNA_P_PVALID },
+ { 0x2CCE, 0x2CCE, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CCF, 0x2CCF, .p.property = IDNA_P_PVALID },
+ { 0x2CD0, 0x2CD0, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CD1, 0x2CD1, .p.property = IDNA_P_PVALID },
+ { 0x2CD2, 0x2CD2, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CD3, 0x2CD3, .p.property = IDNA_P_PVALID },
+ { 0x2CD4, 0x2CD4, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CD5, 0x2CD5, .p.property = IDNA_P_PVALID },
+ { 0x2CD6, 0x2CD6, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CD7, 0x2CD7, .p.property = IDNA_P_PVALID },
+ { 0x2CD8, 0x2CD8, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CD9, 0x2CD9, .p.property = IDNA_P_PVALID },
+ { 0x2CDA, 0x2CDA, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CDB, 0x2CDB, .p.property = IDNA_P_PVALID },
+ { 0x2CDC, 0x2CDC, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CDD, 0x2CDD, .p.property = IDNA_P_PVALID },
+ { 0x2CDE, 0x2CDE, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CDF, 0x2CDF, .p.property = IDNA_P_PVALID },
+ { 0x2CE0, 0x2CE0, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CE1, 0x2CE1, .p.property = IDNA_P_PVALID },
+ { 0x2CE2, 0x2CE2, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CE3, 0x2CE4, .p.property = IDNA_P_PVALID },
+ { 0x2CE5, 0x2CEB, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CEC, 0x2CEC, .p.property = IDNA_P_PVALID },
+ { 0x2CED, 0x2CED, .p.property = IDNA_P_DISALLOWED },
+ { 0x2CEE, 0x2CF1, .p.property = IDNA_P_PVALID },
+ { 0x2CF2, 0x2CF8, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2CF9, 0x2CFF, .p.property = IDNA_P_DISALLOWED },
+ { 0x2D00, 0x2D25, .p.property = IDNA_P_PVALID },
+ { 0x2D26, 0x2D2F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2D30, 0x2D65, .p.property = IDNA_P_PVALID },
+ { 0x2D66, 0x2D6E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2D6F, 0x2D6F, .p.property = IDNA_P_DISALLOWED },
+ { 0x2D70, 0x2D7F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2D80, 0x2D96, .p.property = IDNA_P_PVALID },
+ { 0x2D97, 0x2D9F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2DA0, 0x2DA6, .p.property = IDNA_P_PVALID },
+ { 0x2DA7, 0x2DA7, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2DA8, 0x2DAE, .p.property = IDNA_P_PVALID },
+ { 0x2DAF, 0x2DAF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2DB0, 0x2DB6, .p.property = IDNA_P_PVALID },
+ { 0x2DB7, 0x2DB7, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2DB8, 0x2DBE, .p.property = IDNA_P_PVALID },
+ { 0x2DBF, 0x2DBF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2DC0, 0x2DC6, .p.property = IDNA_P_PVALID },
+ { 0x2DC7, 0x2DC7, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2DC8, 0x2DCE, .p.property = IDNA_P_PVALID },
+ { 0x2DCF, 0x2DCF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2DD0, 0x2DD6, .p.property = IDNA_P_PVALID },
+ { 0x2DD7, 0x2DD7, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2DD8, 0x2DDE, .p.property = IDNA_P_PVALID },
+ { 0x2DDF, 0x2DDF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2DE0, 0x2DFF, .p.property = IDNA_P_PVALID },
+ { 0x2E00, 0x2E2E, .p.property = IDNA_P_DISALLOWED },
+ { 0x2E2F, 0x2E2F, .p.property = IDNA_P_PVALID },
+ { 0x2E30, 0x2E31, .p.property = IDNA_P_DISALLOWED },
+ { 0x2E32, 0x2E7F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2E80, 0x2E99, .p.property = IDNA_P_DISALLOWED },
+ { 0x2E9A, 0x2E9A, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2E9B, 0x2EF3, .p.property = IDNA_P_DISALLOWED },
+ { 0x2EF4, 0x2EFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2F00, 0x2FD5, .p.property = IDNA_P_DISALLOWED },
+ { 0x2FD6, 0x2FEF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2FF0, 0x2FFB, .p.property = IDNA_P_DISALLOWED },
+ { 0x2FFC, 0x2FFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x3000, 0x3004, .p.property = IDNA_P_DISALLOWED },
+ { 0x3005, 0x3007, .p.property = IDNA_P_PVALID },
+ { 0x3008, 0x3029, .p.property = IDNA_P_DISALLOWED },
+ { 0x302A, 0x302D, .p.property = IDNA_P_PVALID },
+ { 0x302E, 0x303B, .p.property = IDNA_P_DISALLOWED },
+ { 0x303C, 0x303C, .p.property = IDNA_P_PVALID },
+ { 0x303D, 0x303F, .p.property = IDNA_P_DISALLOWED },
+ { 0x3040, 0x3040, .p.property = IDNA_P_UNASSIGNED },
+ { 0x3041, 0x3096, .p.property = IDNA_P_PVALID },
+ { 0x3097, 0x3098, .p.property = IDNA_P_UNASSIGNED },
+ { 0x3099, 0x309A, .p.property = IDNA_P_PVALID },
+ { 0x309B, 0x309C, .p.property = IDNA_P_DISALLOWED },
+ { 0x309D, 0x309E, .p.property = IDNA_P_PVALID },
+ { 0x309F, 0x30A0, .p.property = IDNA_P_DISALLOWED },
+ { 0x30A1, 0x30FA, .p.property = IDNA_P_PVALID },
+ { 0x30FB, 0x30FB, .p.property = IDNA_P_CONTEXTO },
+ { 0x30FC, 0x30FE, .p.property = IDNA_P_PVALID },
+ { 0x30FF, 0x30FF, .p.property = IDNA_P_DISALLOWED },
+ { 0x3100, 0x3104, .p.property = IDNA_P_UNASSIGNED },
+ { 0x3105, 0x312D, .p.property = IDNA_P_PVALID },
+ { 0x312E, 0x3130, .p.property = IDNA_P_UNASSIGNED },
+ { 0x3131, 0x318E, .p.property = IDNA_P_DISALLOWED },
+ { 0x318F, 0x318F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x3190, 0x319F, .p.property = IDNA_P_DISALLOWED },
+ { 0x31A0, 0x31B7, .p.property = IDNA_P_PVALID },
+ { 0x31B8, 0x31BF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x31C0, 0x31E3, .p.property = IDNA_P_DISALLOWED },
+ { 0x31E4, 0x31EF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x31F0, 0x31FF, .p.property = IDNA_P_PVALID },
+ { 0x3200, 0x321E, .p.property = IDNA_P_DISALLOWED },
+ { 0x321F, 0x321F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x3220, 0x32FE, .p.property = IDNA_P_DISALLOWED },
+ { 0x32FF, 0x32FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x3300, 0x33FF, .p.property = IDNA_P_DISALLOWED },
+ { 0x3400, 0x4DB5, .p.property = IDNA_P_PVALID },
+ { 0x4DB6, 0x4DBF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x4DC0, 0x4DFF, .p.property = IDNA_P_DISALLOWED },
+ { 0x4E00, 0x9FCB, .p.property = IDNA_P_PVALID },
+ { 0x9FCC, 0x9FFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA000, 0xA48C, .p.property = IDNA_P_PVALID },
+ { 0xA48D, 0xA48F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA490, 0xA4C6, .p.property = IDNA_P_DISALLOWED },
+ { 0xA4C7, 0xA4CF, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA4D0, 0xA4FD, .p.property = IDNA_P_PVALID },
+ { 0xA4FE, 0xA4FF, .p.property = IDNA_P_DISALLOWED },
+ { 0xA500, 0xA60C, .p.property = IDNA_P_PVALID },
+ { 0xA60D, 0xA60F, .p.property = IDNA_P_DISALLOWED },
+ { 0xA610, 0xA62B, .p.property = IDNA_P_PVALID },
+ { 0xA62C, 0xA63F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA640, 0xA640, .p.property = IDNA_P_DISALLOWED },
+ { 0xA641, 0xA641, .p.property = IDNA_P_PVALID },
+ { 0xA642, 0xA642, .p.property = IDNA_P_DISALLOWED },
+ { 0xA643, 0xA643, .p.property = IDNA_P_PVALID },
+ { 0xA644, 0xA644, .p.property = IDNA_P_DISALLOWED },
+ { 0xA645, 0xA645, .p.property = IDNA_P_PVALID },
+ { 0xA646, 0xA646, .p.property = IDNA_P_DISALLOWED },
+ { 0xA647, 0xA647, .p.property = IDNA_P_PVALID },
+ { 0xA648, 0xA648, .p.property = IDNA_P_DISALLOWED },
+ { 0xA649, 0xA649, .p.property = IDNA_P_PVALID },
+ { 0xA64A, 0xA64A, .p.property = IDNA_P_DISALLOWED },
+ { 0xA64B, 0xA64B, .p.property = IDNA_P_PVALID },
+ { 0xA64C, 0xA64C, .p.property = IDNA_P_DISALLOWED },
+ { 0xA64D, 0xA64D, .p.property = IDNA_P_PVALID },
+ { 0xA64E, 0xA64E, .p.property = IDNA_P_DISALLOWED },
+ { 0xA64F, 0xA64F, .p.property = IDNA_P_PVALID },
+ { 0xA650, 0xA650, .p.property = IDNA_P_DISALLOWED },
+ { 0xA651, 0xA651, .p.property = IDNA_P_PVALID },
+ { 0xA652, 0xA652, .p.property = IDNA_P_DISALLOWED },
+ { 0xA653, 0xA653, .p.property = IDNA_P_PVALID },
+ { 0xA654, 0xA654, .p.property = IDNA_P_DISALLOWED },
+ { 0xA655, 0xA655, .p.property = IDNA_P_PVALID },
+ { 0xA656, 0xA656, .p.property = IDNA_P_DISALLOWED },
+ { 0xA657, 0xA657, .p.property = IDNA_P_PVALID },
+ { 0xA658, 0xA658, .p.property = IDNA_P_DISALLOWED },
+ { 0xA659, 0xA659, .p.property = IDNA_P_PVALID },
+ { 0xA65A, 0xA65A, .p.property = IDNA_P_DISALLOWED },
+ { 0xA65B, 0xA65B, .p.property = IDNA_P_PVALID },
+ { 0xA65C, 0xA65C, .p.property = IDNA_P_DISALLOWED },
+ { 0xA65D, 0xA65D, .p.property = IDNA_P_PVALID },
+ { 0xA65E, 0xA65E, .p.property = IDNA_P_DISALLOWED },
+ { 0xA65F, 0xA65F, .p.property = IDNA_P_PVALID },
+ { 0xA660, 0xA661, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA662, 0xA662, .p.property = IDNA_P_DISALLOWED },
+ { 0xA663, 0xA663, .p.property = IDNA_P_PVALID },
+ { 0xA664, 0xA664, .p.property = IDNA_P_DISALLOWED },
+ { 0xA665, 0xA665, .p.property = IDNA_P_PVALID },
+ { 0xA666, 0xA666, .p.property = IDNA_P_DISALLOWED },
+ { 0xA667, 0xA667, .p.property = IDNA_P_PVALID },
+ { 0xA668, 0xA668, .p.property = IDNA_P_DISALLOWED },
+ { 0xA669, 0xA669, .p.property = IDNA_P_PVALID },
+ { 0xA66A, 0xA66A, .p.property = IDNA_P_DISALLOWED },
+ { 0xA66B, 0xA66B, .p.property = IDNA_P_PVALID },
+ { 0xA66C, 0xA66C, .p.property = IDNA_P_DISALLOWED },
+ { 0xA66D, 0xA66F, .p.property = IDNA_P_PVALID },
+ { 0xA670, 0xA673, .p.property = IDNA_P_DISALLOWED },
+ { 0xA674, 0xA67B, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA67C, 0xA67D, .p.property = IDNA_P_PVALID },
+ { 0xA67E, 0xA67E, .p.property = IDNA_P_DISALLOWED },
+ { 0xA67F, 0xA67F, .p.property = IDNA_P_PVALID },
+ { 0xA680, 0xA680, .p.property = IDNA_P_DISALLOWED },
+ { 0xA681, 0xA681, .p.property = IDNA_P_PVALID },
+ { 0xA682, 0xA682, .p.property = IDNA_P_DISALLOWED },
+ { 0xA683, 0xA683, .p.property = IDNA_P_PVALID },
+ { 0xA684, 0xA684, .p.property = IDNA_P_DISALLOWED },
+ { 0xA685, 0xA685, .p.property = IDNA_P_PVALID },
+ { 0xA686, 0xA686, .p.property = IDNA_P_DISALLOWED },
+ { 0xA687, 0xA687, .p.property = IDNA_P_PVALID },
+ { 0xA688, 0xA688, .p.property = IDNA_P_DISALLOWED },
+ { 0xA689, 0xA689, .p.property = IDNA_P_PVALID },
+ { 0xA68A, 0xA68A, .p.property = IDNA_P_DISALLOWED },
+ { 0xA68B, 0xA68B, .p.property = IDNA_P_PVALID },
+ { 0xA68C, 0xA68C, .p.property = IDNA_P_DISALLOWED },
+ { 0xA68D, 0xA68D, .p.property = IDNA_P_PVALID },
+ { 0xA68E, 0xA68E, .p.property = IDNA_P_DISALLOWED },
+ { 0xA68F, 0xA68F, .p.property = IDNA_P_PVALID },
+ { 0xA690, 0xA690, .p.property = IDNA_P_DISALLOWED },
+ { 0xA691, 0xA691, .p.property = IDNA_P_PVALID },
+ { 0xA692, 0xA692, .p.property = IDNA_P_DISALLOWED },
+ { 0xA693, 0xA693, .p.property = IDNA_P_PVALID },
+ { 0xA694, 0xA694, .p.property = IDNA_P_DISALLOWED },
+ { 0xA695, 0xA695, .p.property = IDNA_P_PVALID },
+ { 0xA696, 0xA696, .p.property = IDNA_P_DISALLOWED },
+ { 0xA697, 0xA697, .p.property = IDNA_P_PVALID },
+ { 0xA698, 0xA69F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA6A0, 0xA6E5, .p.property = IDNA_P_PVALID },
+ { 0xA6E6, 0xA6EF, .p.property = IDNA_P_DISALLOWED },
+ { 0xA6F0, 0xA6F1, .p.property = IDNA_P_PVALID },
+ { 0xA6F2, 0xA6F7, .p.property = IDNA_P_DISALLOWED },
+ { 0xA6F8, 0xA6FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA700, 0xA716, .p.property = IDNA_P_DISALLOWED },
+ { 0xA717, 0xA71F, .p.property = IDNA_P_PVALID },
+ { 0xA720, 0xA722, .p.property = IDNA_P_DISALLOWED },
+ { 0xA723, 0xA723, .p.property = IDNA_P_PVALID },
+ { 0xA724, 0xA724, .p.property = IDNA_P_DISALLOWED },
+ { 0xA725, 0xA725, .p.property = IDNA_P_PVALID },
+ { 0xA726, 0xA726, .p.property = IDNA_P_DISALLOWED },
+ { 0xA727, 0xA727, .p.property = IDNA_P_PVALID },
+ { 0xA728, 0xA728, .p.property = IDNA_P_DISALLOWED },
+ { 0xA729, 0xA729, .p.property = IDNA_P_PVALID },
+ { 0xA72A, 0xA72A, .p.property = IDNA_P_DISALLOWED },
+ { 0xA72B, 0xA72B, .p.property = IDNA_P_PVALID },
+ { 0xA72C, 0xA72C, .p.property = IDNA_P_DISALLOWED },
+ { 0xA72D, 0xA72D, .p.property = IDNA_P_PVALID },
+ { 0xA72E, 0xA72E, .p.property = IDNA_P_DISALLOWED },
+ { 0xA72F, 0xA731, .p.property = IDNA_P_PVALID },
+ { 0xA732, 0xA732, .p.property = IDNA_P_DISALLOWED },
+ { 0xA733, 0xA733, .p.property = IDNA_P_PVALID },
+ { 0xA734, 0xA734, .p.property = IDNA_P_DISALLOWED },
+ { 0xA735, 0xA735, .p.property = IDNA_P_PVALID },
+ { 0xA736, 0xA736, .p.property = IDNA_P_DISALLOWED },
+ { 0xA737, 0xA737, .p.property = IDNA_P_PVALID },
+ { 0xA738, 0xA738, .p.property = IDNA_P_DISALLOWED },
+ { 0xA739, 0xA739, .p.property = IDNA_P_PVALID },
+ { 0xA73A, 0xA73A, .p.property = IDNA_P_DISALLOWED },
+ { 0xA73B, 0xA73B, .p.property = IDNA_P_PVALID },
+ { 0xA73C, 0xA73C, .p.property = IDNA_P_DISALLOWED },
+ { 0xA73D, 0xA73D, .p.property = IDNA_P_PVALID },
+ { 0xA73E, 0xA73E, .p.property = IDNA_P_DISALLOWED },
+ { 0xA73F, 0xA73F, .p.property = IDNA_P_PVALID },
+ { 0xA740, 0xA740, .p.property = IDNA_P_DISALLOWED },
+ { 0xA741, 0xA741, .p.property = IDNA_P_PVALID },
+ { 0xA742, 0xA742, .p.property = IDNA_P_DISALLOWED },
+ { 0xA743, 0xA743, .p.property = IDNA_P_PVALID },
+ { 0xA744, 0xA744, .p.property = IDNA_P_DISALLOWED },
+ { 0xA745, 0xA745, .p.property = IDNA_P_PVALID },
+ { 0xA746, 0xA746, .p.property = IDNA_P_DISALLOWED },
+ { 0xA747, 0xA747, .p.property = IDNA_P_PVALID },
+ { 0xA748, 0xA748, .p.property = IDNA_P_DISALLOWED },
+ { 0xA749, 0xA749, .p.property = IDNA_P_PVALID },
+ { 0xA74A, 0xA74A, .p.property = IDNA_P_DISALLOWED },
+ { 0xA74B, 0xA74B, .p.property = IDNA_P_PVALID },
+ { 0xA74C, 0xA74C, .p.property = IDNA_P_DISALLOWED },
+ { 0xA74D, 0xA74D, .p.property = IDNA_P_PVALID },
+ { 0xA74E, 0xA74E, .p.property = IDNA_P_DISALLOWED },
+ { 0xA74F, 0xA74F, .p.property = IDNA_P_PVALID },
+ { 0xA750, 0xA750, .p.property = IDNA_P_DISALLOWED },
+ { 0xA751, 0xA751, .p.property = IDNA_P_PVALID },
+ { 0xA752, 0xA752, .p.property = IDNA_P_DISALLOWED },
+ { 0xA753, 0xA753, .p.property = IDNA_P_PVALID },
+ { 0xA754, 0xA754, .p.property = IDNA_P_DISALLOWED },
+ { 0xA755, 0xA755, .p.property = IDNA_P_PVALID },
+ { 0xA756, 0xA756, .p.property = IDNA_P_DISALLOWED },
+ { 0xA757, 0xA757, .p.property = IDNA_P_PVALID },
+ { 0xA758, 0xA758, .p.property = IDNA_P_DISALLOWED },
+ { 0xA759, 0xA759, .p.property = IDNA_P_PVALID },
+ { 0xA75A, 0xA75A, .p.property = IDNA_P_DISALLOWED },
+ { 0xA75B, 0xA75B, .p.property = IDNA_P_PVALID },
+ { 0xA75C, 0xA75C, .p.property = IDNA_P_DISALLOWED },
+ { 0xA75D, 0xA75D, .p.property = IDNA_P_PVALID },
+ { 0xA75E, 0xA75E, .p.property = IDNA_P_DISALLOWED },
+ { 0xA75F, 0xA75F, .p.property = IDNA_P_PVALID },
+ { 0xA760, 0xA760, .p.property = IDNA_P_DISALLOWED },
+ { 0xA761, 0xA761, .p.property = IDNA_P_PVALID },
+ { 0xA762, 0xA762, .p.property = IDNA_P_DISALLOWED },
+ { 0xA763, 0xA763, .p.property = IDNA_P_PVALID },
+ { 0xA764, 0xA764, .p.property = IDNA_P_DISALLOWED },
+ { 0xA765, 0xA765, .p.property = IDNA_P_PVALID },
+ { 0xA766, 0xA766, .p.property = IDNA_P_DISALLOWED },
+ { 0xA767, 0xA767, .p.property = IDNA_P_PVALID },
+ { 0xA768, 0xA768, .p.property = IDNA_P_DISALLOWED },
+ { 0xA769, 0xA769, .p.property = IDNA_P_PVALID },
+ { 0xA76A, 0xA76A, .p.property = IDNA_P_DISALLOWED },
+ { 0xA76B, 0xA76B, .p.property = IDNA_P_PVALID },
+ { 0xA76C, 0xA76C, .p.property = IDNA_P_DISALLOWED },
+ { 0xA76D, 0xA76D, .p.property = IDNA_P_PVALID },
+ { 0xA76E, 0xA76E, .p.property = IDNA_P_DISALLOWED },
+ { 0xA76F, 0xA76F, .p.property = IDNA_P_PVALID },
+ { 0xA770, 0xA770, .p.property = IDNA_P_DISALLOWED },
+ { 0xA771, 0xA778, .p.property = IDNA_P_PVALID },
+ { 0xA779, 0xA779, .p.property = IDNA_P_DISALLOWED },
+ { 0xA77A, 0xA77A, .p.property = IDNA_P_PVALID },
+ { 0xA77B, 0xA77B, .p.property = IDNA_P_DISALLOWED },
+ { 0xA77C, 0xA77C, .p.property = IDNA_P_PVALID },
+ { 0xA77D, 0xA77E, .p.property = IDNA_P_DISALLOWED },
+ { 0xA77F, 0xA77F, .p.property = IDNA_P_PVALID },
+ { 0xA780, 0xA780, .p.property = IDNA_P_DISALLOWED },
+ { 0xA781, 0xA781, .p.property = IDNA_P_PVALID },
+ { 0xA782, 0xA782, .p.property = IDNA_P_DISALLOWED },
+ { 0xA783, 0xA783, .p.property = IDNA_P_PVALID },
+ { 0xA784, 0xA784, .p.property = IDNA_P_DISALLOWED },
+ { 0xA785, 0xA785, .p.property = IDNA_P_PVALID },
+ { 0xA786, 0xA786, .p.property = IDNA_P_DISALLOWED },
+ { 0xA787, 0xA788, .p.property = IDNA_P_PVALID },
+ { 0xA789, 0xA78B, .p.property = IDNA_P_DISALLOWED },
+ { 0xA78C, 0xA78C, .p.property = IDNA_P_PVALID },
+ { 0xA78D, 0xA7FA, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA7FB, 0xA827, .p.property = IDNA_P_PVALID },
+ { 0xA828, 0xA82B, .p.property = IDNA_P_DISALLOWED },
+ { 0xA82C, 0xA82F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA830, 0xA839, .p.property = IDNA_P_DISALLOWED },
+ { 0xA83A, 0xA83F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA840, 0xA873, .p.property = IDNA_P_PVALID },
+ { 0xA874, 0xA877, .p.property = IDNA_P_DISALLOWED },
+ { 0xA878, 0xA87F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA880, 0xA8C4, .p.property = IDNA_P_PVALID },
+ { 0xA8C5, 0xA8CD, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA8CE, 0xA8CF, .p.property = IDNA_P_DISALLOWED },
+ { 0xA8D0, 0xA8D9, .p.property = IDNA_P_PVALID },
+ { 0xA8DA, 0xA8DF, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA8E0, 0xA8F7, .p.property = IDNA_P_PVALID },
+ { 0xA8F8, 0xA8FA, .p.property = IDNA_P_DISALLOWED },
+ { 0xA8FB, 0xA8FB, .p.property = IDNA_P_PVALID },
+ { 0xA8FC, 0xA8FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA900, 0xA92D, .p.property = IDNA_P_PVALID },
+ { 0xA92E, 0xA92F, .p.property = IDNA_P_DISALLOWED },
+ { 0xA930, 0xA953, .p.property = IDNA_P_PVALID },
+ { 0xA954, 0xA95E, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA95F, 0xA97C, .p.property = IDNA_P_DISALLOWED },
+ { 0xA97D, 0xA97F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA980, 0xA9C0, .p.property = IDNA_P_PVALID },
+ { 0xA9C1, 0xA9CD, .p.property = IDNA_P_DISALLOWED },
+ { 0xA9CE, 0xA9CE, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA9CF, 0xA9D9, .p.property = IDNA_P_PVALID },
+ { 0xA9DA, 0xA9DD, .p.property = IDNA_P_UNASSIGNED },
+ { 0xA9DE, 0xA9DF, .p.property = IDNA_P_DISALLOWED },
+ { 0xA9E0, 0xA9FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0xAA00, 0xAA36, .p.property = IDNA_P_PVALID },
+ { 0xAA37, 0xAA3F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xAA40, 0xAA4D, .p.property = IDNA_P_PVALID },
+ { 0xAA4E, 0xAA4F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xAA50, 0xAA59, .p.property = IDNA_P_PVALID },
+ { 0xAA5A, 0xAA5B, .p.property = IDNA_P_UNASSIGNED },
+ { 0xAA5C, 0xAA5F, .p.property = IDNA_P_DISALLOWED },
+ { 0xAA60, 0xAA76, .p.property = IDNA_P_PVALID },
+ { 0xAA77, 0xAA79, .p.property = IDNA_P_DISALLOWED },
+ { 0xAA7A, 0xAA7B, .p.property = IDNA_P_PVALID },
+ { 0xAA7C, 0xAA7F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xAA80, 0xAAC2, .p.property = IDNA_P_PVALID },
+ { 0xAAC3, 0xAADA, .p.property = IDNA_P_UNASSIGNED },
+ { 0xAADB, 0xAADD, .p.property = IDNA_P_PVALID },
+ { 0xAADE, 0xAADF, .p.property = IDNA_P_DISALLOWED },
+ { 0xAAE0, 0xABBF, .p.property = IDNA_P_UNASSIGNED },
+ { 0xABC0, 0xABEA, .p.property = IDNA_P_PVALID },
+ { 0xABEB, 0xABEB, .p.property = IDNA_P_DISALLOWED },
+ { 0xABEC, 0xABED, .p.property = IDNA_P_PVALID },
+ { 0xABEE, 0xABEF, .p.property = IDNA_P_UNASSIGNED },
+ { 0xABF0, 0xABF9, .p.property = IDNA_P_PVALID },
+ { 0xABFA, 0xABFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0xAC00, 0xD7A3, .p.property = IDNA_P_PVALID },
+ { 0xD7A4, 0xD7AF, .p.property = IDNA_P_UNASSIGNED },
+ { 0xD7B0, 0xD7C6, .p.property = IDNA_P_DISALLOWED },
+ { 0xD7C7, 0xD7CA, .p.property = IDNA_P_UNASSIGNED },
+ { 0xD7CB, 0xD7FB, .p.property = IDNA_P_DISALLOWED },
+ { 0xD7FC, 0xD7FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0xD800, 0xFA0D, .p.property = IDNA_P_DISALLOWED },
+ { 0xFA0E, 0xFA0F, .p.property = IDNA_P_PVALID },
+ { 0xFA10, 0xFA10, .p.property = IDNA_P_DISALLOWED },
+ { 0xFA11, 0xFA11, .p.property = IDNA_P_PVALID },
+ { 0xFA12, 0xFA12, .p.property = IDNA_P_DISALLOWED },
+ { 0xFA13, 0xFA14, .p.property = IDNA_P_PVALID },
+ { 0xFA15, 0xFA1E, .p.property = IDNA_P_DISALLOWED },
+ { 0xFA1F, 0xFA1F, .p.property = IDNA_P_PVALID },
+ { 0xFA20, 0xFA20, .p.property = IDNA_P_DISALLOWED },
+ { 0xFA21, 0xFA21, .p.property = IDNA_P_PVALID },
+ { 0xFA22, 0xFA22, .p.property = IDNA_P_DISALLOWED },
+ { 0xFA23, 0xFA24, .p.property = IDNA_P_PVALID },
+ { 0xFA25, 0xFA26, .p.property = IDNA_P_DISALLOWED },
+ { 0xFA27, 0xFA29, .p.property = IDNA_P_PVALID },
+ { 0xFA2A, 0xFA2D, .p.property = IDNA_P_DISALLOWED },
+ { 0xFA2E, 0xFA2F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFA30, 0xFA6D, .p.property = IDNA_P_DISALLOWED },
+ { 0xFA6E, 0xFA6F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFA70, 0xFAD9, .p.property = IDNA_P_DISALLOWED },
+ { 0xFADA, 0xFAFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFB00, 0xFB06, .p.property = IDNA_P_DISALLOWED },
+ { 0xFB07, 0xFB12, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFB13, 0xFB17, .p.property = IDNA_P_DISALLOWED },
+ { 0xFB18, 0xFB1C, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFB1D, 0xFB1D, .p.property = IDNA_P_DISALLOWED },
+ { 0xFB1E, 0xFB1E, .p.property = IDNA_P_PVALID },
+ { 0xFB1F, 0xFB36, .p.property = IDNA_P_DISALLOWED },
+ { 0xFB37, 0xFB37, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFB38, 0xFB3C, .p.property = IDNA_P_DISALLOWED },
+ { 0xFB3D, 0xFB3D, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFB3E, 0xFB3E, .p.property = IDNA_P_DISALLOWED },
+ { 0xFB3F, 0xFB3F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFB40, 0xFB41, .p.property = IDNA_P_DISALLOWED },
+ { 0xFB42, 0xFB42, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFB43, 0xFB44, .p.property = IDNA_P_DISALLOWED },
+ { 0xFB45, 0xFB45, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFB46, 0xFBB1, .p.property = IDNA_P_DISALLOWED },
+ { 0xFBB2, 0xFBD2, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFBD3, 0xFD3F, .p.property = IDNA_P_DISALLOWED },
+ { 0xFD40, 0xFD4F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFD50, 0xFD8F, .p.property = IDNA_P_DISALLOWED },
+ { 0xFD90, 0xFD91, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFD92, 0xFDC7, .p.property = IDNA_P_DISALLOWED },
+ { 0xFDC8, 0xFDCF, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFDD0, 0xFDFD, .p.property = IDNA_P_DISALLOWED },
+ { 0xFDFE, 0xFDFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFE00, 0xFE19, .p.property = IDNA_P_DISALLOWED },
+ { 0xFE1A, 0xFE1F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFE20, 0xFE26, .p.property = IDNA_P_PVALID },
+ { 0xFE27, 0xFE2F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFE30, 0xFE52, .p.property = IDNA_P_DISALLOWED },
+ { 0xFE53, 0xFE53, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFE54, 0xFE66, .p.property = IDNA_P_DISALLOWED },
+ { 0xFE67, 0xFE67, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFE68, 0xFE6B, .p.property = IDNA_P_DISALLOWED },
+ { 0xFE6C, 0xFE6F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFE70, 0xFE72, .p.property = IDNA_P_DISALLOWED },
+ { 0xFE73, 0xFE73, .p.property = IDNA_P_PVALID },
+ { 0xFE74, 0xFE74, .p.property = IDNA_P_DISALLOWED },
+ { 0xFE75, 0xFE75, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFE76, 0xFEFC, .p.property = IDNA_P_DISALLOWED },
+ { 0xFEFD, 0xFEFE, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFEFF, 0xFEFF, .p.property = IDNA_P_DISALLOWED },
+ { 0xFF00, 0xFF00, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFF01, 0xFFBE, .p.property = IDNA_P_DISALLOWED },
+ { 0xFFBF, 0xFFC1, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFFC2, 0xFFC7, .p.property = IDNA_P_DISALLOWED },
+ { 0xFFC8, 0xFFC9, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFFCA, 0xFFCF, .p.property = IDNA_P_DISALLOWED },
+ { 0xFFD0, 0xFFD1, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFFD2, 0xFFD7, .p.property = IDNA_P_DISALLOWED },
+ { 0xFFD8, 0xFFD9, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFFDA, 0xFFDC, .p.property = IDNA_P_DISALLOWED },
+ { 0xFFDD, 0xFFDF, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFFE0, 0xFFE6, .p.property = IDNA_P_DISALLOWED },
+ { 0xFFE7, 0xFFE7, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFFE8, 0xFFEE, .p.property = IDNA_P_DISALLOWED },
+ { 0xFFEF, 0xFFF8, .p.property = IDNA_P_UNASSIGNED },
+ { 0xFFF9, 0xFFFF, .p.property = IDNA_P_DISALLOWED },
+ { 0x10000, 0x1000B, .p.property = IDNA_P_PVALID },
+ { 0x1000C, 0x1000C, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1000D, 0x10026, .p.property = IDNA_P_PVALID },
+ { 0x10027, 0x10027, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10028, 0x1003A, .p.property = IDNA_P_PVALID },
+ { 0x1003B, 0x1003B, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1003C, 0x1003D, .p.property = IDNA_P_PVALID },
+ { 0x1003E, 0x1003E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1003F, 0x1004D, .p.property = IDNA_P_PVALID },
+ { 0x1004E, 0x1004F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10050, 0x1005D, .p.property = IDNA_P_PVALID },
+ { 0x1005E, 0x1007F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10080, 0x100FA, .p.property = IDNA_P_PVALID },
+ { 0x100FB, 0x100FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10100, 0x10102, .p.property = IDNA_P_DISALLOWED },
+ { 0x10103, 0x10106, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10107, 0x10133, .p.property = IDNA_P_DISALLOWED },
+ { 0x10134, 0x10136, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10137, 0x1018A, .p.property = IDNA_P_DISALLOWED },
+ { 0x1018B, 0x1018F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10190, 0x1019B, .p.property = IDNA_P_DISALLOWED },
+ { 0x1019C, 0x101CF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x101D0, 0x101FC, .p.property = IDNA_P_DISALLOWED },
+ { 0x101FD, 0x101FD, .p.property = IDNA_P_PVALID },
+ { 0x101FE, 0x1027F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10280, 0x1029C, .p.property = IDNA_P_PVALID },
+ { 0x1029D, 0x1029F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x102A0, 0x102D0, .p.property = IDNA_P_PVALID },
+ { 0x102D1, 0x102FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10300, 0x1031E, .p.property = IDNA_P_PVALID },
+ { 0x1031F, 0x1031F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10320, 0x10323, .p.property = IDNA_P_DISALLOWED },
+ { 0x10324, 0x1032F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10330, 0x10340, .p.property = IDNA_P_PVALID },
+ { 0x10341, 0x10341, .p.property = IDNA_P_DISALLOWED },
+ { 0x10342, 0x10349, .p.property = IDNA_P_PVALID },
+ { 0x1034A, 0x1034A, .p.property = IDNA_P_DISALLOWED },
+ { 0x1034B, 0x1037F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10380, 0x1039D, .p.property = IDNA_P_PVALID },
+ { 0x1039E, 0x1039E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1039F, 0x1039F, .p.property = IDNA_P_DISALLOWED },
+ { 0x103A0, 0x103C3, .p.property = IDNA_P_PVALID },
+ { 0x103C4, 0x103C7, .p.property = IDNA_P_UNASSIGNED },
+ { 0x103C8, 0x103CF, .p.property = IDNA_P_PVALID },
+ { 0x103D0, 0x103D5, .p.property = IDNA_P_DISALLOWED },
+ { 0x103D6, 0x103FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10400, 0x10427, .p.property = IDNA_P_DISALLOWED },
+ { 0x10428, 0x1049D, .p.property = IDNA_P_PVALID },
+ { 0x1049E, 0x1049F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x104A0, 0x104A9, .p.property = IDNA_P_PVALID },
+ { 0x104AA, 0x107FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10800, 0x10805, .p.property = IDNA_P_PVALID },
+ { 0x10806, 0x10807, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10808, 0x10808, .p.property = IDNA_P_PVALID },
+ { 0x10809, 0x10809, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1080A, 0x10835, .p.property = IDNA_P_PVALID },
+ { 0x10836, 0x10836, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10837, 0x10838, .p.property = IDNA_P_PVALID },
+ { 0x10839, 0x1083B, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1083C, 0x1083C, .p.property = IDNA_P_PVALID },
+ { 0x1083D, 0x1083E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1083F, 0x10855, .p.property = IDNA_P_PVALID },
+ { 0x10856, 0x10856, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10857, 0x1085F, .p.property = IDNA_P_DISALLOWED },
+ { 0x10860, 0x108FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10900, 0x10915, .p.property = IDNA_P_PVALID },
+ { 0x10916, 0x1091B, .p.property = IDNA_P_DISALLOWED },
+ { 0x1091C, 0x1091E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1091F, 0x1091F, .p.property = IDNA_P_DISALLOWED },
+ { 0x10920, 0x10939, .p.property = IDNA_P_PVALID },
+ { 0x1093A, 0x1093E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1093F, 0x1093F, .p.property = IDNA_P_DISALLOWED },
+ { 0x10940, 0x109FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10A00, 0x10A03, .p.property = IDNA_P_PVALID },
+ { 0x10A04, 0x10A04, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10A05, 0x10A06, .p.property = IDNA_P_PVALID },
+ { 0x10A07, 0x10A0B, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10A0C, 0x10A13, .p.property = IDNA_P_PVALID },
+ { 0x10A14, 0x10A14, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10A15, 0x10A17, .p.property = IDNA_P_PVALID },
+ { 0x10A18, 0x10A18, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10A19, 0x10A33, .p.property = IDNA_P_PVALID },
+ { 0x10A34, 0x10A37, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10A38, 0x10A3A, .p.property = IDNA_P_PVALID },
+ { 0x10A3B, 0x10A3E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10A3F, 0x10A3F, .p.property = IDNA_P_PVALID },
+ { 0x10A40, 0x10A47, .p.property = IDNA_P_DISALLOWED },
+ { 0x10A48, 0x10A4F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10A50, 0x10A58, .p.property = IDNA_P_DISALLOWED },
+ { 0x10A59, 0x10A5F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10A60, 0x10A7C, .p.property = IDNA_P_PVALID },
+ { 0x10A7D, 0x10A7F, .p.property = IDNA_P_DISALLOWED },
+ { 0x10A80, 0x10AFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10B00, 0x10B35, .p.property = IDNA_P_PVALID },
+ { 0x10B36, 0x10B38, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10B39, 0x10B3F, .p.property = IDNA_P_DISALLOWED },
+ { 0x10B40, 0x10B55, .p.property = IDNA_P_PVALID },
+ { 0x10B56, 0x10B57, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10B58, 0x10B5F, .p.property = IDNA_P_DISALLOWED },
+ { 0x10B60, 0x10B72, .p.property = IDNA_P_PVALID },
+ { 0x10B73, 0x10B77, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10B78, 0x10B7F, .p.property = IDNA_P_DISALLOWED },
+ { 0x10B80, 0x10BFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10C00, 0x10C48, .p.property = IDNA_P_PVALID },
+ { 0x10C49, 0x10E5F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x10E60, 0x10E7E, .p.property = IDNA_P_DISALLOWED },
+ { 0x10E7F, 0x1107F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x11080, 0x110BA, .p.property = IDNA_P_PVALID },
+ { 0x110BB, 0x110C1, .p.property = IDNA_P_DISALLOWED },
+ { 0x110C2, 0x11FFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x12000, 0x1236E, .p.property = IDNA_P_PVALID },
+ { 0x1236F, 0x123FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x12400, 0x12462, .p.property = IDNA_P_DISALLOWED },
+ { 0x12463, 0x1246F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x12470, 0x12473, .p.property = IDNA_P_DISALLOWED },
+ { 0x12474, 0x12FFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x13000, 0x1342E, .p.property = IDNA_P_PVALID },
+ { 0x1342F, 0x1CFFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D000, 0x1D0F5, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D0F6, 0x1D0FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D100, 0x1D126, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D127, 0x1D128, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D129, 0x1D1DD, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D1DE, 0x1D1FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D200, 0x1D245, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D246, 0x1D2FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D300, 0x1D356, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D357, 0x1D35F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D360, 0x1D371, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D372, 0x1D3FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D400, 0x1D454, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D455, 0x1D455, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D456, 0x1D49C, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D49D, 0x1D49D, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D49E, 0x1D49F, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D4A0, 0x1D4A1, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D4A2, 0x1D4A2, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D4A3, 0x1D4A4, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D4A5, 0x1D4A6, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D4A7, 0x1D4A8, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D4A9, 0x1D4AC, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D4AD, 0x1D4AD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D4AE, 0x1D4B9, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D4BA, 0x1D4BA, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D4BB, 0x1D4BB, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D4BC, 0x1D4BC, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D4BD, 0x1D4C3, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D4C4, 0x1D4C4, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D4C5, 0x1D505, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D506, 0x1D506, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D507, 0x1D50A, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D50B, 0x1D50C, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D50D, 0x1D514, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D515, 0x1D515, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D516, 0x1D51C, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D51D, 0x1D51D, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D51E, 0x1D539, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D53A, 0x1D53A, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D53B, 0x1D53E, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D53F, 0x1D53F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D540, 0x1D544, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D545, 0x1D545, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D546, 0x1D546, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D547, 0x1D549, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D54A, 0x1D550, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D551, 0x1D551, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D552, 0x1D6A5, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D6A6, 0x1D6A7, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D6A8, 0x1D7CB, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D7CC, 0x1D7CD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1D7CE, 0x1D7FF, .p.property = IDNA_P_DISALLOWED },
+ { 0x1D800, 0x1EFFF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F000, 0x1F02B, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F02C, 0x1F02F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F030, 0x1F093, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F094, 0x1F0FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F100, 0x1F10A, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F10B, 0x1F10F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F110, 0x1F12E, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F12F, 0x1F130, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F131, 0x1F131, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F132, 0x1F13C, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F13D, 0x1F13D, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F13E, 0x1F13E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F13F, 0x1F13F, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F140, 0x1F141, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F142, 0x1F142, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F143, 0x1F145, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F146, 0x1F146, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F147, 0x1F149, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F14A, 0x1F14E, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F14F, 0x1F156, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F157, 0x1F157, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F158, 0x1F15E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F15F, 0x1F15F, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F160, 0x1F178, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F179, 0x1F179, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F17A, 0x1F17A, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F17B, 0x1F17C, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F17D, 0x1F17E, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F17F, 0x1F17F, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F180, 0x1F189, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F18A, 0x1F18D, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F18E, 0x1F18F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F190, 0x1F190, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F191, 0x1F1FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F200, 0x1F200, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F201, 0x1F20F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F210, 0x1F231, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F232, 0x1F23F, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1F240, 0x1F248, .p.property = IDNA_P_DISALLOWED },
+ { 0x1F249, 0x1FFFD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x1FFFE, 0x1FFFF, .p.property = IDNA_P_DISALLOWED },
+ { 0x20000, 0x2A6D6, .p.property = IDNA_P_PVALID },
+ { 0x2A6D7, 0x2A6FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2A700, 0x2B734, .p.property = IDNA_P_PVALID },
+ { 0x2B735, 0x2F7FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2F800, 0x2FA1D, .p.property = IDNA_P_DISALLOWED },
+ { 0x2FA1E, 0x2FFFD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x2FFFE, 0x2FFFF, .p.property = IDNA_P_DISALLOWED },
+ { 0x30000, 0x3FFFD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x3FFFE, 0x3FFFF, .p.property = IDNA_P_DISALLOWED },
+ { 0x40000, 0x4FFFD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x4FFFE, 0x4FFFF, .p.property = IDNA_P_DISALLOWED },
+ { 0x50000, 0x5FFFD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x5FFFE, 0x5FFFF, .p.property = IDNA_P_DISALLOWED },
+ { 0x60000, 0x6FFFD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x6FFFE, 0x6FFFF, .p.property = IDNA_P_DISALLOWED },
+ { 0x70000, 0x7FFFD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x7FFFE, 0x7FFFF, .p.property = IDNA_P_DISALLOWED },
+ { 0x80000, 0x8FFFD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x8FFFE, 0x8FFFF, .p.property = IDNA_P_DISALLOWED },
+ { 0x90000, 0x9FFFD, .p.property = IDNA_P_UNASSIGNED },
+ { 0x9FFFE, 0x9FFFF, .p.property = IDNA_P_DISALLOWED },
+ { 0xA0000, 0xAFFFD, .p.property = IDNA_P_UNASSIGNED },
+ { 0xAFFFE, 0xAFFFF, .p.property = IDNA_P_DISALLOWED },
+ { 0xB0000, 0xBFFFD, .p.property = IDNA_P_UNASSIGNED },
+ { 0xBFFFE, 0xBFFFF, .p.property = IDNA_P_DISALLOWED },
+ { 0xC0000, 0xCFFFD, .p.property = IDNA_P_UNASSIGNED },
+ { 0xCFFFE, 0xCFFFF, .p.property = IDNA_P_DISALLOWED },
+ { 0xD0000, 0xDFFFD, .p.property = IDNA_P_UNASSIGNED },
+ { 0xDFFFE, 0xDFFFF, .p.property = IDNA_P_DISALLOWED },
+ { 0xE0000, 0xE0000, .p.property = IDNA_P_UNASSIGNED },
+ { 0xE0001, 0xE0001, .p.property = IDNA_P_DISALLOWED },
+ { 0xE0002, 0xE001F, .p.property = IDNA_P_UNASSIGNED },
+ { 0xE0020, 0xE007F, .p.property = IDNA_P_DISALLOWED },
+ { 0xE0080, 0xE00FF, .p.property = IDNA_P_UNASSIGNED },
+ { 0xE0100, 0xE01EF, .p.property = IDNA_P_DISALLOWED },
+ { 0xE01F0, 0xEFFFD, .p.property = IDNA_P_UNASSIGNED },
+ { 0xEFFFE, 0x10FFFF, .p.property = IDNA_P_DISALLOWED },
+ { 0, 0, .p.property = 0}
+};
+
+idna_table idna_joiningtype[] = {
+ { 0x0640 , 0x0640 , .p.jt = IDNA_UNICODE_JT_C },
+ { 0x07FA , 0x07FA , .p.jt = IDNA_UNICODE_JT_C },
+ { 0x200D , 0x200D , .p.jt = IDNA_UNICODE_JT_C },
+ { 0x0626 , 0x0626 , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x0628 , 0x0628 , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x062A, 0x062E , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x0633, 0x063F , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x0641, 0x0647 , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x0649, 0x064A , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x066E, 0x066F , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x0678, 0x0687 , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x069A, 0x06BF , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x06C1, 0x06C2 , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x06CC , 0x06CC , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x06CE , 0x06CE , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x06D0, 0x06D1 , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x06FA, 0x06FC , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x06FF , 0x06FF , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x0712, 0x0714 , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x071A, 0x071D , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x071F, 0x0727 , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x0729 , 0x0729 , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x072B , 0x072B , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x072D, 0x072E , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x074E, 0x0758 , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x075C, 0x076A , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x076D, 0x0770 , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x0772 , 0x0772 , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x0775, 0x0777 , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x077A, 0x077F , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x07CA, 0x07EA , .p.jt = IDNA_UNICODE_JT_D },
+ { 0x0622, 0x0625 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x0627 , 0x0627 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x0629 , 0x0629 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x062F, 0x0632 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x0648 , 0x0648 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x0671, 0x0673 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x0675, 0x0677 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x0688, 0x0699 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x06C0 , 0x06C0 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x06C3, 0x06CB , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x06CD , 0x06CD , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x06CF , 0x06CF , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x06D2, 0x06D3 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x06D5 , 0x06D5 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x06EE, 0x06EF , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x0710 , 0x0710 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x0715, 0x0719 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x071E , 0x071E , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x0728 , 0x0728 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x072A , 0x072A , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x072C , 0x072C , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x072F , 0x072F , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x074D , 0x074D , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x0759, 0x075B , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x076B, 0x076C , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x0771 , 0x0771 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x0773, 0x0774 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x0778, 0x0779 , .p.jt = IDNA_UNICODE_JT_R },
+ { 0x00AD , 0x00AD , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0300, 0x036F , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0483, 0x0487 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0488, 0x0489 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0591, 0x05BD , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x05BF , 0x05BF , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x05C1, 0x05C2 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x05C4, 0x05C5 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x05C7 , 0x05C7 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0610, 0x061A , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x064B, 0x065E , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0670 , 0x0670 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x06D6, 0x06DC , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x06DE , 0x06DE , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x06DF, 0x06E4 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x06E7, 0x06E8 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x06EA, 0x06ED , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x070F , 0x070F , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0711 , 0x0711 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0730, 0x074A , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x07A6, 0x07B0 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x07EB, 0x07F3 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0816, 0x0819 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x081B, 0x0823 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0825, 0x0827 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0829, 0x082D , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0900, 0x0902 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x093C , 0x093C , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0941, 0x0948 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x094D , 0x094D , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0951, 0x0955 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0962, 0x0963 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0981 , 0x0981 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x09BC , 0x09BC , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x09C1, 0x09C4 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x09CD , 0x09CD , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x09E2, 0x09E3 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0A01, 0x0A02 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0A3C , 0x0A3C , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0A41, 0x0A42 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0A47, 0x0A48 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0A4B, 0x0A4D , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0A51 , 0x0A51 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0A70, 0x0A71 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0A75 , 0x0A75 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0A81, 0x0A82 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0ABC , 0x0ABC , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0AC1, 0x0AC5 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0AC7, 0x0AC8 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0ACD , 0x0ACD , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0AE2, 0x0AE3 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0B01 , 0x0B01 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0B3C , 0x0B3C , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0B3F , 0x0B3F , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0B41, 0x0B44 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0B4D , 0x0B4D , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0B56 , 0x0B56 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0B62, 0x0B63 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0B82 , 0x0B82 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0BC0 , 0x0BC0 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0BCD , 0x0BCD , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0C3E, 0x0C40 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0C46, 0x0C48 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0C4A, 0x0C4D , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0C55, 0x0C56 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0C62, 0x0C63 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0CBC , 0x0CBC , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0CBF , 0x0CBF , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0CC6 , 0x0CC6 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0CCC, 0x0CCD , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0CE2, 0x0CE3 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0D41, 0x0D44 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0D4D , 0x0D4D , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0D62, 0x0D63 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0DCA , 0x0DCA , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0DD2, 0x0DD4 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0DD6 , 0x0DD6 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0E31 , 0x0E31 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0E34, 0x0E3A , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0E47, 0x0E4E , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0EB1 , 0x0EB1 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0EB4, 0x0EB9 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0EBB, 0x0EBC , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0EC8, 0x0ECD , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0F18, 0x0F19 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0F35 , 0x0F35 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0F37 , 0x0F37 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0F39 , 0x0F39 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0F71, 0x0F7E , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0F80, 0x0F84 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0F86, 0x0F87 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0F90, 0x0F97 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0F99, 0x0FBC , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x0FC6 , 0x0FC6 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x102D, 0x1030 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1032, 0x1037 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1039, 0x103A , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x103D, 0x103E , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1058, 0x1059 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x105E, 0x1060 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1071, 0x1074 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1082 , 0x1082 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1085, 0x1086 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x108D , 0x108D , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x109D , 0x109D , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x135F , 0x135F , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1712, 0x1714 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1732, 0x1734 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1752, 0x1753 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1772, 0x1773 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x17B4, 0x17B5 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x17B7, 0x17BD , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x17C6 , 0x17C6 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x17C9, 0x17D3 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x17DD , 0x17DD , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x180B, 0x180D , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x18A9 , 0x18A9 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1920, 0x1922 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1927, 0x1928 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1932 , 0x1932 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1939, 0x193B , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1A17, 0x1A18 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1A56 , 0x1A56 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1A58, 0x1A5E , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1A60 , 0x1A60 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1A62 , 0x1A62 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1A65, 0x1A6C , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1A73, 0x1A7C , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1A7F , 0x1A7F , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1B00, 0x1B03 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1B34 , 0x1B34 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1B36, 0x1B3A , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1B3C , 0x1B3C , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1B42 , 0x1B42 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1B6B, 0x1B73 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1B80, 0x1B81 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1BA2, 0x1BA5 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1BA8, 0x1BA9 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1C2C, 0x1C33 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1C36, 0x1C37 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1CD0, 0x1CD2 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1CD4, 0x1CE0 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1CE2, 0x1CE8 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1CED , 0x1CED , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1DC0, 0x1DE6 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1DFD, 0x1DFF , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x200B , 0x200B , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x200E, 0x200F , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x202A, 0x202E , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x2060, 0x2064 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x206A, 0x206F , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x20D0, 0x20DC , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x20DD, 0x20E0 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x20E1 , 0x20E1 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x20E2, 0x20E4 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x20E5, 0x20F0 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x2CEF, 0x2CF1 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x2DE0, 0x2DFF , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x302A, 0x302F , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x3099, 0x309A , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xA66F , 0xA66F , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xA670, 0xA672 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xA67C, 0xA67D , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xA6F0, 0xA6F1 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xA802 , 0xA802 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xA806 , 0xA806 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xA80B , 0xA80B , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xA825, 0xA826 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xA8C4 , 0xA8C4 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xA8E0, 0xA8F1 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xA926, 0xA92D , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xA947, 0xA951 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xA980, 0xA982 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xA9B3 , 0xA9B3 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xA9B6, 0xA9B9 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xA9BC , 0xA9BC , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xAA29, 0xAA2E , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xAA31, 0xAA32 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xAA35, 0xAA36 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xAA43 , 0xAA43 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xAA4C , 0xAA4C , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xAAB0 , 0xAAB0 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xAAB2, 0xAAB4 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xAAB7, 0xAAB8 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xAABE, 0xAABF , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xAAC1 , 0xAAC1 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xABE5 , 0xABE5 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xABE8 , 0xABE8 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xABED , 0xABED , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xFB1E , 0xFB1E , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xFE00, 0xFE0F , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xFE20, 0xFE26 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xFEFF , 0xFEFF , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xFFF9, 0xFFFB , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x101FD , 0x101FD , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x10A01, 0x10A03 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x10A05, 0x10A06 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x10A0C, 0x10A0F , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x10A38, 0x10A3A , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x10A3F , 0x10A3F , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x11080, 0x11081 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x110B3, 0x110B6 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x110B9, 0x110BA , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x110BD , 0x110BD , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1D167, 0x1D169 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1D173, 0x1D17A , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1D17B, 0x1D182 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1D185, 0x1D18B , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1D1AA, 0x1D1AD , .p.jt = IDNA_UNICODE_JT_T },
+ { 0x1D242, 0x1D244 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xE0001 , 0xE0001 , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xE0020, 0xE007F , .p.jt = IDNA_UNICODE_JT_T },
+ { 0xE0100, 0xE01EF , .p.jt = IDNA_UNICODE_JT_T },
+ { 0, 0, .p.jt = 0}
+};
+#endif