h*      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                   0.6.0!(c) 2020 Andrew Lelechenko (c) 2020 Composewell Technologies BSD-3-Clausestreamly@composewell.com experimentalGHC Safe-Inferred %&<E  unicode-data!lookupBit addr byteIndex bitIndex. looks up the bit stored in the byte at index  byteIndex at the bit index bitIndex( using a bitmap starting at the address addr5. The caller must make sure that the byte at address (addr + byteIndex) is legally accessible memory.  unicode-datalookupWord8AsInt addr index looks up for the index-th 8%-bits word in the bitmap starting at addr, then convert it to an .The caller must make sure that:ceiling (addr + (n * 8)) is legally accessible . unicode-datalookupWord32# addr index looks up for the index+-th 32-bits word in the bitmap starting at addr, then convert it to a .The caller must make sure that:ceiling (addr + (n * 32)) is legally accessible .  unicode-dataBitmap address unicode-data Word index unicode-dataResulting word as  unicode-dataBitmap address unicode-data Word index unicode-dataResulting word as  unicode-dataBitmap address unicode-data Word index unicode-dataResulting word as  unicode-dataBitmap address unicode-data Word index unicode-dataResulting word as  unicode-dataBitmap address unicode-data Word index unicode-dataResulting word  2(c) 2022 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<Z unicode-dataUnicode  'https://www.unicode.org/glossary/#blockblock.There is a total of 328 blocks. unicode-dataU+0000..U+007F: Basic Latin. unicode-dataU+0080..U+00FF: Latin-1 Supplement. unicode-dataU+0100..U+017F: Latin Extended-A. unicode-dataU+0180..U+024F: Latin Extended-B. unicode-dataU+0250..U+02AF: IPA Extensions. unicode-dataU+02B0..U+02FF: Spacing Modifier Letters. unicode-dataU+0300..U+036F: Combining Diacritical Marks. unicode-dataU+0370..U+03FF: Greek and Coptic. unicode-dataU+0400..U+04FF : Cyrillic. unicode-dataU+0500..U+052F: Cyrillic Supplement. unicode-dataU+0530..U+058F : Armenian. unicode-dataU+0590..U+05FF : Hebrew. unicode-dataU+0600..U+06FF : Arabic.  unicode-dataU+0700..U+074F : Syriac.! unicode-dataU+0750..U+077F: Arabic Supplement." unicode-dataU+0780..U+07BF : Thaana.# unicode-dataU+07C0..U+07FF: NKo.$ unicode-dataU+0800..U+083F : Samaritan.% unicode-dataU+0840..U+085F : Mandaic.& unicode-dataU+0860..U+086F: Syriac Supplement.' unicode-dataU+0870..U+089F: Arabic Extended-B.( unicode-dataU+08A0..U+08FF: Arabic Extended-A.) unicode-dataU+0900..U+097F : Devanagari.* unicode-dataU+0980..U+09FF : Bengali.+ unicode-dataU+0A00..U+0A7F : Gurmukhi., unicode-dataU+0A80..U+0AFF : Gujarati.- unicode-dataU+0B00..U+0B7F: Oriya.. unicode-dataU+0B80..U+0BFF: Tamil./ unicode-dataU+0C00..U+0C7F : Telugu.0 unicode-dataU+0C80..U+0CFF : Kannada.1 unicode-dataU+0D00..U+0D7F : Malayalam.2 unicode-dataU+0D80..U+0DFF : Sinhala.3 unicode-dataU+0E00..U+0E7F: Thai.4 unicode-dataU+0E80..U+0EFF: Lao.5 unicode-dataU+0F00..U+0FFF : Tibetan.6 unicode-dataU+1000..U+109F : Myanmar.7 unicode-dataU+10A0..U+10FF : Georgian.8 unicode-dataU+1100..U+11FF: Hangul Jamo.9 unicode-dataU+1200..U+137F : Ethiopic.: unicode-dataU+1380..U+139F: Ethiopic Supplement.; unicode-dataU+13A0..U+13FF : Cherokee.< unicode-dataU+1400..U+167F(: Unified Canadian Aboriginal Syllabics.= unicode-dataU+1680..U+169F: Ogham.> unicode-dataU+16A0..U+16FF: Runic.? unicode-dataU+1700..U+171F : Tagalog.@ unicode-dataU+1720..U+173F : Hanunoo.A unicode-dataU+1740..U+175F: Buhid.B unicode-dataU+1760..U+177F : Tagbanwa.C unicode-dataU+1780..U+17FF: Khmer.D unicode-dataU+1800..U+18AF : Mongolian.E unicode-dataU+18B0..U+18FF1: Unified Canadian Aboriginal Syllabics Extended.F unicode-dataU+1900..U+194F: Limbu.G unicode-dataU+1950..U+197F : Tai Le.H unicode-dataU+1980..U+19DF: New Tai Lue.I unicode-dataU+19E0..U+19FF: Khmer Symbols.J unicode-dataU+1A00..U+1A1F : Buginese.K unicode-dataU+1A20..U+1AAF : Tai Tham.L unicode-dataU+1AB0..U+1AFF': Combining Diacritical Marks Extended.M unicode-dataU+1B00..U+1B7F : Balinese.N unicode-dataU+1B80..U+1BBF : Sundanese.O unicode-dataU+1BC0..U+1BFF: Batak.P unicode-dataU+1C00..U+1C4F : Lepcha.Q unicode-dataU+1C50..U+1C7F : Ol Chiki.R unicode-dataU+1C80..U+1C8F: Cyrillic Extended-C.S unicode-dataU+1C90..U+1CBF: Georgian Extended.T unicode-dataU+1CC0..U+1CCF: Sundanese Supplement.U unicode-dataU+1CD0..U+1CFF: Vedic Extensions.V unicode-dataU+1D00..U+1D7F: Phonetic Extensions.W unicode-dataU+1D80..U+1DBF!: Phonetic Extensions Supplement.X unicode-dataU+1DC0..U+1DFF): Combining Diacritical Marks Supplement.Y unicode-dataU+1E00..U+1EFF: Latin Extended Additional.Z unicode-dataU+1F00..U+1FFF: Greek Extended.[ unicode-dataU+2000..U+206F: General Punctuation.\ unicode-dataU+2070..U+209F: Superscripts and Subscripts.] unicode-dataU+20A0..U+20CF: Currency Symbols.^ unicode-dataU+20D0..U+20FF*: Combining Diacritical Marks for Symbols._ unicode-dataU+2100..U+214F: Letterlike Symbols.` unicode-dataU+2150..U+218F: Number Forms.a unicode-dataU+2190..U+21FF : Arrows.b unicode-dataU+2200..U+22FF: Mathematical Operators.c unicode-dataU+2300..U+23FF: Miscellaneous Technical.d unicode-dataU+2400..U+243F: Control Pictures.e unicode-dataU+2440..U+245F : Optical Character Recognition.f unicode-dataU+2460..U+24FF: Enclosed Alphanumerics.g unicode-dataU+2500..U+257F: Box Drawing.h unicode-dataU+2580..U+259F: Block Elements.i unicode-dataU+25A0..U+25FF: Geometric Shapes.j unicode-dataU+2600..U+26FF: Miscellaneous Symbols.k unicode-dataU+2700..U+27BF : Dingbats.l unicode-dataU+27C0..U+27EF': Miscellaneous Mathematical Symbols-A.m unicode-dataU+27F0..U+27FF: Supplemental Arrows-A.n unicode-dataU+2800..U+28FF: Braille Patterns.o unicode-dataU+2900..U+297F: Supplemental Arrows-B.p unicode-dataU+2980..U+29FF': Miscellaneous Mathematical Symbols-B.q unicode-dataU+2A00..U+2AFF&: Supplemental Mathematical Operators.r unicode-dataU+2B00..U+2BFF#: Miscellaneous Symbols and Arrows.s unicode-dataU+2C00..U+2C5F : Glagolitic.t unicode-dataU+2C60..U+2C7F: Latin Extended-C.u unicode-dataU+2C80..U+2CFF : Coptic.v unicode-dataU+2D00..U+2D2F: Georgian Supplement.w unicode-dataU+2D30..U+2D7F : Tifinagh.x unicode-dataU+2D80..U+2DDF: Ethiopic Extended.y unicode-dataU+2DE0..U+2DFF: Cyrillic Extended-A.z unicode-dataU+2E00..U+2E7F: Supplemental Punctuation.{ unicode-dataU+2E80..U+2EFF: CJK Radicals Supplement.| unicode-dataU+2F00..U+2FDF: Kangxi Radicals.} unicode-dataU+2FF0..U+2FFF%: Ideographic Description Characters.~ unicode-dataU+3000..U+303F: CJK Symbols and Punctuation. unicode-dataU+3040..U+309F : Hiragana. unicode-dataU+30A0..U+30FF : Katakana. unicode-dataU+3100..U+312F : Bopomofo. unicode-dataU+3130..U+318F: Hangul Compatibility Jamo. unicode-dataU+3190..U+319F : Kanbun. unicode-dataU+31A0..U+31BF: Bopomofo Extended. unicode-dataU+31C0..U+31EF: CJK Strokes. unicode-dataU+31F0..U+31FF: Katakana Phonetic Extensions. unicode-dataU+3200..U+32FF": Enclosed CJK Letters and Months. unicode-dataU+3300..U+33FF: CJK Compatibility. unicode-dataU+3400..U+4DBF%: CJK Unified Ideographs Extension A. unicode-dataU+4DC0..U+4DFF: Yijing Hexagram Symbols. unicode-dataU+4E00..U+9FFF: CJK Unified Ideographs. unicode-dataU+A000..U+A48F: Yi Syllables. unicode-dataU+A490..U+A4CF: Yi Radicals. unicode-dataU+A4D0..U+A4FF: Lisu. unicode-dataU+A500..U+A63F: Vai. unicode-dataU+A640..U+A69F: Cyrillic Extended-B. unicode-dataU+A6A0..U+A6FF: Bamum. unicode-dataU+A700..U+A71F: Modifier Tone Letters. unicode-dataU+A720..U+A7FF: Latin Extended-D. unicode-dataU+A800..U+A82F: Syloti Nagri. unicode-dataU+A830..U+A83F: Common Indic Number Forms. unicode-dataU+A840..U+A87F : Phags-pa. unicode-dataU+A880..U+A8DF : Saurashtra. unicode-dataU+A8E0..U+A8FF: Devanagari Extended. unicode-dataU+A900..U+A92F : Kayah Li. unicode-dataU+A930..U+A95F : Rejang. unicode-dataU+A960..U+A97F: Hangul Jamo Extended-A. unicode-dataU+A980..U+A9DF : Javanese. unicode-dataU+A9E0..U+A9FF: Myanmar Extended-B. unicode-dataU+AA00..U+AA5F: Cham. unicode-dataU+AA60..U+AA7F: Myanmar Extended-A. unicode-dataU+AA80..U+AADF : Tai Viet. unicode-dataU+AAE0..U+AAFF: Meetei Mayek Extensions. unicode-dataU+AB00..U+AB2F: Ethiopic Extended-A. unicode-dataU+AB30..U+AB6F: Latin Extended-E. unicode-dataU+AB70..U+ABBF: Cherokee Supplement. unicode-dataU+ABC0..U+ABFF: Meetei Mayek. unicode-dataU+AC00..U+D7AF: Hangul Syllables. unicode-dataU+D7B0..U+D7FF: Hangul Jamo Extended-B. unicode-dataU+D800..U+DB7F: High Surrogates. unicode-dataU+DB80..U+DBFF: High Private Use Surrogates. unicode-dataU+DC00..U+DFFF: Low Surrogates. unicode-dataU+E000..U+F8FF: Private Use Area. unicode-dataU+F900..U+FAFF: CJK Compatibility Ideographs. unicode-dataU+FB00..U+FB4F : Alphabetic Presentation Forms. unicode-dataU+FB50..U+FDFF: Arabic Presentation Forms-A. unicode-dataU+FE00..U+FE0F: Variation Selectors. unicode-dataU+FE10..U+FE1F: Vertical Forms. unicode-dataU+FE20..U+FE2F: Combining Half Marks. unicode-dataU+FE30..U+FE4F: CJK Compatibility Forms. unicode-dataU+FE50..U+FE6F: Small Form Variants. unicode-dataU+FE70..U+FEFF: Arabic Presentation Forms-B. unicode-dataU+FF00..U+FFEF : Halfwidth and Fullwidth Forms. unicode-dataU+FFF0..U+FFFF : Specials. unicode-dataU+10000..U+1007F: Linear B Syllabary. unicode-dataU+10080..U+100FF: Linear B Ideograms. unicode-dataU+10100..U+1013F: Aegean Numbers. unicode-dataU+10140..U+1018F: Ancient Greek Numbers. unicode-dataU+10190..U+101CF: Ancient Symbols. unicode-dataU+101D0..U+101FF: Phaistos Disc. unicode-dataU+10280..U+1029F : Lycian. unicode-dataU+102A0..U+102DF : Carian. unicode-dataU+102E0..U+102FF: Coptic Epact Numbers. unicode-dataU+10300..U+1032F : Old Italic. unicode-dataU+10330..U+1034F : Gothic. unicode-dataU+10350..U+1037F : Old Permic. unicode-dataU+10380..U+1039F : Ugaritic. unicode-dataU+103A0..U+103DF: Old Persian. unicode-dataU+10400..U+1044F : Deseret. unicode-dataU+10450..U+1047F : Shavian. unicode-dataU+10480..U+104AF : Osmanya. unicode-dataU+104B0..U+104FF: Osage. unicode-dataU+10500..U+1052F : Elbasan. unicode-dataU+10530..U+1056F: Caucasian Albanian. unicode-dataU+10570..U+105BF : Vithkuqi. unicode-dataU+10600..U+1077F : Linear A. unicode-dataU+10780..U+107BF: Latin Extended-F. unicode-dataU+10800..U+1083F: Cypriot Syllabary. unicode-dataU+10840..U+1085F: Imperial Aramaic. unicode-dataU+10860..U+1087F : Palmyrene. unicode-dataU+10880..U+108AF : Nabataean. unicode-dataU+108E0..U+108FF : Hatran. unicode-dataU+10900..U+1091F : Phoenician. unicode-dataU+10920..U+1093F : Lydian. unicode-dataU+10980..U+1099F: Meroitic Hieroglyphs. unicode-dataU+109A0..U+109FF: Meroitic Cursive. unicode-dataU+10A00..U+10A5F : Kharoshthi. unicode-dataU+10A60..U+10A7F: Old South Arabian. unicode-dataU+10A80..U+10A9F: Old North Arabian. unicode-dataU+10AC0..U+10AFF : Manichaean. unicode-dataU+10B00..U+10B3F : Avestan. unicode-dataU+10B40..U+10B5F: Inscriptional Parthian. unicode-dataU+10B60..U+10B7F: Inscriptional Pahlavi. unicode-dataU+10B80..U+10BAF: Psalter Pahlavi. unicode-dataU+10C00..U+10C4F : Old Turkic. unicode-dataU+10C80..U+10CFF: Old Hungarian. unicode-dataU+10D00..U+10D3F: Hanifi Rohingya. unicode-dataU+10E60..U+10E7F: Rumi Numeral Symbols. unicode-dataU+10E80..U+10EBF : Yezidi. unicode-dataU+10EC0..U+10EFF: Arabic Extended-C. unicode-dataU+10F00..U+10F2F: Old Sogdian. unicode-dataU+10F30..U+10F6F : Sogdian. unicode-dataU+10F70..U+10FAF : Old Uyghur. unicode-dataU+10FB0..U+10FDF : Chorasmian. unicode-dataU+10FE0..U+10FFF : Elymaic. unicode-dataU+11000..U+1107F : Brahmi. unicode-dataU+11080..U+110CF : Kaithi. unicode-dataU+110D0..U+110FF: Sora Sompeng. unicode-dataU+11100..U+1114F : Chakma. unicode-dataU+11150..U+1117F : Mahajani. unicode-dataU+11180..U+111DF : Sharada. unicode-dataU+111E0..U+111FF: Sinhala Archaic Numbers. unicode-dataU+11200..U+1124F : Khojki. unicode-dataU+11280..U+112AF : Multani. unicode-dataU+112B0..U+112FF : Khudawadi. unicode-dataU+11300..U+1137F : Grantha. unicode-dataU+11400..U+1147F: Newa. unicode-dataU+11480..U+114DF : Tirhuta. unicode-dataU+11580..U+115FF : Siddham. unicode-dataU+11600..U+1165F: Modi. unicode-dataU+11660..U+1167F: Mongolian Supplement. unicode-dataU+11680..U+116CF: Takri. unicode-dataU+11700..U+1174F: Ahom. unicode-dataU+11800..U+1184F: Dogra. unicode-dataU+118A0..U+118FF: Warang Citi. unicode-dataU+11900..U+1195F: Dives Akuru. unicode-dataU+119A0..U+119FF: Nandinagari. unicode-dataU+11A00..U+11A4F: Zanabazar Square. unicode-dataU+11A50..U+11AAF : Soyombo. unicode-dataU+11AB0..U+11ABF3: Unified Canadian Aboriginal Syllabics Extended-A. unicode-dataU+11AC0..U+11AFF: Pau Cin Hau. unicode-dataU+11B00..U+11B5F: Devanagari Extended-A. unicode-dataU+11C00..U+11C6F : Bhaiksuki. unicode-dataU+11C70..U+11CBF : Marchen. unicode-dataU+11D00..U+11D5F: Masaram Gondi. unicode-dataU+11D60..U+11DAF: Gunjala Gondi. unicode-dataU+11EE0..U+11EFF : Makasar. unicode-dataU+11F00..U+11F5F: Kawi. unicode-dataU+11FB0..U+11FBF: Lisu Supplement. unicode-dataU+11FC0..U+11FFF: Tamil Supplement. unicode-dataU+12000..U+123FF : Cuneiform. unicode-dataU+12400..U+1247F$: Cuneiform Numbers and Punctuation. unicode-dataU+12480..U+1254F: Early Dynastic Cuneiform. unicode-dataU+12F90..U+12FFF: Cypro-Minoan. unicode-dataU+13000..U+1342F: Egyptian Hieroglyphs. unicode-dataU+13430..U+1345F&: Egyptian Hieroglyph Format Controls. unicode-dataU+14400..U+1467F: Anatolian Hieroglyphs. unicode-dataU+16800..U+16A3F: Bamum Supplement. unicode-dataU+16A40..U+16A6F: Mro. unicode-dataU+16A70..U+16ACF : Tangsa. unicode-dataU+16AD0..U+16AFF : Bassa Vah. unicode-dataU+16B00..U+16B8F: Pahawh Hmong. unicode-dataU+16E40..U+16E9F: Medefaidrin. unicode-dataU+16F00..U+16F9F: Miao. unicode-dataU+16FE0..U+16FFF&: Ideographic Symbols and Punctuation. unicode-dataU+17000..U+187FF : Tangut. unicode-dataU+18800..U+18AFF: Tangut Components. unicode-dataU+18B00..U+18CFF: Khitan Small Script. unicode-dataU+18D00..U+18D7F: Tangut Supplement. unicode-dataU+1AFF0..U+1AFFF: Kana Extended-B. unicode-dataU+1B000..U+1B0FF: Kana Supplement. unicode-dataU+1B100..U+1B12F: Kana Extended-A. unicode-dataU+1B130..U+1B16F: Small Kana Extension. unicode-dataU+1B170..U+1B2FF: Nushu. unicode-dataU+1BC00..U+1BC9F : Duployan. unicode-dataU+1BCA0..U+1BCAF: Shorthand Format Controls. unicode-dataU+1CF00..U+1CFCF: Znamenny Musical Notation. unicode-dataU+1D000..U+1D0FF: Byzantine Musical Symbols. unicode-dataU+1D100..U+1D1FF: Musical Symbols. unicode-dataU+1D200..U+1D24F!: Ancient Greek Musical Notation. unicode-dataU+1D2C0..U+1D2DF: Kaktovik Numerals. unicode-dataU+1D2E0..U+1D2FF: Mayan Numerals. unicode-dataU+1D300..U+1D35F: Tai Xuan Jing Symbols. unicode-dataU+1D360..U+1D37F: Counting Rod Numerals. unicode-dataU+1D400..U+1D7FF$: Mathematical Alphanumeric Symbols. unicode-dataU+1D800..U+1DAAF: Sutton SignWriting. unicode-dataU+1DF00..U+1DFFF: Latin Extended-G. unicode-dataU+1E000..U+1E02F: Glagolitic Supplement. unicode-dataU+1E030..U+1E08F: Cyrillic Extended-D. unicode-dataU+1E100..U+1E14F: Nyiakeng Puachue Hmong. unicode-dataU+1E290..U+1E2BF: Toto. unicode-dataU+1E2C0..U+1E2FF : Wancho. unicode-dataU+1E4D0..U+1E4FF: Nag Mundari. unicode-dataU+1E7E0..U+1E7FF: Ethiopic Extended-B. unicode-dataU+1E800..U+1E8DF: Mende Kikakui. unicode-dataU+1E900..U+1E95F: Adlam. unicode-dataU+1EC70..U+1ECBF: Indic Siyaq Numbers. unicode-dataU+1ED00..U+1ED4F: Ottoman Siyaq Numbers. unicode-dataU+1EE00..U+1EEFF): Arabic Mathematical Alphabetic Symbols. unicode-dataU+1F000..U+1F02F: Mahjong Tiles. unicode-dataU+1F030..U+1F09F: Domino Tiles. unicode-dataU+1F0A0..U+1F0FF: Playing Cards. unicode-dataU+1F100..U+1F1FF#: Enclosed Alphanumeric Supplement. unicode-dataU+1F200..U+1F2FF": Enclosed Ideographic Supplement. unicode-dataU+1F300..U+1F5FF(: Miscellaneous Symbols and Pictographs. unicode-dataU+1F600..U+1F64F : Emoticons. unicode-dataU+1F650..U+1F67F: Ornamental Dingbats. unicode-dataU+1F680..U+1F6FF: Transport and Map Symbols. unicode-dataU+1F700..U+1F77F: Alchemical Symbols. unicode-dataU+1F780..U+1F7FF: Geometric Shapes Extended. unicode-dataU+1F800..U+1F8FF: Supplemental Arrows-C. unicode-dataU+1F900..U+1F9FF': Supplemental Symbols and Pictographs. unicode-dataU+1FA00..U+1FA6F: Chess Symbols. unicode-dataU+1FA70..U+1FAFF%: Symbols and Pictographs Extended-A. unicode-dataU+1FB00..U+1FBFF: Symbols for Legacy Computing. unicode-dataU+20000..U+2A6DF%: CJK Unified Ideographs Extension B. unicode-dataU+2A700..U+2B73F%: CJK Unified Ideographs Extension C. unicode-dataU+2B740..U+2B81F%: CJK Unified Ideographs Extension D. unicode-dataU+2B820..U+2CEAF%: CJK Unified Ideographs Extension E. unicode-dataU+2CEB0..U+2EBEF%: CJK Unified Ideographs Extension F. unicode-dataU+2EBF0..U+2EE5F%: CJK Unified Ideographs Extension I. unicode-dataU+2F800..U+2FA1F*: CJK Compatibility Ideographs Supplement. unicode-dataU+30000..U+3134F%: CJK Unified Ideographs Extension G. unicode-dataU+31350..U+323AF%: CJK Unified Ideographs Extension H. unicode-dataU+E0000..U+E007F: Tags. unicode-dataU+E0100..U+E01EF!: Variation Selectors Supplement. unicode-dataU+F0000..U+FFFFF#: Supplementary Private Use Area-A. unicode-dataU+100000..U+10FFFF#: Supplementary Private Use Area-B. unicode-dataBlock definition&Undefined for values greater than 327.Returned value: Lower bound Upper bound#Name (null terminated ASCII string) unicode-data%Character block, if defined, else -1. !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~2(c) 2020 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred%&(<^ unicode-data!Block definition: range and name. unicode-dataRange unicode-dataName unicode-data Character  'https://www.unicode.org/glossary/#blockblock , if defined. unicode-dataBlock definition !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~2(c) 2022 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<c2(c) 2020 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<d;2(c) 2022 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<d2(c) 2020 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<k~ unicode-data/Selects Unicode character with a numeric value.Note:1 a character may have a numeric value but return  with the predicate  , because  only tests : some CJK characters are  and do have a numeric value.&isNumeric c == isJust (numericValue c) unicode-data*Numeric value of a character, if relevant.Note:1 a character may have a numeric value but return  with the predicate  , because  only tests : some CJK characters are  and do have a numeric value. unicode-data*Integer value of a character, if relevant.This is a special case of .Warning: There is a risk of integer overflow depending of the chosen concrete return type. As of Unicode 15.1 the results range from 0 to 1e16.minimum [v | v@Just{} <- integerValue <$> [minBound..]] :: Maybe IntegerJust 08maximum (integerValue <$> [minBound..]) :: Maybe IntegerJust 10000000000000000*integerValue '\x4EAC' :: Maybe Int64 -- OKJust 100000000000000006integerValue '\x4EAC' :: Maybe Int32 -- Will overflow!Just 1874919424 Therefore it is advised to use:  @.Note:1 A character may have a numeric value but return  with the predicate  , because  only tests : some CJK characters are  and do have a numeric value. unicode-dataSame a , but with upper case.intToDigiT <$> [0..15]"0123456789ABCDEF"    2(c) 2020 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<l32(c) 2021 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<o unicode-dataReturns 4 if a character is an identifier continue character. unicode-dataReturns 1 if a character is an identifier start character. unicode-dataReturns  if a character is an identifier continue character, using the NFKC modifications detailed in  8https://www.unicode.org/reports/tr31/#NFKC_Modifications UAX #31, 5.1. unicode-dataReturns  if a character is an identifier start character, using the NFKC modifications detailed in  8https://www.unicode.org/reports/tr31/#NFKC_Modifications UAX #31, 5.1. unicode-dataReturns . if a character is a pattern syntax character. unicode-dataReturns 2 if a character is a pattern whitespace character.2(c) 2022 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<p2(c) 2022 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<q62(c) 2022 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<q2(c) 2020 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<rr2(c) 2020 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<s2(c) 2020 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<s 2(c) 2020 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<tR!2(c) 2020 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<t"2(c) 2020 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<u#2(c) 2020 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<v,$2(c) 2020 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<}' unicode-dataMaximum codepoint satisfying  isSeparator unicode-dataMaximum codepoint satisfying isSpace unicode-dataMaximum codepoint satisfying isNumber unicode-dataMaximum codepoint satisfying isUpper unicode-dataMaximum codepoint satisfying isLower unicode-dataMaximum codepoint satisfying  isAlphaNum unicode-dataMaximum codepoint satisfying isLetter unicode-dataGeneral category Cn unicode-dataGeneral category Co unicode-dataGeneral category Cs unicode-dataGeneral category Cf unicode-dataGeneral category Cc unicode-dataGeneral category Zp unicode-dataGeneral category Zl unicode-dataGeneral category Zs unicode-dataGeneral category So unicode-dataGeneral category Sk unicode-dataGeneral category Sc unicode-dataGeneral category Sm unicode-dataGeneral category Po unicode-dataGeneral category Pf unicode-dataGeneral category Pi unicode-dataGeneral category Pe unicode-dataGeneral category Ps unicode-dataGeneral category Pd unicode-dataGeneral category Pc unicode-dataGeneral category No unicode-dataGeneral category Nl unicode-dataGeneral category Nd unicode-dataGeneral category Me unicode-dataGeneral category Mc unicode-dataGeneral category Mn unicode-dataGeneral category Lo unicode-dataGeneral category Lm unicode-dataGeneral category Lt unicode-dataGeneral category Ll unicode-dataGeneral category Lu unicode-datahttps://www.unicode.org/versions/Unicode15.0.0/ch02.pdf#G14527 2.4 @Code Points and Characters@ of the Unicode standard. unicode-dataGraphic.: defined by the following general categories: Letters (L): , , , , . Marks (M): , , . Numbers (N): , , .Punctuation (P): , , , , , , . Symbol (S): , , , . Separators: . unicode-dataFormat/: invisible but affects neighboring characters..Defined by the following general categories: , , . unicode-dataControl: usage defined by protocols or standards outside the Unicode Standard. Defined by the general category . unicode-data Private-use: usage defined by private agreement outside the Unicode Standard. Defined by the general category . unicode-data Surrogate": Permanently reserved for UTF-16. Defined by the general category . unicode-data Noncharacter: a code point that is permanently reserved for internal use (see definition D14 in the section  =https://www.unicode.org/versions/Unicode15.0.0/ch03.pdf#G22123.4 @Characters and Encoding@ of the Unicode Standard). Noncharacters consist of the values U+nFFFE and U+nFFFF (where n$ is from 0 to 10AA) and the values U+FDD0..U+FDEF.*They are a subset of the general category . unicode-data Reserved: any code point of the Unicode Standard that is reserved for future assignment (see definition D15 in the section  =https://www.unicode.org/versions/Unicode15.0.0/ch03.pdf#G22123.4 @Characters and Encoding@ of the Unicode Standard). Also known as an unassigned code point.*They are a subset of the general category . unicode-dataUnicode General Categories.!These classes are defined in the  http://www.unicode.org/reports/tr44/tr44-14.html#GC_Values_TableUnicode Character Database, part of the Unicode standard.Note: the classes must be in the same order they are listed in the Unicode Standard, because some functions (e.g. ) rely on the  instance. unicode-dataLu: Letter, Uppercase unicode-dataLl: Letter, Lowercase unicode-dataLt: Letter, Titlecase unicode-dataLm: Letter, Modifier unicode-dataLo: Letter, Other unicode-dataMn: Mark, Non-Spacing unicode-dataMc: Mark, Spacing Combining unicode-dataMe: Mark, Enclosing unicode-dataNd: Number, Decimal unicode-dataNl: Number, Letter unicode-dataNo: Number, Other unicode-dataPc: Punctuation, Connector unicode-dataPd: Punctuation, Dash unicode-dataPs: Punctuation, Open unicode-dataPe: Punctuation, Close unicode-dataPi: Punctuation, Initial quote unicode-dataPf: Punctuation, Final quote unicode-dataPo: Punctuation, Other unicode-dataSm: Symbol, Math unicode-dataSc: Symbol, Currency unicode-dataSk: Symbol, Modifier unicode-dataSo: Symbol, Other unicode-dataZs: Separator, Space unicode-dataZl: Separator, Line unicode-dataZp: Separator, Paragraph unicode-dataCc: Other, Control unicode-dataCf: Other, Format unicode-dataCs: Other, Surrogate unicode-dataCo: Other, Private Use unicode-dataCn: Other, Not Assigned unicode-dataAbbreviation of  used in the Unicode standard. unicode-data.The Unicode general category of the character.0This property is defined in the column 2 of the  UnicodeData table.This relies on the  instance of , which must remain in the same order as the categories are presented in the Unicode standard.>show (generalCategory c) == show (Data.Char.generalCategory c) unicode-data Returns the  of a character. unicode-dataReturns  for alphabetic Unicode characters (lower-case, upper-case and title-case letters, plus letters of caseless scripts and modifiers letters).Note: this function is not equivalent to ; / <:;* matches the following general categories: (Lu) (Ll) (Lt) (Lm) (Lo)whereas  matches: Uppercase /https://www.unicode.org/reports/tr44/#Uppercaseproperty Lowercase /https://www.unicode.org/reports/tr44/#Lowercaseproperty (Lt) (Lm) (Lo) (Nl)Other_Alphabetic 6https://www.unicode.org/reports/tr44/#Other_Alphabeticproperty unicode-data1Selects alphabetic or numeric Unicode characters.This function returns * if its argument has one of the following s, or  otherwise:&isAlphaNum c == Data.Char.isAlphaNum cNote:$ this function is incompatible with :isAlphabetic '\x345'TrueisAlphaNum '\x345'False unicode-dataSelects control characters, which are the non-printing characters of the Latin-1 subset of Unicode.This function returns  if its argument has the  .$isControl c == Data.Char.isControl c unicode-dataSelects Unicode mark characters, for example accents and the like, which combine with preceding characters.This function returns * if its argument has one of the following s, or  otherwise:isMark c == Data.Char.isMark c unicode-dataSelects printable Unicode characters (letters, numbers, marks, punctuation, symbols and spaces).This function returns * if its argument has one of the following s, or  otherwise: isPrint c == Data.Char.isPrint c unicode-dataSelects Unicode punctuation characters, including various kinds of connectors, brackets and quotes.This function returns * if its argument has one of the following s, or  otherwise:,isPunctuation c == Data.Char.isPunctuation c unicode-dataReturns ; for any whitespace characters, and the control characters \t, \n, \r, \f, \v.See:  1https://www.unicode.org/reports/tr44/#White_SpaceUnicode  White_Space.Note:  is not equivalent to =. " selects the same characters from isSpace plus the following:U+0085 NEXT LINE (NEL)U+2028 LINE SEPARATORU+2029 PARAGRAPH SEPARATOR unicode-data/Selects Unicode space and separator characters.This function returns * if its argument has one of the following s, or  otherwise:(isSeparator c == Data.Char.isSeparator c unicode-dataSelects Unicode symbol characters, including mathematical and currency symbols.This function returns * if its argument has one of the following s, or  otherwise: *  *  *  * "isSymbol c == Data.Char.isSymbol c unicode-dataReturns  for any  noncharacter.A  noncharacter is a code point that is permanently reserved for internal use (see definition D14 in the section  =https://www.unicode.org/versions/Unicode15.0.0/ch03.pdf#G22123.4 @Characters and Encoding@ of the Unicode Standard).$Noncharacters consist of the values U+nFFFE and U+nFFFF (where n$ is from 0 to 10AA) and the values U+FDD0..U+FDEF. unicode-dataFirst leading consonant jamo. unicode-data&Total count of leading consonant jamo. unicode-dataLast leading consonant jamo. unicode-dataFirst vowel jamo. unicode-dataTotal count of vowel jamo. unicode-dataLast vowel jamo. unicode-data"The first trailing consonant jamo. Note that  does not represent a valid T, it represents a missing T i.e. LV without a T. See comments under  . unicode-data'Total count of trailing consonant jamo. unicode-dataLast trailing consonant jamo. unicode-data#Total count of all jamo characters. $jamoNCount = jamoVCount * jamoTCount unicode-data5Codepoint of the first pre-composed Hangul character. unicode-data'Codepoint of the last Hangul character. unicode-dataDetermine if the given character is a precomposed Hangul syllable. unicode-data9Determine if the given character is a Hangul LV syllable.Note:? this function requires a precomposed Hangul syllable but does not check it. Use 4 to check the input character before passing it to . unicode-dataWhether we are decomposing in canonical or compatibility mode. unicode-dataCompose a starter character (combining class 0) with a combining character (non-zero combining class). Returns the composed character if the starter combines with the combining character, returns  otherwise. unicode-dataCompose a starter character with another starter character. Returns the composed character if the two starters combine, returns  otherwise. unicode-dataReturn  if a starter character may combine with some preceding starter character. unicode-dataDecompose a non-Hangul character into its canonical or compatibility decompositions. Note that the resulting characters may further decompose. unicode-dataGiven a non-Hangul character determine if the character is decomposable. Note that in case compatibility decompositions a character may decompose into a single compatibility character. unicode-dataDecompose a Hangul syllable into its corresponding Jamo characters. unicode-data+Returns the combining class of a character. unicode-dataReturns ) if a character is a combining character.   2(c) 2022 Composewell Technologies and Contributors BSD-3-Clausestreamly@composewell.com experimentalGHC Safe-Inferred%&<# unicode-dataA stream is a succession of s. unicode-data9Produces a single value and the next state of the stream. unicode-data1Indicates there are no more values in the stream. unicode-dataAn  Unfold a b. is a generator of a stream of values of type b from a seed of type a. unicode-dataConvert an 'Unfold a a' to a list [a], if the resulting list is empty the seed is used as a default output. unicode-dataStep6 function: compute the next step from the current one. unicode-dataInject2 function: initialize the state with a seed value. 2(c) 2020 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<y  unicode-dataReturns  for lower-case characters. It uses the character property  /https://www.unicode.org/reports/tr44/#Lowercase Lowercase.See:  > for the legacy predicate. unicode-dataReturns  for upper-case characters. It uses the character property  /https://www.unicode.org/reports/tr44/#Uppercase Uppercase.Note: it does not6 match title-cased letters. Those are matched using: ? c == 0.See:  @ for the legacy predicate. unicode-dataReturns the full folded case mapping of a character if the character is changed, else nothing.It uses the character property  Case_Folding. unicode-dataReturns the full lower case mapping of a character if the character is changed, else nothing.It uses the character property Lowercase_Mapping. unicode-dataReturns the full title case mapping of a character if the character is changed, else nothing.It uses the character property Titlecase_Mapping. unicode-dataReturns the full upper case mapping of a character if the character is changed, else nothing.It uses the character property Uppercase_Mapping. unicode-dataConvert a character to full folded! case if defined, else to itself.This function is mainly useful for performing caseless (also known as case insensitive) string comparisons. A string x" is a caseless match for a string y if and only if: 8foldMap toCaseFoldString x == foldMap toCaseFoldString yThe result string may have more than one character, and may differ from applying * to the input string. For instance, @@ (U+FB13 Armenian small ligature men now) is case folded to the sequence @ @ (U+0574. Armenian small letter men) followed by @ @ (U+0576) Armenian small letter now), while @@ (U+00B5% micro sign) is case folded to @@ (U+03BC+ Greek small letter mu) instead of itself.It uses the character property  Case_Folding.toCaseFoldString c == foldMap toCaseFoldString (toCaseFoldString c) unicode-dataConvert a character to full lower! case if defined, else to itself.The result string may have more than one character. For instance, @@ (U+0130 Latin capital letter I with dot above) maps to the sequence: @i@ (U+0069* Latin small letter I) followed by @@ (U+0307 combining dot above).It uses the character property Lowercase_Mapping.See:  A for simple lower case conversion.:toLowerString c == foldMap toLowerString (toLowerString c) unicode-dataConvert a character to full title! case if defined, else to itself.The result string may have more than one character. For instance, @@ (U+FB02> Latin small ligature FL) is converted to the sequence: @F@ (U+0046+ Latin capital letter F) followed by @l@ (U+006C Latin small letter L).It uses the character property Titlecase_Mapping.See:  B for simple title case conversion. unicode-dataConvert a character to full upper! case if defined, else to itself.The result string may have more than one character. For instance, the German @@ (U+00DF/ Eszett) maps to the two-letter sequence @SS@.It uses the character property Uppercase_Mapping.See:  C for simple upper case conversion.:toUpperString c == foldMap toUpperString (toUpperString c) unicode-dataExtract the next character from a raw mapping. Each character is encoded on 21 bits.2(c) 2020 Composewell Technologies and Contributors Apache-2.0streamly@composewell.com experimental Safe-Inferred %&<> unicode-dataShow the code point of a character using the Unicode Standard convention: hexadecimal codepoint padded with zeros if inferior to 4 characters.showCodePoint '\xf' """000F"showCodePoint '\x1ffff' """1FFFF" DEFGHIGJKGLMGNOGNPGNQGNRGNSGNTGNUGVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~)(;<= @ > C A B:  /20%&'?*+                   3 1  6 8 4  7 9 5DD*(DGD !"#$$$$$$$$$$$$$$$$$$$$$$$$$$$'$&$%$$$$$$0$2$/$$?,-.GG )unicode-data-0.6.0-33Ldzt1xkm84PaCo5kxncmUnicode.Internal.Bits Unicode.CharUnicode.Char.NumericUnicode.Char.GeneralUnicode.Char.General.BlocksUnicode.Char.IdentifiersUnicode.Char.Numeric.CompatUnicode.Char.General.CompatUnicode.Char.Case.CompatUnicode.Internal.DivisionUnicode.Char.NormalizationUnicode.Internal.UnfoldUnicode.Char.Case unicode-dataGHC.ExtsWord8#Word32#Unicode.Internal.Char.Blocks!Unicode.Internal.Char.CaseFolding+Unicode.Internal.Char.DerivedCoreProperties*Unicode.Internal.Char.DerivedNumericValuesisNumberGeneralCategory OtherLetterUnicode.Internal.Char.PropList4Unicode.Internal.Char.SpecialCasing.LowerCaseMapping4Unicode.Internal.Char.SpecialCasing.TitleCaseMapping4Unicode.Internal.Char.SpecialCasing.UpperCaseMapping0Unicode.Internal.Char.UnicodeData.CombiningClass.Unicode.Internal.Char.UnicodeData.Compositions.Unicode.Internal.Char.UnicodeData.Decomposable/Unicode.Internal.Char.UnicodeData.DecomposableK0Unicode.Internal.Char.UnicodeData.Decompositions2Unicode.Internal.Char.UnicodeData.DecompositionsK21Unicode.Internal.Char.UnicodeData.DecompositionsK1Unicode.Internal.Char.UnicodeData.GeneralCategory DecimalNumber LetterNumber OtherNumber numericValue isNumeric isAlphabetic isWhiteSpace8Unicode.Internal.Char.UnicodeData.SimpleLowerCaseMapping8Unicode.Internal.Char.UnicodeData.SimpleTitleCaseMapping8Unicode.Internal.Char.UnicodeData.SimpleUpperCaseMappingUppercaseLetterTitlecaseLetter isUpperCaseLowercaseLetter isLowerCaseupperCaseMapping toUpperStringlowerCaseMapping toLowerStringtitleCaseMapping toTitleStringUnicode.Internal.Char.VersionisAlphaisLetterisSpaceisLowergeneralCategoryisUppertoLowertoTitletoUpperghc-prim GHC.CStringunpackCString#baseGHC.BaseordGHC.Show intToDigitGHC.Charchr GHC.UnicodeisAsciiisLatin1 isAsciiLower isAsciiUpperisDigit isOctDigit isHexDigit Data.Char digitToInt lookupBitlookupWord8AsIntlookupWord8AsInt#lookupWord16AsIntlookupWord16AsInt# lookupWord32#Block BasicLatinLatin1SupplementLatinExtendedALatinExtendedB IPAExtensionsSpacingModifierLettersCombiningDiacriticalMarksGreekAndCopticCyrillicCyrillicSupplementArmenianHebrewArabicSyriacArabicSupplementThaanaNKo SamaritanMandaicSyriacSupplementArabicExtendedBArabicExtendedA DevanagariBengaliGurmukhiGujaratiOriyaTamilTeluguKannada MalayalamSinhalaThaiLaoTibetanMyanmarGeorgian HangulJamoEthiopicEthiopicSupplementCherokee"UnifiedCanadianAboriginalSyllabicsOghamRunicTagalogHanunooBuhidTagbanwaKhmer Mongolian*UnifiedCanadianAboriginalSyllabicsExtendedLimbuTaiLe NewTaiLue KhmerSymbolsBugineseTaiTham!CombiningDiacriticalMarksExtendedBalinese SundaneseBatakLepchaOlChikiCyrillicExtendedCGeorgianExtendedSundaneseSupplementVedicExtensionsPhoneticExtensionsPhoneticExtensionsSupplement#CombiningDiacriticalMarksSupplementLatinExtendedAdditional GreekExtendedGeneralPunctuationSuperscriptsAndSubscriptsCurrencySymbols#CombiningDiacriticalMarksForSymbolsLetterlikeSymbols NumberFormsArrowsMathematicalOperatorsMiscellaneousTechnicalControlPicturesOpticalCharacterRecognitionEnclosedAlphanumerics BoxDrawing BlockElementsGeometricShapesMiscellaneousSymbolsDingbats!MiscellaneousMathematicalSymbolsASupplementalArrowsABraillePatternsSupplementalArrowsB!MiscellaneousMathematicalSymbolsB!SupplementalMathematicalOperatorsMiscellaneousSymbolsAndArrows GlagoliticLatinExtendedCCopticGeorgianSupplementTifinaghEthiopicExtendedCyrillicExtendedASupplementalPunctuationCJKRadicalsSupplementKangxiRadicals IdeographicDescriptionCharactersCJKSymbolsAndPunctuationHiraganaKatakanaBopomofoHangulCompatibilityJamoKanbunBopomofoExtended CJKStrokesKatakanaPhoneticExtensionsEnclosedCJKLettersAndMonthsCJKCompatibilityCJKUnifiedIdeographsExtensionAYijingHexagramSymbolsCJKUnifiedIdeographs YiSyllables YiRadicalsLisuVaiCyrillicExtendedBBamumModifierToneLettersLatinExtendedD SylotiNagriCommonIndicNumberFormsPhagsPa SaurashtraDevanagariExtendedKayahLiRejangHangulJamoExtendedAJavaneseMyanmarExtendedBChamMyanmarExtendedATaiVietMeeteiMayekExtensionsEthiopicExtendedALatinExtendedECherokeeSupplement MeeteiMayekHangulSyllablesHangulJamoExtendedBHighSurrogatesHighPrivateUseSurrogates LowSurrogatesPrivateUseAreaCJKCompatibilityIdeographsAlphabeticPresentationFormsArabicPresentationFormsAVariationSelectors VerticalFormsCombiningHalfMarksCJKCompatibilityFormsSmallFormVariantsArabicPresentationFormsBHalfwidthAndFullwidthFormsSpecialsLinearBSyllabaryLinearBIdeograms AegeanNumbersAncientGreekNumbersAncientSymbols PhaistosDiscLycianCarianCopticEpactNumbers OldItalicGothic OldPermicUgaritic OldPersianDeseretShavianOsmanyaOsageElbasanCaucasianAlbanianVithkuqiLinearALatinExtendedFCypriotSyllabaryImperialAramaic Palmyrene NabataeanHatran PhoenicianLydianMeroiticHieroglyphsMeroiticCursive KharoshthiOldSouthArabianOldNorthArabian ManichaeanAvestanInscriptionalParthianInscriptionalPahlaviPsalterPahlavi OldTurkic OldHungarianHanifiRohingyaRumiNumeralSymbolsYezidiArabicExtendedC OldSogdianSogdian OldUyghur ChorasmianElymaicBrahmiKaithi SoraSompengChakmaMahajaniSharadaSinhalaArchaicNumbersKhojkiMultani KhudawadiGranthaNewaTirhutaSiddhamModiMongolianSupplementTakriAhomDogra WarangCiti DivesAkuru NandinagariZanabazarSquareSoyombo+UnifiedCanadianAboriginalSyllabicsExtendedA PauCinHauDevanagariExtendedA BhaiksukiMarchen MasaramGondi GunjalaGondiMakasarKawiLisuSupplementTamilSupplement CuneiformCuneiformNumbersAndPunctuationEarlyDynasticCuneiform CyproMinoanEgyptianHieroglyphs EgyptianHieroglyphFormatControlsAnatolianHieroglyphsBamumSupplementMroTangsaBassaVah PahawhHmong MedefaidrinMiao IdeographicSymbolsAndPunctuationTangutTangutComponentsKhitanSmallScriptTangutSupplement KanaExtendedBKanaSupplement KanaExtendedASmallKanaExtensionNushuDuployanShorthandFormatControlsZnamennyMusicalNotationByzantineMusicalSymbolsMusicalSymbolsAncientGreekMusicalNotationKaktovikNumerals MayanNumeralsTaiXuanJingSymbolsCountingRodNumeralsMathematicalAlphanumericSymbolsSuttonSignWritingLatinExtendedGGlagoliticSupplementCyrillicExtendedDNyiakengPuachueHmongTotoWancho NagMundariEthiopicExtendedB MendeKikakuiAdlamIndicSiyaqNumbersOttomanSiyaqNumbers#ArabicMathematicalAlphabeticSymbols MahjongTiles DominoTiles PlayingCardsEnclosedAlphanumericSupplementEnclosedIdeographicSupplement"MiscellaneousSymbolsAndPictographs EmoticonsOrnamentalDingbatsTransportAndMapSymbolsAlchemicalSymbolsGeometricShapesExtendedSupplementalArrowsC!SupplementalSymbolsAndPictographs ChessSymbolsSymbolsAndPictographsExtendedASymbolsForLegacyComputingCJKUnifiedIdeographsExtensionBCJKUnifiedIdeographsExtensionCCJKUnifiedIdeographsExtensionDCJKUnifiedIdeographsExtensionECJKUnifiedIdeographsExtensionFCJKUnifiedIdeographsExtensionI$CJKCompatibilityIdeographsSupplementCJKUnifiedIdeographsExtensionGCJKUnifiedIdeographsExtensionHTagsVariationSelectorsSupplementSupplementaryPrivateUseAreaASupplementaryPrivateUseAreaBBlockDefinition blockRange blockNameblockblockDefinition$fEqBlockDefinition$fOrdBlockDefinition$fShowBlockDefinition integerValue intToDigiT isIDContinue isIDStart isXIDContinue isXIDStartisPatternSyntaxisPatternWhitespace isAlphaNumunicodeVersion quotRem21 quotRem28 CodePointType GraphicType FormatType ControlTypePrivateUseType SurrogateTypeNoncharacterType ReservedTypeModifierLetterNonSpacingMarkSpacingCombiningMark EnclosingMarkConnectorPunctuationDashPunctuationOpenPunctuationClosePunctuation InitialQuote FinalQuoteOtherPunctuation MathSymbolCurrencySymbolModifierSymbol OtherSymbolSpace LineSeparatorParagraphSeparatorControlFormat Surrogate PrivateUse NotAssignedgeneralCategoryAbbr codePointType isControlisMarkisPrint isPunctuation isSeparatorisSymbolisNoncharacter jamoLFirst jamoLCount jamoLLast jamoVFirst jamoVCount jamoVLast jamoTFirst jamoTCount jamoTLast jamoNCount hangulFirst hangulLastisHangul isHangulLVisJamo jamoLIndex jamoVIndex jamoTIndex$fShowCodePointType$fEqCodePointType$fOrdCodePointType$fEnumCodePointType$fBoundedCodePointType$fIxCodePointType$fShowGeneralCategory$fEqGeneralCategory$fOrdGeneralCategory$fEnumGeneralCategory$fBoundedGeneralCategory$fIxGeneralCategory DecomposeMode CanonicalKompatcomposecomposeStartersisCombiningStarter decomposeisDecomposabledecomposeHangulcombiningClass isCombiningStepYieldStopUnfoldtoList $fFunctorStepcaseFoldMappingtoCaseFoldString showCodePoint GHC.TypesIntGHC.PrimWord# toCasefoldisXID_Continue isXID_Start isID_Continue isID_Start isUppercase isLowercaseFalseGHC.IntInt64isPattern_SyntaxisPattern_White_Space isWhite_SpaceTruetoSpecialLowerCasetoSpecialTitleCasetoSpecialUpperCaseisSecondStarterMaxIsSeparator MaxIsSpace MaxIsNumber MaxIsUpper MaxIsLower MaxIsAlphaNum MaxIsLettergeneralCategoryPlanes0To3toSimpleLowerCasetoSimpleTitleCasetoSimpleUpperCaseGHC.EnumEnum GHC.MaybeNothingstep