module Data.Char.Properties.UnicodeBlocks
( codeBlocks
, elemCodeBlock
, versionUnicode
, isBasicLatin
, isLatin1Supplement
, isLatinExtendedA
, isLatinExtendedB
, isIPAExtensions
, isSpacingModifierLetters
, isCombiningDiacriticalMarks
, isGreekandCoptic
, isCyrillic
, isCyrillicSupplement
, isArmenian
, isHebrew
, isArabic
, isSyriac
, isArabicSupplement
, isThaana
, isNKo
, isSamaritan
, isMandaic
, isArabicExtendedA
, isDevanagari
, isBengali
, isGurmukhi
, isGujarati
, isOriya
, isTamil
, isTelugu
, isKannada
, isMalayalam
, isSinhala
, isThai
, isLao
, isTibetan
, isMyanmar
, isGeorgian
, isHangulJamo
, isEthiopic
, isEthiopicSupplement
, isCherokee
, isUnifiedCanadianAboriginalSyllabics
, isOgham
, isRunic
, isTagalog
, isHanunoo
, isBuhid
, isTagbanwa
, isKhmer
, isMongolian
, isUnifiedCanadianAboriginalSyllabicsExtended
, isLimbu
, isTaiLe
, isNewTaiLue
, isKhmerSymbols
, isBuginese
, isTaiTham
, isCombiningDiacriticalMarksExtended
, isBalinese
, isSundanese
, isBatak
, isLepcha
, isOlChiki
, isSundaneseSupplement
, isVedicExtensions
, isPhoneticExtensions
, isPhoneticExtensionsSupplement
, isCombiningDiacriticalMarksSupplement
, isLatinExtendedAdditional
, isGreekExtended
, isGeneralPunctuation
, isSuperscriptsandSubscripts
, isCurrencySymbols
, isCombiningDiacriticalMarksforSymbols
, isLetterlikeSymbols
, isNumberForms
, isArrows
, isMathematicalOperators
, isMiscellaneousTechnical
, isControlPictures
, isOpticalCharacterRecognition
, isEnclosedAlphanumerics
, isBoxDrawing
, isBlockElements
, isGeometricShapes
, isMiscellaneousSymbols
, isDingbats
, isMiscellaneousMathematicalSymbolsA
, isSupplementalArrowsA
, isBraillePatterns
, isSupplementalArrowsB
, isMiscellaneousMathematicalSymbolsB
, isSupplementalMathematicalOperators
, isMiscellaneousSymbolsandArrows
, isGlagolitic
, isLatinExtendedC
, isCoptic
, isGeorgianSupplement
, isTifinagh
, isEthiopicExtended
, isCyrillicExtendedA
, isSupplementalPunctuation
, isCJKRadicalsSupplement
, isKangxiRadicals
, isIdeographicDescriptionCharacters
, isCJKSymbolsandPunctuation
, isHiragana
, isKatakana
, isBopomofo
, isHangulCompatibilityJamo
, isKanbun
, isBopomofoExtended
, isCJKStrokes
, isKatakanaPhoneticExtensions
, isEnclosedCJKLettersandMonths
, isCJKCompatibility
, isCJKUnifiedIdeographsExtensionA
, isYijingHexagramSymbols
, isCJKUnifiedIdeographs
, isYiSyllables
, isYiRadicals
, isLisu
, isVai
, isCyrillicExtendedB
, isBamum
, isModifierToneLetters
, isLatinExtendedD
, isSylotiNagri
, isCommonIndicNumberForms
, isPhagspa
, isSaurashtra
, isDevanagariExtended
, isKayahLi
, isRejang
, isHangulJamoExtendedA
, isJavanese
, isMyanmarExtendedB
, isCham
, isMyanmarExtendedA
, isTaiViet
, isMeeteiMayekExtensions
, isEthiopicExtendedA
, isLatinExtendedE
, isMeeteiMayek
, isHangulSyllables
, isHangulJamoExtendedB
, isHighSurrogates
, isHighPrivateUseSurrogates
, isLowSurrogates
, isPrivateUseArea
, isCJKCompatibilityIdeographs
, isAlphabeticPresentationForms
, isArabicPresentationFormsA
, isVariationSelectors
, isVerticalForms
, isCombiningHalfMarks
, isCJKCompatibilityForms
, isSmallFormVariants
, isArabicPresentationFormsB
, isHalfwidthandFullwidthForms
, isSpecials
, isLinearBSyllabary
, isLinearBIdeograms
, isAegeanNumbers
, isAncientGreekNumbers
, isAncientSymbols
, isPhaistosDisc
, isLycian
, isCarian
, isCopticEpactNumbers
, isOldItalic
, isGothic
, isOldPermic
, isUgaritic
, isOldPersian
, isDeseret
, isShavian
, isOsmanya
, isElbasan
, isCaucasianAlbanian
, isLinearA
, isCypriotSyllabary
, isImperialAramaic
, isPalmyrene
, isNabataean
, isPhoenician
, isLydian
, isMeroiticHieroglyphs
, isMeroiticCursive
, isKharoshthi
, isOldSouthArabian
, isOldNorthArabian
, isManichaean
, isAvestan
, isInscriptionalParthian
, isInscriptionalPahlavi
, isPsalterPahlavi
, isOldTurkic
, isRumiNumeralSymbols
, isBrahmi
, isKaithi
, isSoraSompeng
, isChakma
, isMahajani
, isSharada
, isSinhalaArchaicNumbers
, isKhojki
, isKhudawadi
, isGrantha
, isTirhuta
, isSiddham
, isModi
, isTakri
, isWarangCiti
, isPauCinHau
, isCuneiform
, isCuneiformNumbersandPunctuation
, isEgyptianHieroglyphs
, isBamumSupplement
, isMro
, isBassaVah
, isPahawhHmong
, isMiao
, isKanaSupplement
, isDuployan
, isShorthandFormatControls
, isByzantineMusicalSymbols
, isMusicalSymbols
, isAncientGreekMusicalNotation
, isTaiXuanJingSymbols
, isCountingRodNumerals
, isMathematicalAlphanumericSymbols
, isMendeKikakui
, isArabicMathematicalAlphabeticSymbols
, isMahjongTiles
, isDominoTiles
, isPlayingCards
, isEnclosedAlphanumericSupplement
, isEnclosedIdeographicSupplement
, isMiscellaneousSymbolsandPictographs
, isEmoticons
, isOrnamentalDingbats
, isTransportandMapSymbols
, isAlchemicalSymbols
, isGeometricShapesExtended
, isSupplementalArrowsC
, isCJKUnifiedIdeographsExtensionB
, isCJKUnifiedIdeographsExtensionC
, isCJKUnifiedIdeographsExtensionD
, isCJKCompatibilityIdeographsSupplement
, isTags
, isVariationSelectorsSupplement
, isSupplementaryPrivateUseAreaA
, isSupplementaryPrivateUseAreaB
)
where
versionUnicode :: String
versionUnicode = "7.0.0"
elemCodeBlock :: Char -> String -> Bool
elemCodeBlock c b = maybe False (\ (lb, ub) -> c >= lb && c <= ub) $ lookup b codeBlocks
codeBlocks :: [(String, (Char, Char))]
codeBlocks =
[ ( "BasicLatin", ( '\x0000', '\x007F') )
, ( "Latin-1Supplement", ( '\x0080', '\x00FF') )
, ( "LatinExtended-A", ( '\x0100', '\x017F') )
, ( "LatinExtended-B", ( '\x0180', '\x024F') )
, ( "IPAExtensions", ( '\x0250', '\x02AF') )
, ( "SpacingModifierLetters", ( '\x02B0', '\x02FF') )
, ( "CombiningDiacriticalMarks", ( '\x0300', '\x036F') )
, ( "GreekandCoptic", ( '\x0370', '\x03FF') )
, ( "Cyrillic", ( '\x0400', '\x04FF') )
, ( "CyrillicSupplement", ( '\x0500', '\x052F') )
, ( "Armenian", ( '\x0530', '\x058F') )
, ( "Hebrew", ( '\x0590', '\x05FF') )
, ( "Arabic", ( '\x0600', '\x06FF') )
, ( "Syriac", ( '\x0700', '\x074F') )
, ( "ArabicSupplement", ( '\x0750', '\x077F') )
, ( "Thaana", ( '\x0780', '\x07BF') )
, ( "NKo", ( '\x07C0', '\x07FF') )
, ( "Samaritan", ( '\x0800', '\x083F') )
, ( "Mandaic", ( '\x0840', '\x085F') )
, ( "ArabicExtended-A", ( '\x08A0', '\x08FF') )
, ( "Devanagari", ( '\x0900', '\x097F') )
, ( "Bengali", ( '\x0980', '\x09FF') )
, ( "Gurmukhi", ( '\x0A00', '\x0A7F') )
, ( "Gujarati", ( '\x0A80', '\x0AFF') )
, ( "Oriya", ( '\x0B00', '\x0B7F') )
, ( "Tamil", ( '\x0B80', '\x0BFF') )
, ( "Telugu", ( '\x0C00', '\x0C7F') )
, ( "Kannada", ( '\x0C80', '\x0CFF') )
, ( "Malayalam", ( '\x0D00', '\x0D7F') )
, ( "Sinhala", ( '\x0D80', '\x0DFF') )
, ( "Thai", ( '\x0E00', '\x0E7F') )
, ( "Lao", ( '\x0E80', '\x0EFF') )
, ( "Tibetan", ( '\x0F00', '\x0FFF') )
, ( "Myanmar", ( '\x1000', '\x109F') )
, ( "Georgian", ( '\x10A0', '\x10FF') )
, ( "HangulJamo", ( '\x1100', '\x11FF') )
, ( "Ethiopic", ( '\x1200', '\x137F') )
, ( "EthiopicSupplement", ( '\x1380', '\x139F') )
, ( "Cherokee", ( '\x13A0', '\x13FF') )
, ( "UnifiedCanadianAboriginalSyllabics", ( '\x1400', '\x167F') )
, ( "Ogham", ( '\x1680', '\x169F') )
, ( "Runic", ( '\x16A0', '\x16FF') )
, ( "Tagalog", ( '\x1700', '\x171F') )
, ( "Hanunoo", ( '\x1720', '\x173F') )
, ( "Buhid", ( '\x1740', '\x175F') )
, ( "Tagbanwa", ( '\x1760', '\x177F') )
, ( "Khmer", ( '\x1780', '\x17FF') )
, ( "Mongolian", ( '\x1800', '\x18AF') )
, ( "UnifiedCanadianAboriginalSyllabicsExtended", ( '\x18B0', '\x18FF') )
, ( "Limbu", ( '\x1900', '\x194F') )
, ( "TaiLe", ( '\x1950', '\x197F') )
, ( "NewTaiLue", ( '\x1980', '\x19DF') )
, ( "KhmerSymbols", ( '\x19E0', '\x19FF') )
, ( "Buginese", ( '\x1A00', '\x1A1F') )
, ( "TaiTham", ( '\x1A20', '\x1AAF') )
, ( "CombiningDiacriticalMarksExtended", ( '\x1AB0', '\x1AFF') )
, ( "Balinese", ( '\x1B00', '\x1B7F') )
, ( "Sundanese", ( '\x1B80', '\x1BBF') )
, ( "Batak", ( '\x1BC0', '\x1BFF') )
, ( "Lepcha", ( '\x1C00', '\x1C4F') )
, ( "OlChiki", ( '\x1C50', '\x1C7F') )
, ( "SundaneseSupplement", ( '\x1CC0', '\x1CCF') )
, ( "VedicExtensions", ( '\x1CD0', '\x1CFF') )
, ( "PhoneticExtensions", ( '\x1D00', '\x1D7F') )
, ( "PhoneticExtensionsSupplement", ( '\x1D80', '\x1DBF') )
, ( "CombiningDiacriticalMarksSupplement", ( '\x1DC0', '\x1DFF') )
, ( "LatinExtendedAdditional", ( '\x1E00', '\x1EFF') )
, ( "GreekExtended", ( '\x1F00', '\x1FFF') )
, ( "GeneralPunctuation", ( '\x2000', '\x206F') )
, ( "SuperscriptsandSubscripts", ( '\x2070', '\x209F') )
, ( "CurrencySymbols", ( '\x20A0', '\x20CF') )
, ( "CombiningDiacriticalMarksforSymbols", ( '\x20D0', '\x20FF') )
, ( "LetterlikeSymbols", ( '\x2100', '\x214F') )
, ( "NumberForms", ( '\x2150', '\x218F') )
, ( "Arrows", ( '\x2190', '\x21FF') )
, ( "MathematicalOperators", ( '\x2200', '\x22FF') )
, ( "MiscellaneousTechnical", ( '\x2300', '\x23FF') )
, ( "ControlPictures", ( '\x2400', '\x243F') )
, ( "OpticalCharacterRecognition", ( '\x2440', '\x245F') )
, ( "EnclosedAlphanumerics", ( '\x2460', '\x24FF') )
, ( "BoxDrawing", ( '\x2500', '\x257F') )
, ( "BlockElements", ( '\x2580', '\x259F') )
, ( "GeometricShapes", ( '\x25A0', '\x25FF') )
, ( "MiscellaneousSymbols", ( '\x2600', '\x26FF') )
, ( "Dingbats", ( '\x2700', '\x27BF') )
, ( "MiscellaneousMathematicalSymbols-A", ( '\x27C0', '\x27EF') )
, ( "SupplementalArrows-A", ( '\x27F0', '\x27FF') )
, ( "BraillePatterns", ( '\x2800', '\x28FF') )
, ( "SupplementalArrows-B", ( '\x2900', '\x297F') )
, ( "MiscellaneousMathematicalSymbols-B", ( '\x2980', '\x29FF') )
, ( "SupplementalMathematicalOperators", ( '\x2A00', '\x2AFF') )
, ( "MiscellaneousSymbolsandArrows", ( '\x2B00', '\x2BFF') )
, ( "Glagolitic", ( '\x2C00', '\x2C5F') )
, ( "LatinExtended-C", ( '\x2C60', '\x2C7F') )
, ( "Coptic", ( '\x2C80', '\x2CFF') )
, ( "GeorgianSupplement", ( '\x2D00', '\x2D2F') )
, ( "Tifinagh", ( '\x2D30', '\x2D7F') )
, ( "EthiopicExtended", ( '\x2D80', '\x2DDF') )
, ( "CyrillicExtended-A", ( '\x2DE0', '\x2DFF') )
, ( "SupplementalPunctuation", ( '\x2E00', '\x2E7F') )
, ( "CJKRadicalsSupplement", ( '\x2E80', '\x2EFF') )
, ( "KangxiRadicals", ( '\x2F00', '\x2FDF') )
, ( "IdeographicDescriptionCharacters", ( '\x2FF0', '\x2FFF') )
, ( "CJKSymbolsandPunctuation", ( '\x3000', '\x303F') )
, ( "Hiragana", ( '\x3040', '\x309F') )
, ( "Katakana", ( '\x30A0', '\x30FF') )
, ( "Bopomofo", ( '\x3100', '\x312F') )
, ( "HangulCompatibilityJamo", ( '\x3130', '\x318F') )
, ( "Kanbun", ( '\x3190', '\x319F') )
, ( "BopomofoExtended", ( '\x31A0', '\x31BF') )
, ( "CJKStrokes", ( '\x31C0', '\x31EF') )
, ( "KatakanaPhoneticExtensions", ( '\x31F0', '\x31FF') )
, ( "EnclosedCJKLettersandMonths", ( '\x3200', '\x32FF') )
, ( "CJKCompatibility", ( '\x3300', '\x33FF') )
, ( "CJKUnifiedIdeographsExtensionA", ( '\x3400', '\x4DBF') )
, ( "YijingHexagramSymbols", ( '\x4DC0', '\x4DFF') )
, ( "CJKUnifiedIdeographs", ( '\x4E00', '\x9FFF') )
, ( "YiSyllables", ( '\xA000', '\xA48F') )
, ( "YiRadicals", ( '\xA490', '\xA4CF') )
, ( "Lisu", ( '\xA4D0', '\xA4FF') )
, ( "Vai", ( '\xA500', '\xA63F') )
, ( "CyrillicExtended-B", ( '\xA640', '\xA69F') )
, ( "Bamum", ( '\xA6A0', '\xA6FF') )
, ( "ModifierToneLetters", ( '\xA700', '\xA71F') )
, ( "LatinExtended-D", ( '\xA720', '\xA7FF') )
, ( "SylotiNagri", ( '\xA800', '\xA82F') )
, ( "CommonIndicNumberForms", ( '\xA830', '\xA83F') )
, ( "Phags-pa", ( '\xA840', '\xA87F') )
, ( "Saurashtra", ( '\xA880', '\xA8DF') )
, ( "DevanagariExtended", ( '\xA8E0', '\xA8FF') )
, ( "KayahLi", ( '\xA900', '\xA92F') )
, ( "Rejang", ( '\xA930', '\xA95F') )
, ( "HangulJamoExtended-A", ( '\xA960', '\xA97F') )
, ( "Javanese", ( '\xA980', '\xA9DF') )
, ( "MyanmarExtended-B", ( '\xA9E0', '\xA9FF') )
, ( "Cham", ( '\xAA00', '\xAA5F') )
, ( "MyanmarExtended-A", ( '\xAA60', '\xAA7F') )
, ( "TaiViet", ( '\xAA80', '\xAADF') )
, ( "MeeteiMayekExtensions", ( '\xAAE0', '\xAAFF') )
, ( "EthiopicExtended-A", ( '\xAB00', '\xAB2F') )
, ( "LatinExtended-E", ( '\xAB30', '\xAB6F') )
, ( "MeeteiMayek", ( '\xABC0', '\xABFF') )
, ( "HangulSyllables", ( '\xAC00', '\xD7AF') )
, ( "HangulJamoExtended-B", ( '\xD7B0', '\xD7FF') )
, ( "HighSurrogates", ( '\xD800', '\xDB7F') )
, ( "HighPrivateUseSurrogates", ( '\xDB80', '\xDBFF') )
, ( "LowSurrogates", ( '\xDC00', '\xDFFF') )
, ( "PrivateUseArea", ( '\xE000', '\xF8FF') )
, ( "CJKCompatibilityIdeographs", ( '\xF900', '\xFAFF') )
, ( "AlphabeticPresentationForms", ( '\xFB00', '\xFB4F') )
, ( "ArabicPresentationForms-A", ( '\xFB50', '\xFDFF') )
, ( "VariationSelectors", ( '\xFE00', '\xFE0F') )
, ( "VerticalForms", ( '\xFE10', '\xFE1F') )
, ( "CombiningHalfMarks", ( '\xFE20', '\xFE2F') )
, ( "CJKCompatibilityForms", ( '\xFE30', '\xFE4F') )
, ( "SmallFormVariants", ( '\xFE50', '\xFE6F') )
, ( "ArabicPresentationForms-B", ( '\xFE70', '\xFEFF') )
, ( "HalfwidthandFullwidthForms", ( '\xFF00', '\xFFEF') )
, ( "Specials", ( '\xFFF0', '\xFFFF') )
, ( "LinearBSyllabary", ( '\x10000', '\x1007F') )
, ( "LinearBIdeograms", ( '\x10080', '\x100FF') )
, ( "AegeanNumbers", ( '\x10100', '\x1013F') )
, ( "AncientGreekNumbers", ( '\x10140', '\x1018F') )
, ( "AncientSymbols", ( '\x10190', '\x101CF') )
, ( "PhaistosDisc", ( '\x101D0', '\x101FF') )
, ( "Lycian", ( '\x10280', '\x1029F') )
, ( "Carian", ( '\x102A0', '\x102DF') )
, ( "CopticEpactNumbers", ( '\x102E0', '\x102FF') )
, ( "OldItalic", ( '\x10300', '\x1032F') )
, ( "Gothic", ( '\x10330', '\x1034F') )
, ( "OldPermic", ( '\x10350', '\x1037F') )
, ( "Ugaritic", ( '\x10380', '\x1039F') )
, ( "OldPersian", ( '\x103A0', '\x103DF') )
, ( "Deseret", ( '\x10400', '\x1044F') )
, ( "Shavian", ( '\x10450', '\x1047F') )
, ( "Osmanya", ( '\x10480', '\x104AF') )
, ( "Elbasan", ( '\x10500', '\x1052F') )
, ( "CaucasianAlbanian", ( '\x10530', '\x1056F') )
, ( "LinearA", ( '\x10600', '\x1077F') )
, ( "CypriotSyllabary", ( '\x10800', '\x1083F') )
, ( "ImperialAramaic", ( '\x10840', '\x1085F') )
, ( "Palmyrene", ( '\x10860', '\x1087F') )
, ( "Nabataean", ( '\x10880', '\x108AF') )
, ( "Phoenician", ( '\x10900', '\x1091F') )
, ( "Lydian", ( '\x10920', '\x1093F') )
, ( "MeroiticHieroglyphs", ( '\x10980', '\x1099F') )
, ( "MeroiticCursive", ( '\x109A0', '\x109FF') )
, ( "Kharoshthi", ( '\x10A00', '\x10A5F') )
, ( "OldSouthArabian", ( '\x10A60', '\x10A7F') )
, ( "OldNorthArabian", ( '\x10A80', '\x10A9F') )
, ( "Manichaean", ( '\x10AC0', '\x10AFF') )
, ( "Avestan", ( '\x10B00', '\x10B3F') )
, ( "InscriptionalParthian", ( '\x10B40', '\x10B5F') )
, ( "InscriptionalPahlavi", ( '\x10B60', '\x10B7F') )
, ( "PsalterPahlavi", ( '\x10B80', '\x10BAF') )
, ( "OldTurkic", ( '\x10C00', '\x10C4F') )
, ( "RumiNumeralSymbols", ( '\x10E60', '\x10E7F') )
, ( "Brahmi", ( '\x11000', '\x1107F') )
, ( "Kaithi", ( '\x11080', '\x110CF') )
, ( "SoraSompeng", ( '\x110D0', '\x110FF') )
, ( "Chakma", ( '\x11100', '\x1114F') )
, ( "Mahajani", ( '\x11150', '\x1117F') )
, ( "Sharada", ( '\x11180', '\x111DF') )
, ( "SinhalaArchaicNumbers", ( '\x111E0', '\x111FF') )
, ( "Khojki", ( '\x11200', '\x1124F') )
, ( "Khudawadi", ( '\x112B0', '\x112FF') )
, ( "Grantha", ( '\x11300', '\x1137F') )
, ( "Tirhuta", ( '\x11480', '\x114DF') )
, ( "Siddham", ( '\x11580', '\x115FF') )
, ( "Modi", ( '\x11600', '\x1165F') )
, ( "Takri", ( '\x11680', '\x116CF') )
, ( "WarangCiti", ( '\x118A0', '\x118FF') )
, ( "PauCinHau", ( '\x11AC0', '\x11AFF') )
, ( "Cuneiform", ( '\x12000', '\x123FF') )
, ( "CuneiformNumbersandPunctuation", ( '\x12400', '\x1247F') )
, ( "EgyptianHieroglyphs", ( '\x13000', '\x1342F') )
, ( "BamumSupplement", ( '\x16800', '\x16A3F') )
, ( "Mro", ( '\x16A40', '\x16A6F') )
, ( "BassaVah", ( '\x16AD0', '\x16AFF') )
, ( "PahawhHmong", ( '\x16B00', '\x16B8F') )
, ( "Miao", ( '\x16F00', '\x16F9F') )
, ( "KanaSupplement", ( '\x1B000', '\x1B0FF') )
, ( "Duployan", ( '\x1BC00', '\x1BC9F') )
, ( "ShorthandFormatControls", ( '\x1BCA0', '\x1BCAF') )
, ( "ByzantineMusicalSymbols", ( '\x1D000', '\x1D0FF') )
, ( "MusicalSymbols", ( '\x1D100', '\x1D1FF') )
, ( "AncientGreekMusicalNotation", ( '\x1D200', '\x1D24F') )
, ( "TaiXuanJingSymbols", ( '\x1D300', '\x1D35F') )
, ( "CountingRodNumerals", ( '\x1D360', '\x1D37F') )
, ( "MathematicalAlphanumericSymbols", ( '\x1D400', '\x1D7FF') )
, ( "MendeKikakui", ( '\x1E800', '\x1E8DF') )
, ( "ArabicMathematicalAlphabeticSymbols", ( '\x1EE00', '\x1EEFF') )
, ( "MahjongTiles", ( '\x1F000', '\x1F02F') )
, ( "DominoTiles", ( '\x1F030', '\x1F09F') )
, ( "PlayingCards", ( '\x1F0A0', '\x1F0FF') )
, ( "EnclosedAlphanumericSupplement", ( '\x1F100', '\x1F1FF') )
, ( "EnclosedIdeographicSupplement", ( '\x1F200', '\x1F2FF') )
, ( "MiscellaneousSymbolsandPictographs", ( '\x1F300', '\x1F5FF') )
, ( "Emoticons", ( '\x1F600', '\x1F64F') )
, ( "OrnamentalDingbats", ( '\x1F650', '\x1F67F') )
, ( "TransportandMapSymbols", ( '\x1F680', '\x1F6FF') )
, ( "AlchemicalSymbols", ( '\x1F700', '\x1F77F') )
, ( "GeometricShapesExtended", ( '\x1F780', '\x1F7FF') )
, ( "SupplementalArrows-C", ( '\x1F800', '\x1F8FF') )
, ( "CJKUnifiedIdeographsExtensionB", ( '\x20000', '\x2A6DF') )
, ( "CJKUnifiedIdeographsExtensionC", ( '\x2A700', '\x2B73F') )
, ( "CJKUnifiedIdeographsExtensionD", ( '\x2B740', '\x2B81F') )
, ( "CJKCompatibilityIdeographsSupplement", ( '\x2F800', '\x2FA1F') )
, ( "Tags", ( '\xE0000', '\xE007F') )
, ( "VariationSelectorsSupplement", ( '\xE0100', '\xE01EF') )
, ( "SupplementaryPrivateUseArea-A", ( '\xF0000', '\xFFFFF') )
, ( "SupplementaryPrivateUseArea-B", ( '\x100000', '\x10FFFF') )
]
isBasicLatin :: Char -> Bool
isBasicLatin c = c >= '\x0000' && c <= '\x007F'
isLatin1Supplement :: Char -> Bool
isLatin1Supplement c = c >= '\x0080' && c <= '\x00FF'
isLatinExtendedA :: Char -> Bool
isLatinExtendedA c = c >= '\x0100' && c <= '\x017F'
isLatinExtendedB :: Char -> Bool
isLatinExtendedB c = c >= '\x0180' && c <= '\x024F'
isIPAExtensions :: Char -> Bool
isIPAExtensions c = c >= '\x0250' && c <= '\x02AF'
isSpacingModifierLetters :: Char -> Bool
isSpacingModifierLetters c = c >= '\x02B0' && c <= '\x02FF'
isCombiningDiacriticalMarks :: Char -> Bool
isCombiningDiacriticalMarks c = c >= '\x0300' && c <= '\x036F'
isGreekandCoptic :: Char -> Bool
isGreekandCoptic c = c >= '\x0370' && c <= '\x03FF'
isCyrillic :: Char -> Bool
isCyrillic c = c >= '\x0400' && c <= '\x04FF'
isCyrillicSupplement :: Char -> Bool
isCyrillicSupplement c = c >= '\x0500' && c <= '\x052F'
isArmenian :: Char -> Bool
isArmenian c = c >= '\x0530' && c <= '\x058F'
isHebrew :: Char -> Bool
isHebrew c = c >= '\x0590' && c <= '\x05FF'
isArabic :: Char -> Bool
isArabic c = c >= '\x0600' && c <= '\x06FF'
isSyriac :: Char -> Bool
isSyriac c = c >= '\x0700' && c <= '\x074F'
isArabicSupplement :: Char -> Bool
isArabicSupplement c = c >= '\x0750' && c <= '\x077F'
isThaana :: Char -> Bool
isThaana c = c >= '\x0780' && c <= '\x07BF'
isNKo :: Char -> Bool
isNKo c = c >= '\x07C0' && c <= '\x07FF'
isSamaritan :: Char -> Bool
isSamaritan c = c >= '\x0800' && c <= '\x083F'
isMandaic :: Char -> Bool
isMandaic c = c >= '\x0840' && c <= '\x085F'
isArabicExtendedA :: Char -> Bool
isArabicExtendedA c = c >= '\x08A0' && c <= '\x08FF'
isDevanagari :: Char -> Bool
isDevanagari c = c >= '\x0900' && c <= '\x097F'
isBengali :: Char -> Bool
isBengali c = c >= '\x0980' && c <= '\x09FF'
isGurmukhi :: Char -> Bool
isGurmukhi c = c >= '\x0A00' && c <= '\x0A7F'
isGujarati :: Char -> Bool
isGujarati c = c >= '\x0A80' && c <= '\x0AFF'
isOriya :: Char -> Bool
isOriya c = c >= '\x0B00' && c <= '\x0B7F'
isTamil :: Char -> Bool
isTamil c = c >= '\x0B80' && c <= '\x0BFF'
isTelugu :: Char -> Bool
isTelugu c = c >= '\x0C00' && c <= '\x0C7F'
isKannada :: Char -> Bool
isKannada c = c >= '\x0C80' && c <= '\x0CFF'
isMalayalam :: Char -> Bool
isMalayalam c = c >= '\x0D00' && c <= '\x0D7F'
isSinhala :: Char -> Bool
isSinhala c = c >= '\x0D80' && c <= '\x0DFF'
isThai :: Char -> Bool
isThai c = c >= '\x0E00' && c <= '\x0E7F'
isLao :: Char -> Bool
isLao c = c >= '\x0E80' && c <= '\x0EFF'
isTibetan :: Char -> Bool
isTibetan c = c >= '\x0F00' && c <= '\x0FFF'
isMyanmar :: Char -> Bool
isMyanmar c = c >= '\x1000' && c <= '\x109F'
isGeorgian :: Char -> Bool
isGeorgian c = c >= '\x10A0' && c <= '\x10FF'
isHangulJamo :: Char -> Bool
isHangulJamo c = c >= '\x1100' && c <= '\x11FF'
isEthiopic :: Char -> Bool
isEthiopic c = c >= '\x1200' && c <= '\x137F'
isEthiopicSupplement :: Char -> Bool
isEthiopicSupplement c = c >= '\x1380' && c <= '\x139F'
isCherokee :: Char -> Bool
isCherokee c = c >= '\x13A0' && c <= '\x13FF'
isUnifiedCanadianAboriginalSyllabics :: Char -> Bool
isUnifiedCanadianAboriginalSyllabics c = c >= '\x1400' && c <= '\x167F'
isOgham :: Char -> Bool
isOgham c = c >= '\x1680' && c <= '\x169F'
isRunic :: Char -> Bool
isRunic c = c >= '\x16A0' && c <= '\x16FF'
isTagalog :: Char -> Bool
isTagalog c = c >= '\x1700' && c <= '\x171F'
isHanunoo :: Char -> Bool
isHanunoo c = c >= '\x1720' && c <= '\x173F'
isBuhid :: Char -> Bool
isBuhid c = c >= '\x1740' && c <= '\x175F'
isTagbanwa :: Char -> Bool
isTagbanwa c = c >= '\x1760' && c <= '\x177F'
isKhmer :: Char -> Bool
isKhmer c = c >= '\x1780' && c <= '\x17FF'
isMongolian :: Char -> Bool
isMongolian c = c >= '\x1800' && c <= '\x18AF'
isUnifiedCanadianAboriginalSyllabicsExtended :: Char -> Bool
isUnifiedCanadianAboriginalSyllabicsExtended c = c >= '\x18B0' && c <= '\x18FF'
isLimbu :: Char -> Bool
isLimbu c = c >= '\x1900' && c <= '\x194F'
isTaiLe :: Char -> Bool
isTaiLe c = c >= '\x1950' && c <= '\x197F'
isNewTaiLue :: Char -> Bool
isNewTaiLue c = c >= '\x1980' && c <= '\x19DF'
isKhmerSymbols :: Char -> Bool
isKhmerSymbols c = c >= '\x19E0' && c <= '\x19FF'
isBuginese :: Char -> Bool
isBuginese c = c >= '\x1A00' && c <= '\x1A1F'
isTaiTham :: Char -> Bool
isTaiTham c = c >= '\x1A20' && c <= '\x1AAF'
isCombiningDiacriticalMarksExtended :: Char -> Bool
isCombiningDiacriticalMarksExtended c = c >= '\x1AB0' && c <= '\x1AFF'
isBalinese :: Char -> Bool
isBalinese c = c >= '\x1B00' && c <= '\x1B7F'
isSundanese :: Char -> Bool
isSundanese c = c >= '\x1B80' && c <= '\x1BBF'
isBatak :: Char -> Bool
isBatak c = c >= '\x1BC0' && c <= '\x1BFF'
isLepcha :: Char -> Bool
isLepcha c = c >= '\x1C00' && c <= '\x1C4F'
isOlChiki :: Char -> Bool
isOlChiki c = c >= '\x1C50' && c <= '\x1C7F'
isSundaneseSupplement :: Char -> Bool
isSundaneseSupplement c = c >= '\x1CC0' && c <= '\x1CCF'
isVedicExtensions :: Char -> Bool
isVedicExtensions c = c >= '\x1CD0' && c <= '\x1CFF'
isPhoneticExtensions :: Char -> Bool
isPhoneticExtensions c = c >= '\x1D00' && c <= '\x1D7F'
isPhoneticExtensionsSupplement :: Char -> Bool
isPhoneticExtensionsSupplement c = c >= '\x1D80' && c <= '\x1DBF'
isCombiningDiacriticalMarksSupplement :: Char -> Bool
isCombiningDiacriticalMarksSupplement c = c >= '\x1DC0' && c <= '\x1DFF'
isLatinExtendedAdditional :: Char -> Bool
isLatinExtendedAdditional c = c >= '\x1E00' && c <= '\x1EFF'
isGreekExtended :: Char -> Bool
isGreekExtended c = c >= '\x1F00' && c <= '\x1FFF'
isGeneralPunctuation :: Char -> Bool
isGeneralPunctuation c = c >= '\x2000' && c <= '\x206F'
isSuperscriptsandSubscripts :: Char -> Bool
isSuperscriptsandSubscripts c = c >= '\x2070' && c <= '\x209F'
isCurrencySymbols :: Char -> Bool
isCurrencySymbols c = c >= '\x20A0' && c <= '\x20CF'
isCombiningDiacriticalMarksforSymbols :: Char -> Bool
isCombiningDiacriticalMarksforSymbols c = c >= '\x20D0' && c <= '\x20FF'
isLetterlikeSymbols :: Char -> Bool
isLetterlikeSymbols c = c >= '\x2100' && c <= '\x214F'
isNumberForms :: Char -> Bool
isNumberForms c = c >= '\x2150' && c <= '\x218F'
isArrows :: Char -> Bool
isArrows c = c >= '\x2190' && c <= '\x21FF'
isMathematicalOperators :: Char -> Bool
isMathematicalOperators c = c >= '\x2200' && c <= '\x22FF'
isMiscellaneousTechnical :: Char -> Bool
isMiscellaneousTechnical c = c >= '\x2300' && c <= '\x23FF'
isControlPictures :: Char -> Bool
isControlPictures c = c >= '\x2400' && c <= '\x243F'
isOpticalCharacterRecognition :: Char -> Bool
isOpticalCharacterRecognition c = c >= '\x2440' && c <= '\x245F'
isEnclosedAlphanumerics :: Char -> Bool
isEnclosedAlphanumerics c = c >= '\x2460' && c <= '\x24FF'
isBoxDrawing :: Char -> Bool
isBoxDrawing c = c >= '\x2500' && c <= '\x257F'
isBlockElements :: Char -> Bool
isBlockElements c = c >= '\x2580' && c <= '\x259F'
isGeometricShapes :: Char -> Bool
isGeometricShapes c = c >= '\x25A0' && c <= '\x25FF'
isMiscellaneousSymbols :: Char -> Bool
isMiscellaneousSymbols c = c >= '\x2600' && c <= '\x26FF'
isDingbats :: Char -> Bool
isDingbats c = c >= '\x2700' && c <= '\x27BF'
isMiscellaneousMathematicalSymbolsA :: Char -> Bool
isMiscellaneousMathematicalSymbolsA c = c >= '\x27C0' && c <= '\x27EF'
isSupplementalArrowsA :: Char -> Bool
isSupplementalArrowsA c = c >= '\x27F0' && c <= '\x27FF'
isBraillePatterns :: Char -> Bool
isBraillePatterns c = c >= '\x2800' && c <= '\x28FF'
isSupplementalArrowsB :: Char -> Bool
isSupplementalArrowsB c = c >= '\x2900' && c <= '\x297F'
isMiscellaneousMathematicalSymbolsB :: Char -> Bool
isMiscellaneousMathematicalSymbolsB c = c >= '\x2980' && c <= '\x29FF'
isSupplementalMathematicalOperators :: Char -> Bool
isSupplementalMathematicalOperators c = c >= '\x2A00' && c <= '\x2AFF'
isMiscellaneousSymbolsandArrows :: Char -> Bool
isMiscellaneousSymbolsandArrows c = c >= '\x2B00' && c <= '\x2BFF'
isGlagolitic :: Char -> Bool
isGlagolitic c = c >= '\x2C00' && c <= '\x2C5F'
isLatinExtendedC :: Char -> Bool
isLatinExtendedC c = c >= '\x2C60' && c <= '\x2C7F'
isCoptic :: Char -> Bool
isCoptic c = c >= '\x2C80' && c <= '\x2CFF'
isGeorgianSupplement :: Char -> Bool
isGeorgianSupplement c = c >= '\x2D00' && c <= '\x2D2F'
isTifinagh :: Char -> Bool
isTifinagh c = c >= '\x2D30' && c <= '\x2D7F'
isEthiopicExtended :: Char -> Bool
isEthiopicExtended c = c >= '\x2D80' && c <= '\x2DDF'
isCyrillicExtendedA :: Char -> Bool
isCyrillicExtendedA c = c >= '\x2DE0' && c <= '\x2DFF'
isSupplementalPunctuation :: Char -> Bool
isSupplementalPunctuation c = c >= '\x2E00' && c <= '\x2E7F'
isCJKRadicalsSupplement :: Char -> Bool
isCJKRadicalsSupplement c = c >= '\x2E80' && c <= '\x2EFF'
isKangxiRadicals :: Char -> Bool
isKangxiRadicals c = c >= '\x2F00' && c <= '\x2FDF'
isIdeographicDescriptionCharacters :: Char -> Bool
isIdeographicDescriptionCharacters c = c >= '\x2FF0' && c <= '\x2FFF'
isCJKSymbolsandPunctuation :: Char -> Bool
isCJKSymbolsandPunctuation c = c >= '\x3000' && c <= '\x303F'
isHiragana :: Char -> Bool
isHiragana c = c >= '\x3040' && c <= '\x309F'
isKatakana :: Char -> Bool
isKatakana c = c >= '\x30A0' && c <= '\x30FF'
isBopomofo :: Char -> Bool
isBopomofo c = c >= '\x3100' && c <= '\x312F'
isHangulCompatibilityJamo :: Char -> Bool
isHangulCompatibilityJamo c = c >= '\x3130' && c <= '\x318F'
isKanbun :: Char -> Bool
isKanbun c = c >= '\x3190' && c <= '\x319F'
isBopomofoExtended :: Char -> Bool
isBopomofoExtended c = c >= '\x31A0' && c <= '\x31BF'
isCJKStrokes :: Char -> Bool
isCJKStrokes c = c >= '\x31C0' && c <= '\x31EF'
isKatakanaPhoneticExtensions :: Char -> Bool
isKatakanaPhoneticExtensions c = c >= '\x31F0' && c <= '\x31FF'
isEnclosedCJKLettersandMonths :: Char -> Bool
isEnclosedCJKLettersandMonths c = c >= '\x3200' && c <= '\x32FF'
isCJKCompatibility :: Char -> Bool
isCJKCompatibility c = c >= '\x3300' && c <= '\x33FF'
isCJKUnifiedIdeographsExtensionA :: Char -> Bool
isCJKUnifiedIdeographsExtensionA c = c >= '\x3400' && c <= '\x4DBF'
isYijingHexagramSymbols :: Char -> Bool
isYijingHexagramSymbols c = c >= '\x4DC0' && c <= '\x4DFF'
isCJKUnifiedIdeographs :: Char -> Bool
isCJKUnifiedIdeographs c = c >= '\x4E00' && c <= '\x9FFF'
isYiSyllables :: Char -> Bool
isYiSyllables c = c >= '\xA000' && c <= '\xA48F'
isYiRadicals :: Char -> Bool
isYiRadicals c = c >= '\xA490' && c <= '\xA4CF'
isLisu :: Char -> Bool
isLisu c = c >= '\xA4D0' && c <= '\xA4FF'
isVai :: Char -> Bool
isVai c = c >= '\xA500' && c <= '\xA63F'
isCyrillicExtendedB :: Char -> Bool
isCyrillicExtendedB c = c >= '\xA640' && c <= '\xA69F'
isBamum :: Char -> Bool
isBamum c = c >= '\xA6A0' && c <= '\xA6FF'
isModifierToneLetters :: Char -> Bool
isModifierToneLetters c = c >= '\xA700' && c <= '\xA71F'
isLatinExtendedD :: Char -> Bool
isLatinExtendedD c = c >= '\xA720' && c <= '\xA7FF'
isSylotiNagri :: Char -> Bool
isSylotiNagri c = c >= '\xA800' && c <= '\xA82F'
isCommonIndicNumberForms :: Char -> Bool
isCommonIndicNumberForms c = c >= '\xA830' && c <= '\xA83F'
isPhagspa :: Char -> Bool
isPhagspa c = c >= '\xA840' && c <= '\xA87F'
isSaurashtra :: Char -> Bool
isSaurashtra c = c >= '\xA880' && c <= '\xA8DF'
isDevanagariExtended :: Char -> Bool
isDevanagariExtended c = c >= '\xA8E0' && c <= '\xA8FF'
isKayahLi :: Char -> Bool
isKayahLi c = c >= '\xA900' && c <= '\xA92F'
isRejang :: Char -> Bool
isRejang c = c >= '\xA930' && c <= '\xA95F'
isHangulJamoExtendedA :: Char -> Bool
isHangulJamoExtendedA c = c >= '\xA960' && c <= '\xA97F'
isJavanese :: Char -> Bool
isJavanese c = c >= '\xA980' && c <= '\xA9DF'
isMyanmarExtendedB :: Char -> Bool
isMyanmarExtendedB c = c >= '\xA9E0' && c <= '\xA9FF'
isCham :: Char -> Bool
isCham c = c >= '\xAA00' && c <= '\xAA5F'
isMyanmarExtendedA :: Char -> Bool
isMyanmarExtendedA c = c >= '\xAA60' && c <= '\xAA7F'
isTaiViet :: Char -> Bool
isTaiViet c = c >= '\xAA80' && c <= '\xAADF'
isMeeteiMayekExtensions :: Char -> Bool
isMeeteiMayekExtensions c = c >= '\xAAE0' && c <= '\xAAFF'
isEthiopicExtendedA :: Char -> Bool
isEthiopicExtendedA c = c >= '\xAB00' && c <= '\xAB2F'
isLatinExtendedE :: Char -> Bool
isLatinExtendedE c = c >= '\xAB30' && c <= '\xAB6F'
isMeeteiMayek :: Char -> Bool
isMeeteiMayek c = c >= '\xABC0' && c <= '\xABFF'
isHangulSyllables :: Char -> Bool
isHangulSyllables c = c >= '\xAC00' && c <= '\xD7AF'
isHangulJamoExtendedB :: Char -> Bool
isHangulJamoExtendedB c = c >= '\xD7B0' && c <= '\xD7FF'
isHighSurrogates :: Char -> Bool
isHighSurrogates c = c >= '\xD800' && c <= '\xDB7F'
isHighPrivateUseSurrogates :: Char -> Bool
isHighPrivateUseSurrogates c = c >= '\xDB80' && c <= '\xDBFF'
isLowSurrogates :: Char -> Bool
isLowSurrogates c = c >= '\xDC00' && c <= '\xDFFF'
isPrivateUseArea :: Char -> Bool
isPrivateUseArea c = c >= '\xE000' && c <= '\xF8FF'
isCJKCompatibilityIdeographs :: Char -> Bool
isCJKCompatibilityIdeographs c = c >= '\xF900' && c <= '\xFAFF'
isAlphabeticPresentationForms :: Char -> Bool
isAlphabeticPresentationForms c = c >= '\xFB00' && c <= '\xFB4F'
isArabicPresentationFormsA :: Char -> Bool
isArabicPresentationFormsA c = c >= '\xFB50' && c <= '\xFDFF'
isVariationSelectors :: Char -> Bool
isVariationSelectors c = c >= '\xFE00' && c <= '\xFE0F'
isVerticalForms :: Char -> Bool
isVerticalForms c = c >= '\xFE10' && c <= '\xFE1F'
isCombiningHalfMarks :: Char -> Bool
isCombiningHalfMarks c = c >= '\xFE20' && c <= '\xFE2F'
isCJKCompatibilityForms :: Char -> Bool
isCJKCompatibilityForms c = c >= '\xFE30' && c <= '\xFE4F'
isSmallFormVariants :: Char -> Bool
isSmallFormVariants c = c >= '\xFE50' && c <= '\xFE6F'
isArabicPresentationFormsB :: Char -> Bool
isArabicPresentationFormsB c = c >= '\xFE70' && c <= '\xFEFF'
isHalfwidthandFullwidthForms :: Char -> Bool
isHalfwidthandFullwidthForms c = c >= '\xFF00' && c <= '\xFFEF'
isSpecials :: Char -> Bool
isSpecials c = c >= '\xFFF0' && c <= '\xFFFF'
isLinearBSyllabary :: Char -> Bool
isLinearBSyllabary c = c >= '\x10000' && c <= '\x1007F'
isLinearBIdeograms :: Char -> Bool
isLinearBIdeograms c = c >= '\x10080' && c <= '\x100FF'
isAegeanNumbers :: Char -> Bool
isAegeanNumbers c = c >= '\x10100' && c <= '\x1013F'
isAncientGreekNumbers :: Char -> Bool
isAncientGreekNumbers c = c >= '\x10140' && c <= '\x1018F'
isAncientSymbols :: Char -> Bool
isAncientSymbols c = c >= '\x10190' && c <= '\x101CF'
isPhaistosDisc :: Char -> Bool
isPhaistosDisc c = c >= '\x101D0' && c <= '\x101FF'
isLycian :: Char -> Bool
isLycian c = c >= '\x10280' && c <= '\x1029F'
isCarian :: Char -> Bool
isCarian c = c >= '\x102A0' && c <= '\x102DF'
isCopticEpactNumbers :: Char -> Bool
isCopticEpactNumbers c = c >= '\x102E0' && c <= '\x102FF'
isOldItalic :: Char -> Bool
isOldItalic c = c >= '\x10300' && c <= '\x1032F'
isGothic :: Char -> Bool
isGothic c = c >= '\x10330' && c <= '\x1034F'
isOldPermic :: Char -> Bool
isOldPermic c = c >= '\x10350' && c <= '\x1037F'
isUgaritic :: Char -> Bool
isUgaritic c = c >= '\x10380' && c <= '\x1039F'
isOldPersian :: Char -> Bool
isOldPersian c = c >= '\x103A0' && c <= '\x103DF'
isDeseret :: Char -> Bool
isDeseret c = c >= '\x10400' && c <= '\x1044F'
isShavian :: Char -> Bool
isShavian c = c >= '\x10450' && c <= '\x1047F'
isOsmanya :: Char -> Bool
isOsmanya c = c >= '\x10480' && c <= '\x104AF'
isElbasan :: Char -> Bool
isElbasan c = c >= '\x10500' && c <= '\x1052F'
isCaucasianAlbanian :: Char -> Bool
isCaucasianAlbanian c = c >= '\x10530' && c <= '\x1056F'
isLinearA :: Char -> Bool
isLinearA c = c >= '\x10600' && c <= '\x1077F'
isCypriotSyllabary :: Char -> Bool
isCypriotSyllabary c = c >= '\x10800' && c <= '\x1083F'
isImperialAramaic :: Char -> Bool
isImperialAramaic c = c >= '\x10840' && c <= '\x1085F'
isPalmyrene :: Char -> Bool
isPalmyrene c = c >= '\x10860' && c <= '\x1087F'
isNabataean :: Char -> Bool
isNabataean c = c >= '\x10880' && c <= '\x108AF'
isPhoenician :: Char -> Bool
isPhoenician c = c >= '\x10900' && c <= '\x1091F'
isLydian :: Char -> Bool
isLydian c = c >= '\x10920' && c <= '\x1093F'
isMeroiticHieroglyphs :: Char -> Bool
isMeroiticHieroglyphs c = c >= '\x10980' && c <= '\x1099F'
isMeroiticCursive :: Char -> Bool
isMeroiticCursive c = c >= '\x109A0' && c <= '\x109FF'
isKharoshthi :: Char -> Bool
isKharoshthi c = c >= '\x10A00' && c <= '\x10A5F'
isOldSouthArabian :: Char -> Bool
isOldSouthArabian c = c >= '\x10A60' && c <= '\x10A7F'
isOldNorthArabian :: Char -> Bool
isOldNorthArabian c = c >= '\x10A80' && c <= '\x10A9F'
isManichaean :: Char -> Bool
isManichaean c = c >= '\x10AC0' && c <= '\x10AFF'
isAvestan :: Char -> Bool
isAvestan c = c >= '\x10B00' && c <= '\x10B3F'
isInscriptionalParthian :: Char -> Bool
isInscriptionalParthian c = c >= '\x10B40' && c <= '\x10B5F'
isInscriptionalPahlavi :: Char -> Bool
isInscriptionalPahlavi c = c >= '\x10B60' && c <= '\x10B7F'
isPsalterPahlavi :: Char -> Bool
isPsalterPahlavi c = c >= '\x10B80' && c <= '\x10BAF'
isOldTurkic :: Char -> Bool
isOldTurkic c = c >= '\x10C00' && c <= '\x10C4F'
isRumiNumeralSymbols :: Char -> Bool
isRumiNumeralSymbols c = c >= '\x10E60' && c <= '\x10E7F'
isBrahmi :: Char -> Bool
isBrahmi c = c >= '\x11000' && c <= '\x1107F'
isKaithi :: Char -> Bool
isKaithi c = c >= '\x11080' && c <= '\x110CF'
isSoraSompeng :: Char -> Bool
isSoraSompeng c = c >= '\x110D0' && c <= '\x110FF'
isChakma :: Char -> Bool
isChakma c = c >= '\x11100' && c <= '\x1114F'
isMahajani :: Char -> Bool
isMahajani c = c >= '\x11150' && c <= '\x1117F'
isSharada :: Char -> Bool
isSharada c = c >= '\x11180' && c <= '\x111DF'
isSinhalaArchaicNumbers :: Char -> Bool
isSinhalaArchaicNumbers c = c >= '\x111E0' && c <= '\x111FF'
isKhojki :: Char -> Bool
isKhojki c = c >= '\x11200' && c <= '\x1124F'
isKhudawadi :: Char -> Bool
isKhudawadi c = c >= '\x112B0' && c <= '\x112FF'
isGrantha :: Char -> Bool
isGrantha c = c >= '\x11300' && c <= '\x1137F'
isTirhuta :: Char -> Bool
isTirhuta c = c >= '\x11480' && c <= '\x114DF'
isSiddham :: Char -> Bool
isSiddham c = c >= '\x11580' && c <= '\x115FF'
isModi :: Char -> Bool
isModi c = c >= '\x11600' && c <= '\x1165F'
isTakri :: Char -> Bool
isTakri c = c >= '\x11680' && c <= '\x116CF'
isWarangCiti :: Char -> Bool
isWarangCiti c = c >= '\x118A0' && c <= '\x118FF'
isPauCinHau :: Char -> Bool
isPauCinHau c = c >= '\x11AC0' && c <= '\x11AFF'
isCuneiform :: Char -> Bool
isCuneiform c = c >= '\x12000' && c <= '\x123FF'
isCuneiformNumbersandPunctuation :: Char -> Bool
isCuneiformNumbersandPunctuation c = c >= '\x12400' && c <= '\x1247F'
isEgyptianHieroglyphs :: Char -> Bool
isEgyptianHieroglyphs c = c >= '\x13000' && c <= '\x1342F'
isBamumSupplement :: Char -> Bool
isBamumSupplement c = c >= '\x16800' && c <= '\x16A3F'
isMro :: Char -> Bool
isMro c = c >= '\x16A40' && c <= '\x16A6F'
isBassaVah :: Char -> Bool
isBassaVah c = c >= '\x16AD0' && c <= '\x16AFF'
isPahawhHmong :: Char -> Bool
isPahawhHmong c = c >= '\x16B00' && c <= '\x16B8F'
isMiao :: Char -> Bool
isMiao c = c >= '\x16F00' && c <= '\x16F9F'
isKanaSupplement :: Char -> Bool
isKanaSupplement c = c >= '\x1B000' && c <= '\x1B0FF'
isDuployan :: Char -> Bool
isDuployan c = c >= '\x1BC00' && c <= '\x1BC9F'
isShorthandFormatControls :: Char -> Bool
isShorthandFormatControls c = c >= '\x1BCA0' && c <= '\x1BCAF'
isByzantineMusicalSymbols :: Char -> Bool
isByzantineMusicalSymbols c = c >= '\x1D000' && c <= '\x1D0FF'
isMusicalSymbols :: Char -> Bool
isMusicalSymbols c = c >= '\x1D100' && c <= '\x1D1FF'
isAncientGreekMusicalNotation :: Char -> Bool
isAncientGreekMusicalNotation c = c >= '\x1D200' && c <= '\x1D24F'
isTaiXuanJingSymbols :: Char -> Bool
isTaiXuanJingSymbols c = c >= '\x1D300' && c <= '\x1D35F'
isCountingRodNumerals :: Char -> Bool
isCountingRodNumerals c = c >= '\x1D360' && c <= '\x1D37F'
isMathematicalAlphanumericSymbols :: Char -> Bool
isMathematicalAlphanumericSymbols c = c >= '\x1D400' && c <= '\x1D7FF'
isMendeKikakui :: Char -> Bool
isMendeKikakui c = c >= '\x1E800' && c <= '\x1E8DF'
isArabicMathematicalAlphabeticSymbols :: Char -> Bool
isArabicMathematicalAlphabeticSymbols c = c >= '\x1EE00' && c <= '\x1EEFF'
isMahjongTiles :: Char -> Bool
isMahjongTiles c = c >= '\x1F000' && c <= '\x1F02F'
isDominoTiles :: Char -> Bool
isDominoTiles c = c >= '\x1F030' && c <= '\x1F09F'
isPlayingCards :: Char -> Bool
isPlayingCards c = c >= '\x1F0A0' && c <= '\x1F0FF'
isEnclosedAlphanumericSupplement :: Char -> Bool
isEnclosedAlphanumericSupplement c = c >= '\x1F100' && c <= '\x1F1FF'
isEnclosedIdeographicSupplement :: Char -> Bool
isEnclosedIdeographicSupplement c = c >= '\x1F200' && c <= '\x1F2FF'
isMiscellaneousSymbolsandPictographs :: Char -> Bool
isMiscellaneousSymbolsandPictographs c = c >= '\x1F300' && c <= '\x1F5FF'
isEmoticons :: Char -> Bool
isEmoticons c = c >= '\x1F600' && c <= '\x1F64F'
isOrnamentalDingbats :: Char -> Bool
isOrnamentalDingbats c = c >= '\x1F650' && c <= '\x1F67F'
isTransportandMapSymbols :: Char -> Bool
isTransportandMapSymbols c = c >= '\x1F680' && c <= '\x1F6FF'
isAlchemicalSymbols :: Char -> Bool
isAlchemicalSymbols c = c >= '\x1F700' && c <= '\x1F77F'
isGeometricShapesExtended :: Char -> Bool
isGeometricShapesExtended c = c >= '\x1F780' && c <= '\x1F7FF'
isSupplementalArrowsC :: Char -> Bool
isSupplementalArrowsC c = c >= '\x1F800' && c <= '\x1F8FF'
isCJKUnifiedIdeographsExtensionB :: Char -> Bool
isCJKUnifiedIdeographsExtensionB c = c >= '\x20000' && c <= '\x2A6DF'
isCJKUnifiedIdeographsExtensionC :: Char -> Bool
isCJKUnifiedIdeographsExtensionC c = c >= '\x2A700' && c <= '\x2B73F'
isCJKUnifiedIdeographsExtensionD :: Char -> Bool
isCJKUnifiedIdeographsExtensionD c = c >= '\x2B740' && c <= '\x2B81F'
isCJKCompatibilityIdeographsSupplement :: Char -> Bool
isCJKCompatibilityIdeographsSupplement c = c >= '\x2F800' && c <= '\x2FA1F'
isTags :: Char -> Bool
isTags c = c >= '\xE0000' && c <= '\xE007F'
isVariationSelectorsSupplement :: Char -> Bool
isVariationSelectorsSupplement c = c >= '\xE0100' && c <= '\xE01EF'
isSupplementaryPrivateUseAreaA :: Char -> Bool
isSupplementaryPrivateUseAreaA c = c >= '\xF0000' && c <= '\xFFFFF'
isSupplementaryPrivateUseAreaB :: Char -> Bool
isSupplementaryPrivateUseAreaB c = c >= '\x100000' && c <= '\x10FFFF'