    -- ------------------------------------------------------------

    {- |
       Module     : Data.Char.Properties.UnicodeBlocks
       Copyright  : Copyright (C) 2010- Uwe Schmidt
       License    : MIT

       Maintainer : Uwe Schmidt (uwe@fh-wedel.de)
       Stability  : stable
       Portability: portable

       Unicode Code Blocks

       don't edit this module
       it's generated from 'http:\/\/www.unicode.org\/Public\/UNIDATA\/Blocks.txt'
    -}

    -- ------------------------------------------------------------

    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
      , isSyriacSupplement
      , 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
      , isCyrillicExtendedC
      , isGeorgianExtended
      , 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
      , isCherokeeSupplement
      , 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
      , isOsage
      , isElbasan
      , isCaucasianAlbanian
      , isLinearA
      , isCypriotSyllabary
      , isImperialAramaic
      , isPalmyrene
      , isNabataean
      , isHatran
      , isPhoenician
      , isLydian
      , isMeroiticHieroglyphs
      , isMeroiticCursive
      , isKharoshthi
      , isOldSouthArabian
      , isOldNorthArabian
      , isManichaean
      , isAvestan
      , isInscriptionalParthian
      , isInscriptionalPahlavi
      , isPsalterPahlavi
      , isOldTurkic
      , isOldHungarian
      , isHanifiRohingya
      , isRumiNumeralSymbols
      , isOldSogdian
      , isSogdian
      , isElymaic
      , isBrahmi
      , isKaithi
      , isSoraSompeng
      , isChakma
      , isMahajani
      , isSharada
      , isSinhalaArchaicNumbers
      , isKhojki
      , isMultani
      , isKhudawadi
      , isGrantha
      , isNewa
      , isTirhuta
      , isSiddham
      , isModi
      , isMongolianSupplement
      , isTakri
      , isAhom
      , isDogra
      , isWarangCiti
      , isNandinagari
      , isZanabazarSquare
      , isSoyombo
      , isPauCinHau
      , isBhaiksuki
      , isMarchen
      , isMasaramGondi
      , isGunjalaGondi
      , isMakasar
      , isTamilSupplement
      , isCuneiform
      , isCuneiformNumbersandPunctuation
      , isEarlyDynasticCuneiform
      , isEgyptianHieroglyphs
      , isEgyptianHieroglyphFormatControls
      , isAnatolianHieroglyphs
      , isBamumSupplement
      , isMro
      , isBassaVah
      , isPahawhHmong
      , isMedefaidrin
      , isMiao
      , isIdeographicSymbolsandPunctuation
      , isTangut
      , isTangutComponents
      , isKanaSupplement
      , isKanaExtendedA
      , isSmallKanaExtension
      , isNushu
      , isDuployan
      , isShorthandFormatControls
      , isByzantineMusicalSymbols
      , isMusicalSymbols
      , isAncientGreekMusicalNotation
      , isMayanNumerals
      , isTaiXuanJingSymbols
      , isCountingRodNumerals
      , isMathematicalAlphanumericSymbols
      , isSuttonSignWriting
      , isGlagoliticSupplement
      , isNyiakengPuachueHmong
      , isWancho
      , isMendeKikakui
      , isAdlam
      , isIndicSiyaqNumbers
      , isOttomanSiyaqNumbers
      , isArabicMathematicalAlphabeticSymbols
      , isMahjongTiles
      , isDominoTiles
      , isPlayingCards
      , isEnclosedAlphanumericSupplement
      , isEnclosedIdeographicSupplement
      , isMiscellaneousSymbolsandPictographs
      , isEmoticons
      , isOrnamentalDingbats
      , isTransportandMapSymbols
      , isAlchemicalSymbols
      , isGeometricShapesExtended
      , isSupplementalArrowsC
      , isSupplementalSymbolsandPictographs
      , isChessSymbols
      , isSymbolsandPictographsExtendedA
      , isCJKUnifiedIdeographsExtensionB
      , isCJKUnifiedIdeographsExtensionC
      , isCJKUnifiedIdeographsExtensionD
      , isCJKUnifiedIdeographsExtensionE
      , isCJKUnifiedIdeographsExtensionF
      , isCJKCompatibilityIdeographsSupplement
      , isTags
      , isVariationSelectorsSupplement
      , isSupplementaryPrivateUseAreaA
      , isSupplementaryPrivateUseAreaB
      )
    where

    -- ------------------------------------------------------------

    versionUnicode :: String
    versionUnicode :: String
    versionUnicode = "12.1.0"

    elemCodeBlock     :: Char -> String -> Bool
    elemCodeBlock :: Char -> String -> Bool
    elemCodeBlock c :: Char
    c b :: String
    b = Bool -> ((Char, Char) -> Bool) -> Maybe (Char, Char) -> Bool
    forall b a. b -> (a -> b) -> Maybe a -> b
    maybe Bool
    False (\ (lb :: Char
    lb, ub :: Char
    ub) -> Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= Char
    lb Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= Char
    ub) (Maybe (Char, Char) -> Bool) -> Maybe (Char, Char) -> Bool
    forall a b. (a -> b) -> a -> b
    $ String -> [(String, (Char, Char))] -> Maybe (Char, Char)
    forall a b. Eq a => a -> [(a, b)] -> Maybe b
    lookup String
    b [(String, (Char, Char))]
    codeBlocks

    codeBlocks        :: [(String, (Char, Char))]
    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') )
        , ( "SyriacSupplement", ( '\x0860', '\x086F') )
        , ( "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') )
        , ( "CyrillicExtended-C", ( '\x1C80', '\x1C8F') )
        , ( "GeorgianExtended", ( '\x1C90', '\x1CBF') )
        , ( "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') )
        , ( "CherokeeSupplement", ( '\xAB70', '\xABBF') )
        , ( "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') )
        , ( "Osage", ( '\x104B0', '\x104FF') )
        , ( "Elbasan", ( '\x10500', '\x1052F') )
        , ( "CaucasianAlbanian", ( '\x10530', '\x1056F') )
        , ( "LinearA", ( '\x10600', '\x1077F') )
        , ( "CypriotSyllabary", ( '\x10800', '\x1083F') )
        , ( "ImperialAramaic", ( '\x10840', '\x1085F') )
        , ( "Palmyrene", ( '\x10860', '\x1087F') )
        , ( "Nabataean", ( '\x10880', '\x108AF') )
        , ( "Hatran", ( '\x108E0', '\x108FF') )
        , ( "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') )
        , ( "OldHungarian", ( '\x10C80', '\x10CFF') )
        , ( "HanifiRohingya", ( '\x10D00', '\x10D3F') )
        , ( "RumiNumeralSymbols", ( '\x10E60', '\x10E7F') )
        , ( "OldSogdian", ( '\x10F00', '\x10F2F') )
        , ( "Sogdian", ( '\x10F30', '\x10F6F') )
        , ( "Elymaic", ( '\x10FE0', '\x10FFF') )
        , ( "Brahmi", ( '\x11000', '\x1107F') )
        , ( "Kaithi", ( '\x11080', '\x110CF') )
        , ( "SoraSompeng", ( '\x110D0', '\x110FF') )
        , ( "Chakma", ( '\x11100', '\x1114F') )
        , ( "Mahajani", ( '\x11150', '\x1117F') )
        , ( "Sharada", ( '\x11180', '\x111DF') )
        , ( "SinhalaArchaicNumbers", ( '\x111E0', '\x111FF') )
        , ( "Khojki", ( '\x11200', '\x1124F') )
        , ( "Multani", ( '\x11280', '\x112AF') )
        , ( "Khudawadi", ( '\x112B0', '\x112FF') )
        , ( "Grantha", ( '\x11300', '\x1137F') )
        , ( "Newa", ( '\x11400', '\x1147F') )
        , ( "Tirhuta", ( '\x11480', '\x114DF') )
        , ( "Siddham", ( '\x11580', '\x115FF') )
        , ( "Modi", ( '\x11600', '\x1165F') )
        , ( "MongolianSupplement", ( '\x11660', '\x1167F') )
        , ( "Takri", ( '\x11680', '\x116CF') )
        , ( "Ahom", ( '\x11700', '\x1173F') )
        , ( "Dogra", ( '\x11800', '\x1184F') )
        , ( "WarangCiti", ( '\x118A0', '\x118FF') )
        , ( "Nandinagari", ( '\x119A0', '\x119FF') )
        , ( "ZanabazarSquare", ( '\x11A00', '\x11A4F') )
        , ( "Soyombo", ( '\x11A50', '\x11AAF') )
        , ( "PauCinHau", ( '\x11AC0', '\x11AFF') )
        , ( "Bhaiksuki", ( '\x11C00', '\x11C6F') )
        , ( "Marchen", ( '\x11C70', '\x11CBF') )
        , ( "MasaramGondi", ( '\x11D00', '\x11D5F') )
        , ( "GunjalaGondi", ( '\x11D60', '\x11DAF') )
        , ( "Makasar", ( '\x11EE0', '\x11EFF') )
        , ( "TamilSupplement", ( '\x11FC0', '\x11FFF') )
        , ( "Cuneiform", ( '\x12000', '\x123FF') )
        , ( "CuneiformNumbersandPunctuation", ( '\x12400', '\x1247F') )
        , ( "EarlyDynasticCuneiform", ( '\x12480', '\x1254F') )
        , ( "EgyptianHieroglyphs", ( '\x13000', '\x1342F') )
        , ( "EgyptianHieroglyphFormatControls", ( '\x13430', '\x1343F') )
        , ( "AnatolianHieroglyphs", ( '\x14400', '\x1467F') )
        , ( "BamumSupplement", ( '\x16800', '\x16A3F') )
        , ( "Mro", ( '\x16A40', '\x16A6F') )
        , ( "BassaVah", ( '\x16AD0', '\x16AFF') )
        , ( "PahawhHmong", ( '\x16B00', '\x16B8F') )
        , ( "Medefaidrin", ( '\x16E40', '\x16E9F') )
        , ( "Miao", ( '\x16F00', '\x16F9F') )
        , ( "IdeographicSymbolsandPunctuation", ( '\x16FE0', '\x16FFF') )
        , ( "Tangut", ( '\x17000', '\x187FF') )
        , ( "TangutComponents", ( '\x18800', '\x18AFF') )
        , ( "KanaSupplement", ( '\x1B000', '\x1B0FF') )
        , ( "KanaExtended-A", ( '\x1B100', '\x1B12F') )
        , ( "SmallKanaExtension", ( '\x1B130', '\x1B16F') )
        , ( "Nushu", ( '\x1B170', '\x1B2FF') )
        , ( "Duployan", ( '\x1BC00', '\x1BC9F') )
        , ( "ShorthandFormatControls", ( '\x1BCA0', '\x1BCAF') )
        , ( "ByzantineMusicalSymbols", ( '\x1D000', '\x1D0FF') )
        , ( "MusicalSymbols", ( '\x1D100', '\x1D1FF') )
        , ( "AncientGreekMusicalNotation", ( '\x1D200', '\x1D24F') )
        , ( "MayanNumerals", ( '\x1D2E0', '\x1D2FF') )
        , ( "TaiXuanJingSymbols", ( '\x1D300', '\x1D35F') )
        , ( "CountingRodNumerals", ( '\x1D360', '\x1D37F') )
        , ( "MathematicalAlphanumericSymbols", ( '\x1D400', '\x1D7FF') )
        , ( "SuttonSignWriting", ( '\x1D800', '\x1DAAF') )
        , ( "GlagoliticSupplement", ( '\x1E000', '\x1E02F') )
        , ( "NyiakengPuachueHmong", ( '\x1E100', '\x1E14F') )
        , ( "Wancho", ( '\x1E2C0', '\x1E2FF') )
        , ( "MendeKikakui", ( '\x1E800', '\x1E8DF') )
        , ( "Adlam", ( '\x1E900', '\x1E95F') )
        , ( "IndicSiyaqNumbers", ( '\x1EC70', '\x1ECBF') )
        , ( "OttomanSiyaqNumbers", ( '\x1ED00', '\x1ED4F') )
        , ( "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') )
        , ( "SupplementalSymbolsandPictographs", ( '\x1F900', '\x1F9FF') )
        , ( "ChessSymbols", ( '\x1FA00', '\x1FA6F') )
        , ( "SymbolsandPictographsExtended-A", ( '\x1FA70', '\x1FAFF') )
        , ( "CJKUnifiedIdeographsExtensionB", ( '\x20000', '\x2A6DF') )
        , ( "CJKUnifiedIdeographsExtensionC", ( '\x2A700', '\x2B73F') )
        , ( "CJKUnifiedIdeographsExtensionD", ( '\x2B740', '\x2B81F') )
        , ( "CJKUnifiedIdeographsExtensionE", ( '\x2B820', '\x2CEAF') )
        , ( "CJKUnifiedIdeographsExtensionF", ( '\x2CEB0', '\x2EBEF') )
        , ( "CJKCompatibilityIdeographsSupplement", ( '\x2F800', '\x2FA1F') )
        , ( "Tags", ( '\xE0000', '\xE007F') )
        , ( "VariationSelectorsSupplement", ( '\xE0100', '\xE01EF') )
        , ( "SupplementaryPrivateUseArea-A", ( '\xF0000', '\xFFFFF') )
        , ( "SupplementaryPrivateUseArea-B", ( '\x100000', '\x10FFFF') )
        ]

    -- ------------------------------------------------------------

    isBasicLatin   :: Char -> Bool
    isBasicLatin :: Char -> Bool
    isBasicLatin c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x007F'

    isLatin1Supplement   :: Char -> Bool
    isLatin1Supplement :: Char -> Bool
    isLatin1Supplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0080' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x00FF'

    isLatinExtendedA   :: Char -> Bool
    isLatinExtendedA :: Char -> Bool
    isLatinExtendedA c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0100' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x017F'

    isLatinExtendedB   :: Char -> Bool
    isLatinExtendedB :: Char -> Bool
    isLatinExtendedB c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0180' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x024F'

    isIPAExtensions   :: Char -> Bool
    isIPAExtensions :: Char -> Bool
    isIPAExtensions c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0250' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x02AF'

    isSpacingModifierLetters   :: Char -> Bool
    isSpacingModifierLetters :: Char -> Bool
    isSpacingModifierLetters c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x02B0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x02FF'

    isCombiningDiacriticalMarks   :: Char -> Bool
    isCombiningDiacriticalMarks :: Char -> Bool
    isCombiningDiacriticalMarks c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0300' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x036F'

    isGreekandCoptic   :: Char -> Bool
    isGreekandCoptic :: Char -> Bool
    isGreekandCoptic c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0370' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x03FF'

    isCyrillic   :: Char -> Bool
    isCyrillic :: Char -> Bool
    isCyrillic c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0400' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x04FF'

    isCyrillicSupplement   :: Char -> Bool
    isCyrillicSupplement :: Char -> Bool
    isCyrillicSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0500' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x052F'

    isArmenian   :: Char -> Bool
    isArmenian :: Char -> Bool
    isArmenian c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0530' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x058F'

    isHebrew   :: Char -> Bool
    isHebrew :: Char -> Bool
    isHebrew c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0590' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x05FF'

    isArabic   :: Char -> Bool
    isArabic :: Char -> Bool
    isArabic c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0600' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x06FF'

    isSyriac   :: Char -> Bool
    isSyriac :: Char -> Bool
    isSyriac c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0700' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x074F'

    isArabicSupplement   :: Char -> Bool
    isArabicSupplement :: Char -> Bool
    isArabicSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0750' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x077F'

    isThaana   :: Char -> Bool
    isThaana :: Char -> Bool
    isThaana c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0780' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x07BF'

    isNKo   :: Char -> Bool
    isNKo :: Char -> Bool
    isNKo c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x07C0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x07FF'

    isSamaritan   :: Char -> Bool
    isSamaritan :: Char -> Bool
    isSamaritan c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0800' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x083F'

    isMandaic   :: Char -> Bool
    isMandaic :: Char -> Bool
    isMandaic c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0840' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x085F'

    isSyriacSupplement   :: Char -> Bool
    isSyriacSupplement :: Char -> Bool
    isSyriacSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0860' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x086F'

    isArabicExtendedA   :: Char -> Bool
    isArabicExtendedA :: Char -> Bool
    isArabicExtendedA c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x08A0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x08FF'

    isDevanagari   :: Char -> Bool
    isDevanagari :: Char -> Bool
    isDevanagari c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0900' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x097F'

    isBengali   :: Char -> Bool
    isBengali :: Char -> Bool
    isBengali c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0980' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x09FF'

    isGurmukhi   :: Char -> Bool
    isGurmukhi :: Char -> Bool
    isGurmukhi c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0A00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x0A7F'

    isGujarati   :: Char -> Bool
    isGujarati :: Char -> Bool
    isGujarati c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0A80' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x0AFF'

    isOriya   :: Char -> Bool
    isOriya :: Char -> Bool
    isOriya c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0B00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x0B7F'

    isTamil   :: Char -> Bool
    isTamil :: Char -> Bool
    isTamil c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0B80' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x0BFF'

    isTelugu   :: Char -> Bool
    isTelugu :: Char -> Bool
    isTelugu c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0C00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x0C7F'

    isKannada   :: Char -> Bool
    isKannada :: Char -> Bool
    isKannada c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0C80' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x0CFF'

    isMalayalam   :: Char -> Bool
    isMalayalam :: Char -> Bool
    isMalayalam c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0D00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x0D7F'

    isSinhala   :: Char -> Bool
    isSinhala :: Char -> Bool
    isSinhala c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0D80' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x0DFF'

    isThai   :: Char -> Bool
    isThai :: Char -> Bool
    isThai c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0E00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x0E7F'

    isLao   :: Char -> Bool
    isLao :: Char -> Bool
    isLao c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0E80' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x0EFF'

    isTibetan   :: Char -> Bool
    isTibetan :: Char -> Bool
    isTibetan c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x0F00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x0FFF'

    isMyanmar   :: Char -> Bool
    isMyanmar :: Char -> Bool
    isMyanmar c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x109F'

    isGeorgian   :: Char -> Bool
    isGeorgian :: Char -> Bool
    isGeorgian c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10A0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10FF'

    isHangulJamo   :: Char -> Bool
    isHangulJamo :: Char -> Bool
    isHangulJamo c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1100' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x11FF'

    isEthiopic   :: Char -> Bool
    isEthiopic :: Char -> Bool
    isEthiopic c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1200' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x137F'

    isEthiopicSupplement   :: Char -> Bool
    isEthiopicSupplement :: Char -> Bool
    isEthiopicSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1380' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x139F'

    isCherokee   :: Char -> Bool
    isCherokee :: Char -> Bool
    isCherokee c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x13A0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x13FF'

    isUnifiedCanadianAboriginalSyllabics   :: Char -> Bool
    isUnifiedCanadianAboriginalSyllabics :: Char -> Bool
    isUnifiedCanadianAboriginalSyllabics c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1400' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x167F'

    isOgham   :: Char -> Bool
    isOgham :: Char -> Bool
    isOgham c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1680' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x169F'

    isRunic   :: Char -> Bool
    isRunic :: Char -> Bool
    isRunic c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x16A0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x16FF'

    isTagalog   :: Char -> Bool
    isTagalog :: Char -> Bool
    isTagalog c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1700' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x171F'

    isHanunoo   :: Char -> Bool
    isHanunoo :: Char -> Bool
    isHanunoo c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1720' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x173F'

    isBuhid   :: Char -> Bool
    isBuhid :: Char -> Bool
    isBuhid c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1740' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x175F'

    isTagbanwa   :: Char -> Bool
    isTagbanwa :: Char -> Bool
    isTagbanwa c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1760' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x177F'

    isKhmer   :: Char -> Bool
    isKhmer :: Char -> Bool
    isKhmer c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1780' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x17FF'

    isMongolian   :: Char -> Bool
    isMongolian :: Char -> Bool
    isMongolian c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1800' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x18AF'

    isUnifiedCanadianAboriginalSyllabicsExtended   :: Char -> Bool
    isUnifiedCanadianAboriginalSyllabicsExtended :: Char -> Bool
    isUnifiedCanadianAboriginalSyllabicsExtended c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x18B0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x18FF'

    isLimbu   :: Char -> Bool
    isLimbu :: Char -> Bool
    isLimbu c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1900' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x194F'

    isTaiLe   :: Char -> Bool
    isTaiLe :: Char -> Bool
    isTaiLe c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1950' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x197F'

    isNewTaiLue   :: Char -> Bool
    isNewTaiLue :: Char -> Bool
    isNewTaiLue c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1980' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x19DF'

    isKhmerSymbols   :: Char -> Bool
    isKhmerSymbols :: Char -> Bool
    isKhmerSymbols c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x19E0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x19FF'

    isBuginese   :: Char -> Bool
    isBuginese :: Char -> Bool
    isBuginese c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1A00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1A1F'

    isTaiTham   :: Char -> Bool
    isTaiTham :: Char -> Bool
    isTaiTham c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1A20' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1AAF'

    isCombiningDiacriticalMarksExtended   :: Char -> Bool
    isCombiningDiacriticalMarksExtended :: Char -> Bool
    isCombiningDiacriticalMarksExtended c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1AB0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1AFF'

    isBalinese   :: Char -> Bool
    isBalinese :: Char -> Bool
    isBalinese c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1B00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1B7F'

    isSundanese   :: Char -> Bool
    isSundanese :: Char -> Bool
    isSundanese c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1B80' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1BBF'

    isBatak   :: Char -> Bool
    isBatak :: Char -> Bool
    isBatak c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1BC0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1BFF'

    isLepcha   :: Char -> Bool
    isLepcha :: Char -> Bool
    isLepcha c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1C00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1C4F'

    isOlChiki   :: Char -> Bool
    isOlChiki :: Char -> Bool
    isOlChiki c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1C50' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1C7F'

    isCyrillicExtendedC   :: Char -> Bool
    isCyrillicExtendedC :: Char -> Bool
    isCyrillicExtendedC c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1C80' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1C8F'

    isGeorgianExtended   :: Char -> Bool
    isGeorgianExtended :: Char -> Bool
    isGeorgianExtended c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1C90' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1CBF'

    isSundaneseSupplement   :: Char -> Bool
    isSundaneseSupplement :: Char -> Bool
    isSundaneseSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1CC0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1CCF'

    isVedicExtensions   :: Char -> Bool
    isVedicExtensions :: Char -> Bool
    isVedicExtensions c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1CD0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1CFF'

    isPhoneticExtensions   :: Char -> Bool
    isPhoneticExtensions :: Char -> Bool
    isPhoneticExtensions c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1D00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1D7F'

    isPhoneticExtensionsSupplement   :: Char -> Bool
    isPhoneticExtensionsSupplement :: Char -> Bool
    isPhoneticExtensionsSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1D80' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1DBF'

    isCombiningDiacriticalMarksSupplement   :: Char -> Bool
    isCombiningDiacriticalMarksSupplement :: Char -> Bool
    isCombiningDiacriticalMarksSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1DC0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1DFF'

    isLatinExtendedAdditional   :: Char -> Bool
    isLatinExtendedAdditional :: Char -> Bool
    isLatinExtendedAdditional c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1E00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1EFF'

    isGreekExtended   :: Char -> Bool
    isGreekExtended :: Char -> Bool
    isGreekExtended c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1F00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1FFF'

    isGeneralPunctuation   :: Char -> Bool
    isGeneralPunctuation :: Char -> Bool
    isGeneralPunctuation c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x206F'

    isSuperscriptsandSubscripts   :: Char -> Bool
    isSuperscriptsandSubscripts :: Char -> Bool
    isSuperscriptsandSubscripts c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2070' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x209F'

    isCurrencySymbols   :: Char -> Bool
    isCurrencySymbols :: Char -> Bool
    isCurrencySymbols c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x20A0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x20CF'

    isCombiningDiacriticalMarksforSymbols   :: Char -> Bool
    isCombiningDiacriticalMarksforSymbols :: Char -> Bool
    isCombiningDiacriticalMarksforSymbols c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x20D0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x20FF'

    isLetterlikeSymbols   :: Char -> Bool
    isLetterlikeSymbols :: Char -> Bool
    isLetterlikeSymbols c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2100' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x214F'

    isNumberForms   :: Char -> Bool
    isNumberForms :: Char -> Bool
    isNumberForms c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2150' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x218F'

    isArrows   :: Char -> Bool
    isArrows :: Char -> Bool
    isArrows c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2190' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x21FF'

    isMathematicalOperators   :: Char -> Bool
    isMathematicalOperators :: Char -> Bool
    isMathematicalOperators c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2200' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x22FF'

    isMiscellaneousTechnical   :: Char -> Bool
    isMiscellaneousTechnical :: Char -> Bool
    isMiscellaneousTechnical c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2300' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x23FF'

    isControlPictures   :: Char -> Bool
    isControlPictures :: Char -> Bool
    isControlPictures c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2400' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x243F'

    isOpticalCharacterRecognition   :: Char -> Bool
    isOpticalCharacterRecognition :: Char -> Bool
    isOpticalCharacterRecognition c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2440' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x245F'

    isEnclosedAlphanumerics   :: Char -> Bool
    isEnclosedAlphanumerics :: Char -> Bool
    isEnclosedAlphanumerics c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2460' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x24FF'

    isBoxDrawing   :: Char -> Bool
    isBoxDrawing :: Char -> Bool
    isBoxDrawing c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2500' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x257F'

    isBlockElements   :: Char -> Bool
    isBlockElements :: Char -> Bool
    isBlockElements c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2580' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x259F'

    isGeometricShapes   :: Char -> Bool
    isGeometricShapes :: Char -> Bool
    isGeometricShapes c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x25A0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x25FF'

    isMiscellaneousSymbols   :: Char -> Bool
    isMiscellaneousSymbols :: Char -> Bool
    isMiscellaneousSymbols c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2600' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x26FF'

    isDingbats   :: Char -> Bool
    isDingbats :: Char -> Bool
    isDingbats c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2700' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x27BF'

    isMiscellaneousMathematicalSymbolsA   :: Char -> Bool
    isMiscellaneousMathematicalSymbolsA :: Char -> Bool
    isMiscellaneousMathematicalSymbolsA c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x27C0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x27EF'

    isSupplementalArrowsA   :: Char -> Bool
    isSupplementalArrowsA :: Char -> Bool
    isSupplementalArrowsA c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x27F0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x27FF'

    isBraillePatterns   :: Char -> Bool
    isBraillePatterns :: Char -> Bool
    isBraillePatterns c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2800' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x28FF'

    isSupplementalArrowsB   :: Char -> Bool
    isSupplementalArrowsB :: Char -> Bool
    isSupplementalArrowsB c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2900' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x297F'

    isMiscellaneousMathematicalSymbolsB   :: Char -> Bool
    isMiscellaneousMathematicalSymbolsB :: Char -> Bool
    isMiscellaneousMathematicalSymbolsB c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2980' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x29FF'

    isSupplementalMathematicalOperators   :: Char -> Bool
    isSupplementalMathematicalOperators :: Char -> Bool
    isSupplementalMathematicalOperators c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2A00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2AFF'

    isMiscellaneousSymbolsandArrows   :: Char -> Bool
    isMiscellaneousSymbolsandArrows :: Char -> Bool
    isMiscellaneousSymbolsandArrows c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2B00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2BFF'

    isGlagolitic   :: Char -> Bool
    isGlagolitic :: Char -> Bool
    isGlagolitic c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2C00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2C5F'

    isLatinExtendedC   :: Char -> Bool
    isLatinExtendedC :: Char -> Bool
    isLatinExtendedC c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2C60' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2C7F'

    isCoptic   :: Char -> Bool
    isCoptic :: Char -> Bool
    isCoptic c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2C80' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2CFF'

    isGeorgianSupplement   :: Char -> Bool
    isGeorgianSupplement :: Char -> Bool
    isGeorgianSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2D00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2D2F'

    isTifinagh   :: Char -> Bool
    isTifinagh :: Char -> Bool
    isTifinagh c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2D30' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2D7F'

    isEthiopicExtended   :: Char -> Bool
    isEthiopicExtended :: Char -> Bool
    isEthiopicExtended c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2D80' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2DDF'

    isCyrillicExtendedA   :: Char -> Bool
    isCyrillicExtendedA :: Char -> Bool
    isCyrillicExtendedA c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2DE0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2DFF'

    isSupplementalPunctuation   :: Char -> Bool
    isSupplementalPunctuation :: Char -> Bool
    isSupplementalPunctuation c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2E00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2E7F'

    isCJKRadicalsSupplement   :: Char -> Bool
    isCJKRadicalsSupplement :: Char -> Bool
    isCJKRadicalsSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2E80' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2EFF'

    isKangxiRadicals   :: Char -> Bool
    isKangxiRadicals :: Char -> Bool
    isKangxiRadicals c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2F00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2FDF'

    isIdeographicDescriptionCharacters   :: Char -> Bool
    isIdeographicDescriptionCharacters :: Char -> Bool
    isIdeographicDescriptionCharacters c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2FF0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2FFF'

    isCJKSymbolsandPunctuation   :: Char -> Bool
    isCJKSymbolsandPunctuation :: Char -> Bool
    isCJKSymbolsandPunctuation c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x3000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x303F'

    isHiragana   :: Char -> Bool
    isHiragana :: Char -> Bool
    isHiragana c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x3040' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x309F'

    isKatakana   :: Char -> Bool
    isKatakana :: Char -> Bool
    isKatakana c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x30A0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x30FF'

    isBopomofo   :: Char -> Bool
    isBopomofo :: Char -> Bool
    isBopomofo c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x3100' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x312F'

    isHangulCompatibilityJamo   :: Char -> Bool
    isHangulCompatibilityJamo :: Char -> Bool
    isHangulCompatibilityJamo c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x3130' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x318F'

    isKanbun   :: Char -> Bool
    isKanbun :: Char -> Bool
    isKanbun c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x3190' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x319F'

    isBopomofoExtended   :: Char -> Bool
    isBopomofoExtended :: Char -> Bool
    isBopomofoExtended c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x31A0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x31BF'

    isCJKStrokes   :: Char -> Bool
    isCJKStrokes :: Char -> Bool
    isCJKStrokes c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x31C0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x31EF'

    isKatakanaPhoneticExtensions   :: Char -> Bool
    isKatakanaPhoneticExtensions :: Char -> Bool
    isKatakanaPhoneticExtensions c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x31F0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x31FF'

    isEnclosedCJKLettersandMonths   :: Char -> Bool
    isEnclosedCJKLettersandMonths :: Char -> Bool
    isEnclosedCJKLettersandMonths c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x3200' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x32FF'

    isCJKCompatibility   :: Char -> Bool
    isCJKCompatibility :: Char -> Bool
    isCJKCompatibility c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x3300' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x33FF'

    isCJKUnifiedIdeographsExtensionA   :: Char -> Bool
    isCJKUnifiedIdeographsExtensionA :: Char -> Bool
    isCJKUnifiedIdeographsExtensionA c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x3400' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x4DBF'

    isYijingHexagramSymbols   :: Char -> Bool
    isYijingHexagramSymbols :: Char -> Bool
    isYijingHexagramSymbols c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x4DC0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x4DFF'

    isCJKUnifiedIdeographs   :: Char -> Bool
    isCJKUnifiedIdeographs :: Char -> Bool
    isCJKUnifiedIdeographs c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x4E00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x9FFF'

    isYiSyllables   :: Char -> Bool
    isYiSyllables :: Char -> Bool
    isYiSyllables c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA48F'

    isYiRadicals   :: Char -> Bool
    isYiRadicals :: Char -> Bool
    isYiRadicals c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA490' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA4CF'

    isLisu   :: Char -> Bool
    isLisu :: Char -> Bool
    isLisu c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA4D0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA4FF'

    isVai   :: Char -> Bool
    isVai :: Char -> Bool
    isVai c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA500' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA63F'

    isCyrillicExtendedB   :: Char -> Bool
    isCyrillicExtendedB :: Char -> Bool
    isCyrillicExtendedB c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA640' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA69F'

    isBamum   :: Char -> Bool
    isBamum :: Char -> Bool
    isBamum c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA6A0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA6FF'

    isModifierToneLetters   :: Char -> Bool
    isModifierToneLetters :: Char -> Bool
    isModifierToneLetters c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA700' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA71F'

    isLatinExtendedD   :: Char -> Bool
    isLatinExtendedD :: Char -> Bool
    isLatinExtendedD c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA720' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA7FF'

    isSylotiNagri   :: Char -> Bool
    isSylotiNagri :: Char -> Bool
    isSylotiNagri c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA800' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA82F'

    isCommonIndicNumberForms   :: Char -> Bool
    isCommonIndicNumberForms :: Char -> Bool
    isCommonIndicNumberForms c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA830' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA83F'

    isPhagspa   :: Char -> Bool
    isPhagspa :: Char -> Bool
    isPhagspa c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA840' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA87F'

    isSaurashtra   :: Char -> Bool
    isSaurashtra :: Char -> Bool
    isSaurashtra c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA880' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA8DF'

    isDevanagariExtended   :: Char -> Bool
    isDevanagariExtended :: Char -> Bool
    isDevanagariExtended c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA8E0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA8FF'

    isKayahLi   :: Char -> Bool
    isKayahLi :: Char -> Bool
    isKayahLi c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA900' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA92F'

    isRejang   :: Char -> Bool
    isRejang :: Char -> Bool
    isRejang c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA930' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA95F'

    isHangulJamoExtendedA   :: Char -> Bool
    isHangulJamoExtendedA :: Char -> Bool
    isHangulJamoExtendedA c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA960' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA97F'

    isJavanese   :: Char -> Bool
    isJavanese :: Char -> Bool
    isJavanese c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA980' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA9DF'

    isMyanmarExtendedB   :: Char -> Bool
    isMyanmarExtendedB :: Char -> Bool
    isMyanmarExtendedB c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xA9E0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xA9FF'

    isCham   :: Char -> Bool
    isCham :: Char -> Bool
    isCham c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xAA00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xAA5F'

    isMyanmarExtendedA   :: Char -> Bool
    isMyanmarExtendedA :: Char -> Bool
    isMyanmarExtendedA c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xAA60' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xAA7F'

    isTaiViet   :: Char -> Bool
    isTaiViet :: Char -> Bool
    isTaiViet c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xAA80' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xAADF'

    isMeeteiMayekExtensions   :: Char -> Bool
    isMeeteiMayekExtensions :: Char -> Bool
    isMeeteiMayekExtensions c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xAAE0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xAAFF'

    isEthiopicExtendedA   :: Char -> Bool
    isEthiopicExtendedA :: Char -> Bool
    isEthiopicExtendedA c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xAB00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xAB2F'

    isLatinExtendedE   :: Char -> Bool
    isLatinExtendedE :: Char -> Bool
    isLatinExtendedE c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xAB30' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xAB6F'

    isCherokeeSupplement   :: Char -> Bool
    isCherokeeSupplement :: Char -> Bool
    isCherokeeSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xAB70' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xABBF'

    isMeeteiMayek   :: Char -> Bool
    isMeeteiMayek :: Char -> Bool
    isMeeteiMayek c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xABC0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xABFF'

    isHangulSyllables   :: Char -> Bool
    isHangulSyllables :: Char -> Bool
    isHangulSyllables c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xAC00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xD7AF'

    isHangulJamoExtendedB   :: Char -> Bool
    isHangulJamoExtendedB :: Char -> Bool
    isHangulJamoExtendedB c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xD7B0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xD7FF'

    isHighSurrogates   :: Char -> Bool
    isHighSurrogates :: Char -> Bool
    isHighSurrogates c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xD800' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xDB7F'

    isHighPrivateUseSurrogates   :: Char -> Bool
    isHighPrivateUseSurrogates :: Char -> Bool
    isHighPrivateUseSurrogates c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xDB80' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xDBFF'

    isLowSurrogates   :: Char -> Bool
    isLowSurrogates :: Char -> Bool
    isLowSurrogates c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xDC00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xDFFF'

    isPrivateUseArea   :: Char -> Bool
    isPrivateUseArea :: Char -> Bool
    isPrivateUseArea c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xE000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xF8FF'

    isCJKCompatibilityIdeographs   :: Char -> Bool
    isCJKCompatibilityIdeographs :: Char -> Bool
    isCJKCompatibilityIdeographs c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xF900' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xFAFF'

    isAlphabeticPresentationForms   :: Char -> Bool
    isAlphabeticPresentationForms :: Char -> Bool
    isAlphabeticPresentationForms c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xFB00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xFB4F'

    isArabicPresentationFormsA   :: Char -> Bool
    isArabicPresentationFormsA :: Char -> Bool
    isArabicPresentationFormsA c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xFB50' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xFDFF'

    isVariationSelectors   :: Char -> Bool
    isVariationSelectors :: Char -> Bool
    isVariationSelectors c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xFE00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xFE0F'

    isVerticalForms   :: Char -> Bool
    isVerticalForms :: Char -> Bool
    isVerticalForms c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xFE10' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xFE1F'

    isCombiningHalfMarks   :: Char -> Bool
    isCombiningHalfMarks :: Char -> Bool
    isCombiningHalfMarks c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xFE20' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xFE2F'

    isCJKCompatibilityForms   :: Char -> Bool
    isCJKCompatibilityForms :: Char -> Bool
    isCJKCompatibilityForms c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xFE30' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xFE4F'

    isSmallFormVariants   :: Char -> Bool
    isSmallFormVariants :: Char -> Bool
    isSmallFormVariants c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xFE50' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xFE6F'

    isArabicPresentationFormsB   :: Char -> Bool
    isArabicPresentationFormsB :: Char -> Bool
    isArabicPresentationFormsB c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xFE70' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xFEFF'

    isHalfwidthandFullwidthForms   :: Char -> Bool
    isHalfwidthandFullwidthForms :: Char -> Bool
    isHalfwidthandFullwidthForms c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xFF00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xFFEF'

    isSpecials   :: Char -> Bool
    isSpecials :: Char -> Bool
    isSpecials c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xFFF0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xFFFF'

    isLinearBSyllabary   :: Char -> Bool
    isLinearBSyllabary :: Char -> Bool
    isLinearBSyllabary c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1007F'

    isLinearBIdeograms   :: Char -> Bool
    isLinearBIdeograms :: Char -> Bool
    isLinearBIdeograms c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10080' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x100FF'

    isAegeanNumbers   :: Char -> Bool
    isAegeanNumbers :: Char -> Bool
    isAegeanNumbers c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10100' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1013F'

    isAncientGreekNumbers   :: Char -> Bool
    isAncientGreekNumbers :: Char -> Bool
    isAncientGreekNumbers c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10140' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1018F'

    isAncientSymbols   :: Char -> Bool
    isAncientSymbols :: Char -> Bool
    isAncientSymbols c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10190' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x101CF'

    isPhaistosDisc   :: Char -> Bool
    isPhaistosDisc :: Char -> Bool
    isPhaistosDisc c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x101D0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x101FF'

    isLycian   :: Char -> Bool
    isLycian :: Char -> Bool
    isLycian c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10280' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1029F'

    isCarian   :: Char -> Bool
    isCarian :: Char -> Bool
    isCarian c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x102A0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x102DF'

    isCopticEpactNumbers   :: Char -> Bool
    isCopticEpactNumbers :: Char -> Bool
    isCopticEpactNumbers c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x102E0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x102FF'

    isOldItalic   :: Char -> Bool
    isOldItalic :: Char -> Bool
    isOldItalic c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10300' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1032F'

    isGothic   :: Char -> Bool
    isGothic :: Char -> Bool
    isGothic c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10330' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1034F'

    isOldPermic   :: Char -> Bool
    isOldPermic :: Char -> Bool
    isOldPermic c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10350' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1037F'

    isUgaritic   :: Char -> Bool
    isUgaritic :: Char -> Bool
    isUgaritic c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10380' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1039F'

    isOldPersian   :: Char -> Bool
    isOldPersian :: Char -> Bool
    isOldPersian c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x103A0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x103DF'

    isDeseret   :: Char -> Bool
    isDeseret :: Char -> Bool
    isDeseret c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10400' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1044F'

    isShavian   :: Char -> Bool
    isShavian :: Char -> Bool
    isShavian c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10450' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1047F'

    isOsmanya   :: Char -> Bool
    isOsmanya :: Char -> Bool
    isOsmanya c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10480' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x104AF'

    isOsage   :: Char -> Bool
    isOsage :: Char -> Bool
    isOsage c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x104B0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x104FF'

    isElbasan   :: Char -> Bool
    isElbasan :: Char -> Bool
    isElbasan c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10500' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1052F'

    isCaucasianAlbanian   :: Char -> Bool
    isCaucasianAlbanian :: Char -> Bool
    isCaucasianAlbanian c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10530' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1056F'

    isLinearA   :: Char -> Bool
    isLinearA :: Char -> Bool
    isLinearA c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10600' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1077F'

    isCypriotSyllabary   :: Char -> Bool
    isCypriotSyllabary :: Char -> Bool
    isCypriotSyllabary c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10800' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1083F'

    isImperialAramaic   :: Char -> Bool
    isImperialAramaic :: Char -> Bool
    isImperialAramaic c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10840' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1085F'

    isPalmyrene   :: Char -> Bool
    isPalmyrene :: Char -> Bool
    isPalmyrene c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10860' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1087F'

    isNabataean   :: Char -> Bool
    isNabataean :: Char -> Bool
    isNabataean c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10880' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x108AF'

    isHatran   :: Char -> Bool
    isHatran :: Char -> Bool
    isHatran c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x108E0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x108FF'

    isPhoenician   :: Char -> Bool
    isPhoenician :: Char -> Bool
    isPhoenician c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10900' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1091F'

    isLydian   :: Char -> Bool
    isLydian :: Char -> Bool
    isLydian c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10920' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1093F'

    isMeroiticHieroglyphs   :: Char -> Bool
    isMeroiticHieroglyphs :: Char -> Bool
    isMeroiticHieroglyphs c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10980' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1099F'

    isMeroiticCursive   :: Char -> Bool
    isMeroiticCursive :: Char -> Bool
    isMeroiticCursive c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x109A0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x109FF'

    isKharoshthi   :: Char -> Bool
    isKharoshthi :: Char -> Bool
    isKharoshthi c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10A00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10A5F'

    isOldSouthArabian   :: Char -> Bool
    isOldSouthArabian :: Char -> Bool
    isOldSouthArabian c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10A60' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10A7F'

    isOldNorthArabian   :: Char -> Bool
    isOldNorthArabian :: Char -> Bool
    isOldNorthArabian c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10A80' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10A9F'

    isManichaean   :: Char -> Bool
    isManichaean :: Char -> Bool
    isManichaean c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10AC0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10AFF'

    isAvestan   :: Char -> Bool
    isAvestan :: Char -> Bool
    isAvestan c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10B00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10B3F'

    isInscriptionalParthian   :: Char -> Bool
    isInscriptionalParthian :: Char -> Bool
    isInscriptionalParthian c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10B40' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10B5F'

    isInscriptionalPahlavi   :: Char -> Bool
    isInscriptionalPahlavi :: Char -> Bool
    isInscriptionalPahlavi c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10B60' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10B7F'

    isPsalterPahlavi   :: Char -> Bool
    isPsalterPahlavi :: Char -> Bool
    isPsalterPahlavi c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10B80' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10BAF'

    isOldTurkic   :: Char -> Bool
    isOldTurkic :: Char -> Bool
    isOldTurkic c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10C00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10C4F'

    isOldHungarian   :: Char -> Bool
    isOldHungarian :: Char -> Bool
    isOldHungarian c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10C80' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10CFF'

    isHanifiRohingya   :: Char -> Bool
    isHanifiRohingya :: Char -> Bool
    isHanifiRohingya c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10D00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10D3F'

    isRumiNumeralSymbols   :: Char -> Bool
    isRumiNumeralSymbols :: Char -> Bool
    isRumiNumeralSymbols c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10E60' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10E7F'

    isOldSogdian   :: Char -> Bool
    isOldSogdian :: Char -> Bool
    isOldSogdian c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10F00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10F2F'

    isSogdian   :: Char -> Bool
    isSogdian :: Char -> Bool
    isSogdian c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10F30' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10F6F'

    isElymaic   :: Char -> Bool
    isElymaic :: Char -> Bool
    isElymaic c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x10FE0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10FFF'

    isBrahmi   :: Char -> Bool
    isBrahmi :: Char -> Bool
    isBrahmi c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1107F'

    isKaithi   :: Char -> Bool
    isKaithi :: Char -> Bool
    isKaithi c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11080' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x110CF'

    isSoraSompeng   :: Char -> Bool
    isSoraSompeng :: Char -> Bool
    isSoraSompeng c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x110D0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x110FF'

    isChakma   :: Char -> Bool
    isChakma :: Char -> Bool
    isChakma c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11100' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1114F'

    isMahajani   :: Char -> Bool
    isMahajani :: Char -> Bool
    isMahajani c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11150' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1117F'

    isSharada   :: Char -> Bool
    isSharada :: Char -> Bool
    isSharada c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11180' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x111DF'

    isSinhalaArchaicNumbers   :: Char -> Bool
    isSinhalaArchaicNumbers :: Char -> Bool
    isSinhalaArchaicNumbers c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x111E0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x111FF'

    isKhojki   :: Char -> Bool
    isKhojki :: Char -> Bool
    isKhojki c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11200' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1124F'

    isMultani   :: Char -> Bool
    isMultani :: Char -> Bool
    isMultani c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11280' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x112AF'

    isKhudawadi   :: Char -> Bool
    isKhudawadi :: Char -> Bool
    isKhudawadi c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x112B0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x112FF'

    isGrantha   :: Char -> Bool
    isGrantha :: Char -> Bool
    isGrantha c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11300' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1137F'

    isNewa   :: Char -> Bool
    isNewa :: Char -> Bool
    isNewa c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11400' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1147F'

    isTirhuta   :: Char -> Bool
    isTirhuta :: Char -> Bool
    isTirhuta c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11480' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x114DF'

    isSiddham   :: Char -> Bool
    isSiddham :: Char -> Bool
    isSiddham c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11580' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x115FF'

    isModi   :: Char -> Bool
    isModi :: Char -> Bool
    isModi c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11600' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1165F'

    isMongolianSupplement   :: Char -> Bool
    isMongolianSupplement :: Char -> Bool
    isMongolianSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11660' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1167F'

    isTakri   :: Char -> Bool
    isTakri :: Char -> Bool
    isTakri c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11680' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x116CF'

    isAhom   :: Char -> Bool
    isAhom :: Char -> Bool
    isAhom c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11700' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1173F'

    isDogra   :: Char -> Bool
    isDogra :: Char -> Bool
    isDogra c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11800' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1184F'

    isWarangCiti   :: Char -> Bool
    isWarangCiti :: Char -> Bool
    isWarangCiti c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x118A0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x118FF'

    isNandinagari   :: Char -> Bool
    isNandinagari :: Char -> Bool
    isNandinagari c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x119A0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x119FF'

    isZanabazarSquare   :: Char -> Bool
    isZanabazarSquare :: Char -> Bool
    isZanabazarSquare c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11A00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x11A4F'

    isSoyombo   :: Char -> Bool
    isSoyombo :: Char -> Bool
    isSoyombo c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11A50' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x11AAF'

    isPauCinHau   :: Char -> Bool
    isPauCinHau :: Char -> Bool
    isPauCinHau c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11AC0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x11AFF'

    isBhaiksuki   :: Char -> Bool
    isBhaiksuki :: Char -> Bool
    isBhaiksuki c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11C00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x11C6F'

    isMarchen   :: Char -> Bool
    isMarchen :: Char -> Bool
    isMarchen c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11C70' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x11CBF'

    isMasaramGondi   :: Char -> Bool
    isMasaramGondi :: Char -> Bool
    isMasaramGondi c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11D00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x11D5F'

    isGunjalaGondi   :: Char -> Bool
    isGunjalaGondi :: Char -> Bool
    isGunjalaGondi c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11D60' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x11DAF'

    isMakasar   :: Char -> Bool
    isMakasar :: Char -> Bool
    isMakasar c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11EE0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x11EFF'

    isTamilSupplement   :: Char -> Bool
    isTamilSupplement :: Char -> Bool
    isTamilSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x11FC0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x11FFF'

    isCuneiform   :: Char -> Bool
    isCuneiform :: Char -> Bool
    isCuneiform c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x12000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x123FF'

    isCuneiformNumbersandPunctuation   :: Char -> Bool
    isCuneiformNumbersandPunctuation :: Char -> Bool
    isCuneiformNumbersandPunctuation c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x12400' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1247F'

    isEarlyDynasticCuneiform   :: Char -> Bool
    isEarlyDynasticCuneiform :: Char -> Bool
    isEarlyDynasticCuneiform c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x12480' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1254F'

    isEgyptianHieroglyphs   :: Char -> Bool
    isEgyptianHieroglyphs :: Char -> Bool
    isEgyptianHieroglyphs c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x13000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1342F'

    isEgyptianHieroglyphFormatControls   :: Char -> Bool
    isEgyptianHieroglyphFormatControls :: Char -> Bool
    isEgyptianHieroglyphFormatControls c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x13430' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1343F'

    isAnatolianHieroglyphs   :: Char -> Bool
    isAnatolianHieroglyphs :: Char -> Bool
    isAnatolianHieroglyphs c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x14400' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1467F'

    isBamumSupplement   :: Char -> Bool
    isBamumSupplement :: Char -> Bool
    isBamumSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x16800' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x16A3F'

    isMro   :: Char -> Bool
    isMro :: Char -> Bool
    isMro c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x16A40' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x16A6F'

    isBassaVah   :: Char -> Bool
    isBassaVah :: Char -> Bool
    isBassaVah c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x16AD0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x16AFF'

    isPahawhHmong   :: Char -> Bool
    isPahawhHmong :: Char -> Bool
    isPahawhHmong c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x16B00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x16B8F'

    isMedefaidrin   :: Char -> Bool
    isMedefaidrin :: Char -> Bool
    isMedefaidrin c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x16E40' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x16E9F'

    isMiao   :: Char -> Bool
    isMiao :: Char -> Bool
    isMiao c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x16F00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x16F9F'

    isIdeographicSymbolsandPunctuation   :: Char -> Bool
    isIdeographicSymbolsandPunctuation :: Char -> Bool
    isIdeographicSymbolsandPunctuation c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x16FE0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x16FFF'

    isTangut   :: Char -> Bool
    isTangut :: Char -> Bool
    isTangut c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x17000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x187FF'

    isTangutComponents   :: Char -> Bool
    isTangutComponents :: Char -> Bool
    isTangutComponents c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x18800' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x18AFF'

    isKanaSupplement   :: Char -> Bool
    isKanaSupplement :: Char -> Bool
    isKanaSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1B000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1B0FF'

    isKanaExtendedA   :: Char -> Bool
    isKanaExtendedA :: Char -> Bool
    isKanaExtendedA c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1B100' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1B12F'

    isSmallKanaExtension   :: Char -> Bool
    isSmallKanaExtension :: Char -> Bool
    isSmallKanaExtension c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1B130' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1B16F'

    isNushu   :: Char -> Bool
    isNushu :: Char -> Bool
    isNushu c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1B170' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1B2FF'

    isDuployan   :: Char -> Bool
    isDuployan :: Char -> Bool
    isDuployan c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1BC00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1BC9F'

    isShorthandFormatControls   :: Char -> Bool
    isShorthandFormatControls :: Char -> Bool
    isShorthandFormatControls c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1BCA0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1BCAF'

    isByzantineMusicalSymbols   :: Char -> Bool
    isByzantineMusicalSymbols :: Char -> Bool
    isByzantineMusicalSymbols c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1D000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1D0FF'

    isMusicalSymbols   :: Char -> Bool
    isMusicalSymbols :: Char -> Bool
    isMusicalSymbols c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1D100' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1D1FF'

    isAncientGreekMusicalNotation   :: Char -> Bool
    isAncientGreekMusicalNotation :: Char -> Bool
    isAncientGreekMusicalNotation c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1D200' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1D24F'

    isMayanNumerals   :: Char -> Bool
    isMayanNumerals :: Char -> Bool
    isMayanNumerals c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1D2E0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1D2FF'

    isTaiXuanJingSymbols   :: Char -> Bool
    isTaiXuanJingSymbols :: Char -> Bool
    isTaiXuanJingSymbols c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1D300' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1D35F'

    isCountingRodNumerals   :: Char -> Bool
    isCountingRodNumerals :: Char -> Bool
    isCountingRodNumerals c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1D360' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1D37F'

    isMathematicalAlphanumericSymbols   :: Char -> Bool
    isMathematicalAlphanumericSymbols :: Char -> Bool
    isMathematicalAlphanumericSymbols c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1D400' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1D7FF'

    isSuttonSignWriting   :: Char -> Bool
    isSuttonSignWriting :: Char -> Bool
    isSuttonSignWriting c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1D800' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1DAAF'

    isGlagoliticSupplement   :: Char -> Bool
    isGlagoliticSupplement :: Char -> Bool
    isGlagoliticSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1E000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1E02F'

    isNyiakengPuachueHmong   :: Char -> Bool
    isNyiakengPuachueHmong :: Char -> Bool
    isNyiakengPuachueHmong c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1E100' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1E14F'

    isWancho   :: Char -> Bool
    isWancho :: Char -> Bool
    isWancho c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1E2C0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1E2FF'

    isMendeKikakui   :: Char -> Bool
    isMendeKikakui :: Char -> Bool
    isMendeKikakui c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1E800' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1E8DF'

    isAdlam   :: Char -> Bool
    isAdlam :: Char -> Bool
    isAdlam c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1E900' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1E95F'

    isIndicSiyaqNumbers   :: Char -> Bool
    isIndicSiyaqNumbers :: Char -> Bool
    isIndicSiyaqNumbers c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1EC70' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1ECBF'

    isOttomanSiyaqNumbers   :: Char -> Bool
    isOttomanSiyaqNumbers :: Char -> Bool
    isOttomanSiyaqNumbers c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1ED00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1ED4F'

    isArabicMathematicalAlphabeticSymbols   :: Char -> Bool
    isArabicMathematicalAlphabeticSymbols :: Char -> Bool
    isArabicMathematicalAlphabeticSymbols c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1EE00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1EEFF'

    isMahjongTiles   :: Char -> Bool
    isMahjongTiles :: Char -> Bool
    isMahjongTiles c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1F000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1F02F'

    isDominoTiles   :: Char -> Bool
    isDominoTiles :: Char -> Bool
    isDominoTiles c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1F030' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1F09F'

    isPlayingCards   :: Char -> Bool
    isPlayingCards :: Char -> Bool
    isPlayingCards c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1F0A0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1F0FF'

    isEnclosedAlphanumericSupplement   :: Char -> Bool
    isEnclosedAlphanumericSupplement :: Char -> Bool
    isEnclosedAlphanumericSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1F100' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1F1FF'

    isEnclosedIdeographicSupplement   :: Char -> Bool
    isEnclosedIdeographicSupplement :: Char -> Bool
    isEnclosedIdeographicSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1F200' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1F2FF'

    isMiscellaneousSymbolsandPictographs   :: Char -> Bool
    isMiscellaneousSymbolsandPictographs :: Char -> Bool
    isMiscellaneousSymbolsandPictographs c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1F300' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1F5FF'

    isEmoticons   :: Char -> Bool
    isEmoticons :: Char -> Bool
    isEmoticons c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1F600' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1F64F'

    isOrnamentalDingbats   :: Char -> Bool
    isOrnamentalDingbats :: Char -> Bool
    isOrnamentalDingbats c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1F650' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1F67F'

    isTransportandMapSymbols   :: Char -> Bool
    isTransportandMapSymbols :: Char -> Bool
    isTransportandMapSymbols c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1F680' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1F6FF'

    isAlchemicalSymbols   :: Char -> Bool
    isAlchemicalSymbols :: Char -> Bool
    isAlchemicalSymbols c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1F700' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1F77F'

    isGeometricShapesExtended   :: Char -> Bool
    isGeometricShapesExtended :: Char -> Bool
    isGeometricShapesExtended c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1F780' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1F7FF'

    isSupplementalArrowsC   :: Char -> Bool
    isSupplementalArrowsC :: Char -> Bool
    isSupplementalArrowsC c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1F800' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1F8FF'

    isSupplementalSymbolsandPictographs   :: Char -> Bool
    isSupplementalSymbolsandPictographs :: Char -> Bool
    isSupplementalSymbolsandPictographs c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1F900' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1F9FF'

    isChessSymbols   :: Char -> Bool
    isChessSymbols :: Char -> Bool
    isChessSymbols c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1FA00' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1FA6F'

    isSymbolsandPictographsExtendedA   :: Char -> Bool
    isSymbolsandPictographsExtendedA :: Char -> Bool
    isSymbolsandPictographsExtendedA c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x1FA70' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x1FAFF'

    isCJKUnifiedIdeographsExtensionB   :: Char -> Bool
    isCJKUnifiedIdeographsExtensionB :: Char -> Bool
    isCJKUnifiedIdeographsExtensionB c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x20000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2A6DF'

    isCJKUnifiedIdeographsExtensionC   :: Char -> Bool
    isCJKUnifiedIdeographsExtensionC :: Char -> Bool
    isCJKUnifiedIdeographsExtensionC c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2A700' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2B73F'

    isCJKUnifiedIdeographsExtensionD   :: Char -> Bool
    isCJKUnifiedIdeographsExtensionD :: Char -> Bool
    isCJKUnifiedIdeographsExtensionD c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2B740' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2B81F'

    isCJKUnifiedIdeographsExtensionE   :: Char -> Bool
    isCJKUnifiedIdeographsExtensionE :: Char -> Bool
    isCJKUnifiedIdeographsExtensionE c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2B820' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2CEAF'

    isCJKUnifiedIdeographsExtensionF   :: Char -> Bool
    isCJKUnifiedIdeographsExtensionF :: Char -> Bool
    isCJKUnifiedIdeographsExtensionF c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2CEB0' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2EBEF'

    isCJKCompatibilityIdeographsSupplement   :: Char -> Bool
    isCJKCompatibilityIdeographsSupplement :: Char -> Bool
    isCJKCompatibilityIdeographsSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x2F800' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x2FA1F'

    isTags   :: Char -> Bool
    isTags :: Char -> Bool
    isTags c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xE0000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xE007F'

    isVariationSelectorsSupplement   :: Char -> Bool
    isVariationSelectorsSupplement :: Char -> Bool
    isVariationSelectorsSupplement c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xE0100' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xE01EF'

    isSupplementaryPrivateUseAreaA   :: Char -> Bool
    isSupplementaryPrivateUseAreaA :: Char -> Bool
    isSupplementaryPrivateUseAreaA c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\xF0000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\xFFFFF'

    isSupplementaryPrivateUseAreaB   :: Char -> Bool
    isSupplementaryPrivateUseAreaB :: Char -> Bool
    isSupplementaryPrivateUseAreaB c :: Char
    c = Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    >= '\x100000' Bool -> Bool -> Bool
    && Char
    c Char -> Char -> Bool
    forall a. Ord a => a -> a -> Bool
    <= '\x10FFFF'

    -- ------------------------------------------------------------