diff --git a/Changelog.md b/Changelog.md
--- a/Changelog.md
+++ b/Changelog.md
@@ -1,5 +1,42 @@
 # Changelog
 
+## 0.3.0 (December 2021)
+
+- Support for big-endian architectures.
+- Added `unicodeVersion`.
+- Added `GeneralCategory` data type and corresponding `generalCategoryAbbr`,
+  `generalCategory` functions.
+- Added the following functions to `Unicode.Char.General`:
+  `isAlphabetic`, `isAlphaNum`,
+  `isControl`, `isMark`, `isPrint`, `isPunctuation`, `isSeparator`,
+  `isSymbol` and `isWhiteSpace`.
+- Added the module `Unicode.Char.Numeric`.
+- Add compatibility modules:
+
+  - `Unicode.Char.General.Compat`
+  - `Unicode.Char.Case.Compat`
+
+  These modules are compatible with `base:Data.Char`.
+- Re-export some functions from `Data.Char` in order to make `Unicode.Char`
+  a drop-in replacement in a _future_ version of this package.
+- Drop support for GHC 7.10.3
+
+### Deprecations
+
+- In `Unicode.Char.Case`:
+
+  - `isUpper`: use `isUpperCase` instead.
+  - `isLower`: use `isLowerCase` instead.
+
+- In `Unicode.Char.General`:
+
+  - `isLetter`: use `isAlphabetic` instead.
+  - `isSpace`: use `isWhiteSpace` instead.
+
+- In `Unicode.Char`: same as hereinabove. These functions will be replaced in a
+  _future_ release with the functions with the same names from
+  `Unicode.Char.Case.Compat` and `Unicode.Char.General.Compat`.
+
 ## 0.2.0 (November 2021)
 
 * Update to [Unicode 14.0.0](https://www.unicode.org/versions/Unicode14.0.0/).
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -8,12 +8,108 @@
 Unicode character database (UCD) files.  The latest Unicode version
 supported by this library is 14.0.0.
 
-This package is far from complete. Currently it supports normalization
-related functions and a few other properties, primarily to support
-`unicode-transforms` package. More properties can be added as needed by
-any other packages or use cases.
-
 Please see the haddock documentation for reference documentation.
+
+## Performance
+
+`unicode-data` is up to _5 times faster_ than `base`.
+
+The following benchmark compares the time taken in milliseconds to process all
+the Unicode code points for `base-4.16` (GHC 9.2.1) and this package (v0.3).
+Machine: 8 × AMD Ryzen 5 2500U on Linux.
+
+```
+All
+  Unicode.Char.Case.Compat
+    isLower
+      base:           OK (1.53s)
+         24 ms ± 3.8 ms
+      unicode-data:   OK (2.25s)
+        4.4 ms ±  88 μs, 0.19x
+    isUpper
+      base:           OK (1.50s)
+         24 ms ± 450 μs
+      unicode-data:   OK (2.37s)
+        4.7 ms ± 200 μs, 0.19x
+    toLower
+      base:           OK (1.40s)
+         22 ms ± 1.8 ms
+      unicode-data:   OK (1.89s)
+        7.2 ms ± 297 μs, 0.32x
+    toTitle
+      base:           OK (1.25s)
+         20 ms ± 2.0 ms
+      unicode-data:   OK (1.65s)
+        6.4 ms ± 509 μs, 0.32x
+    toUpper
+      base:           OK (1.26s)
+         20 ms ± 2.5 ms
+      unicode-data:   OK (1.72s)
+        6.8 ms ± 335 μs, 0.34x
+  Unicode.Char.General
+    generalCategory
+      base:           OK (2.02s)
+        134 ms ± 1.6 ms
+      unicode-data:   OK (1.75s)
+        116 ms ± 1.6 ms, 0.87x
+    isAlphaNum
+      base:           OK (1.53s)
+         24 ms ± 1.7 ms
+      unicode-data:   OK (2.16s)
+        4.2 ms ±  29 μs, 0.18x
+    isControl
+      base:           OK (1.47s)
+         23 ms ± 2.6 ms
+      unicode-data:   OK (2.23s)
+        4.4 ms ±  22 μs, 0.19x
+    isMark
+      base:           OK (1.47s)
+         23 ms ± 624 μs
+      unicode-data:   OK (2.28s)
+        4.5 ms ±  48 μs, 0.19x
+    isPrint
+      base:           OK (1.53s)
+         25 ms ± 2.4 ms
+      unicode-data:   OK (2.27s)
+        4.4 ms ±  50 μs, 0.18x
+    isPunctuation
+      base:           OK (1.51s)
+         24 ms ± 459 μs
+      unicode-data:   OK (2.24s)
+        4.4 ms ±  25 μs, 0.18x
+    isSeparator
+      base:           OK (1.52s)
+         24 ms ± 407 μs
+      unicode-data:   OK (2.43s)
+        4.8 ms ±  94 μs, 0.20x
+    isSymbol
+      base:           OK (1.49s)
+         24 ms ± 863 μs
+      unicode-data:   OK (1.34s)
+        5.2 ms ±  92 μs, 0.22x
+  Unicode.Char.General.Compat
+    isAlpha
+      base:           OK (1.46s)
+         23 ms ± 322 μs
+      unicode-data:   OK (2.14s)
+        4.1 ms ±  36 μs, 0.18x
+    isLetter
+      base:           OK (1.44s)
+         22 ms ± 640 μs
+      unicode-data:   OK (2.17s)
+        4.3 ms ±  58 μs, 0.19x
+    isSpace
+      base:           OK (1.44s)
+         11 ms ± 1.2 ms
+      unicode-data:   OK (1.36s)
+        5.3 ms ± 243 μs, 0.49x
+  Unicode.Char.Numeric
+    isNumber
+      base:           OK (1.52s)
+         24 ms ± 368 μs
+      unicode-data:   OK (2.41s)
+        4.7 ms ±  41 μs, 0.19x
+```
 
 ## Unicode database version update
 
diff --git a/bench/Main.hs b/bench/Main.hs
new file mode 100644
--- /dev/null
+++ b/bench/Main.hs
@@ -0,0 +1,201 @@
+import Control.DeepSeq (NFData, deepseq)
+import Data.Ix (Ix(..))
+import Test.Tasty.Bench (Benchmark, bgroup, bench, bcompare, nf, defaultMain)
+
+import qualified Data.Char as B
+import qualified Unicode.Char.Case as C
+import qualified Unicode.Char.Case.Compat as CC
+import qualified Unicode.Char.General as G
+import qualified Unicode.Char.General.Compat as GC
+import qualified Unicode.Char.Identifiers as I
+import qualified Unicode.Char.Normalization as N
+import qualified Unicode.Char.Numeric as Num
+
+-- | A unit benchmark
+data Bench a = Bench
+  { _title :: !String  -- ^ Name
+  , _func :: Char -> a -- ^ Function to benchmark
+  }
+
+main :: IO ()
+main = defaultMain
+  [ bgroup "Unicode.Char.Case"
+    [ bgroup "isLowerCase"
+      [ benchNF "unicode-data" C.isLowerCase
+      ]
+    , bgroup "isUpperCase"
+      [ benchNF "unicode-data" C.isUpperCase
+      ]
+    ]
+  , bgroup "Unicode.Char.Case.Compat"
+    [ bgroup' "isLower"
+      [ Bench "base"         B.isLower
+      , Bench "unicode-data" CC.isLower
+      ]
+    , bgroup' "isUpper"
+      [ Bench "base"         B.isUpper
+      , Bench "unicode-data" CC.isUpper
+      ]
+    , bgroup' "toLower"
+      [ Bench "base"         B.toLower
+      , Bench "unicode-data" CC.toLower
+      ]
+    , bgroup' "toTitle"
+      [ Bench "base"         B.toTitle
+      , Bench "unicode-data" CC.toTitle
+      ]
+    , bgroup' "toUpper"
+      [ Bench "base"         B.toUpper
+      , Bench "unicode-data" CC.toUpper
+      ]
+    ]
+  , bgroup "Unicode.Char.General"
+    -- Character classification
+    [ bgroup' "generalCategory"
+      [ Bench "base"          (show . B.generalCategory)
+      , Bench "unicode-data"  (show . G.generalCategory)
+      ]
+    , bgroup "isAlphabetic"
+      [ benchNF "unicode-data"  G.isAlphabetic
+      ]
+    , bgroup' "isAlphaNum"
+      [ Bench "base"          B.isAlphaNum
+      , Bench "unicode-data"  G.isAlphaNum
+      ]
+    , bgroup' "isControl"
+      [ Bench "base"          B.isControl
+      , Bench "unicode-data"  G.isControl
+      ]
+    , bgroup' "isMark"
+      [ Bench "base"          B.isMark
+      , Bench "unicode-data"  G.isMark
+      ]
+    , bgroup' "isPrint"
+      [ Bench "base"          B.isPrint
+      , Bench "unicode-data"  G.isPrint
+      ]
+    , bgroup' "isPunctuation"
+      [ Bench "base"          B.isPunctuation
+      , Bench "unicode-data"  G.isPunctuation
+      ]
+    , bgroup' "isSeparator"
+      [ Bench "base"          B.isSeparator
+      , Bench "unicode-data"  G.isSeparator
+      ]
+    , bgroup' "isSymbol"
+      [ Bench "base"          B.isSymbol
+      , Bench "unicode-data"  G.isSymbol
+      ]
+    , bgroup "isWhiteSpace"
+      [ benchNF "unicode-data"  G.isWhiteSpace
+      ]
+    -- Korean Hangul Characters
+    , bgroup "isHangul"
+      [ benchNF "unicode-data"  G.isHangul
+      ]
+    , bgroup "isHangulLV"
+      [ benchNF "unicode-data"  G.isHangul
+      ]
+    , bgroup "isJamo"
+      [ benchNF "unicode-data"  G.isJamo
+      ]
+    , bgroup "jamoLIndex"
+      [ benchNF "unicode-data"  G.jamoLIndex
+      ]
+    , bgroup "jamoVIndex"
+      [ benchNF "unicode-data"  G.jamoVIndex
+      ]
+    , bgroup "jamoTIndex"
+      [ benchNF "unicode-data"  G.jamoTIndex
+      ]
+    ]
+  , bgroup "Unicode.Char.General.Compat"
+    [ bgroup' "isAlpha"
+      [ Bench "base"          B.isAlpha
+      , Bench "unicode-data"  GC.isAlpha
+      ]
+    , bgroup' "isLetter"
+      [ Bench "base"          B.isLetter
+      , Bench "unicode-data"  GC.isLetter
+      ]
+    , bgroup' "isSpace"
+      [ Bench "base"          B.isSpace
+      , Bench "unicode-data"  GC.isSpace
+      ]
+    ]
+  , bgroup "Unicode.Char.Identifiers"
+    [ bgroup "isIDContinue"
+      [ benchNF "unicode-data"  I.isIDContinue
+      ]
+    , bgroup "isIDStart"
+      [ benchNF "unicode-data"  I.isIDStart
+      ]
+    , bgroup "isXIDContinue"
+      [ benchNF "unicode-data"  I.isXIDContinue
+      ]
+    , bgroup "isXIDStart"
+      [ benchNF "unicode-data"  I.isXIDStart
+      ]
+    , bgroup "isPatternSyntax"
+      [ benchNF "unicode-data"  I.isPatternSyntax
+      ]
+    , bgroup "isPatternWhitespace"
+      [ benchNF "unicode-data"  I.isPatternWhitespace
+      ]
+    ]
+  , bgroup "Unicode.Char.Normalization"
+    [ bgroup "isCombining"
+      [ benchNF "unicode-data"  N.isCombining
+      ]
+    , bgroup "combiningClass"
+      [ benchNF "unicode-data"  N.combiningClass
+      ]
+    , bgroup "isCombiningStarter"
+      [ benchNF "unicode-data"  N.isCombiningStarter
+      ]
+    -- [TODO] compose, composeStarters
+    , bgroup "isDecomposable"
+      [ bgroup "Canonical"
+        [ benchNF "unicode-data" (N.isDecomposable N.Canonical)
+        ]
+      , bgroup "Kompat"
+        [ benchNF "unicode-data" (N.isDecomposable N.Kompat)
+        ]
+      ]
+    -- [FIXME] Fail due to non-exhaustive pattern matching
+    -- , bgroup "decompose"
+    --   [ bgroup "Canonical"
+    --     [ benchNF "unicode-data" (N.decompose N.Canonical)
+    --     ]
+    --   , bgroup "Kompat"
+    --     [ benchNF "unicode-data" (N.decompose N.Kompat)
+    --     ]
+    --   ]
+    , bgroup "decomposeHangul"
+      [ benchNF "unicode-data" N.decomposeHangul
+      ]
+    ]
+  , bgroup "Unicode.Char.Numeric"
+    [ bgroup' "isNumber"
+      [ Bench "base"          B.isNumber
+      , Bench "unicode-data"  Num.isNumber
+      ]
+    ]
+  ]
+  where
+    bgroup' groupTitle bs = bgroup groupTitle
+      [ benchNF' groupTitle title f
+      | Bench title f <- bs
+      ]
+
+    -- [NOTE] Works if groupTitle uniquely identifies the benchmark group.
+    benchNF' groupTitle title = case title of
+      "base" -> benchNF title
+      _      -> bcompare ("$NF == \"base\" && $(NF-1) == \"" ++ groupTitle ++ "\"")
+              . benchNF title
+
+    benchNF :: forall a. (NFData a) => String -> (Char -> a) -> Benchmark
+    benchNF t f = bench t $ nf (fold_ f) (minBound, maxBound)
+
+    fold_ :: forall a. (NFData a) => (Char -> a) -> (Char, Char) -> ()
+    fold_ f = foldr (deepseq . f) () . range
diff --git a/exe/Parser/Text.hs b/exe/Parser/Text.hs
--- a/exe/Parser/Text.hs
+++ b/exe/Parser/Text.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE LambdaCase #-}
+
 -- |
 -- Module      : Parser.Text
 -- Copyright   : (c) 2020 Composewell Technologies and Contributors
@@ -19,8 +21,10 @@
 import Control.Exception (catch, IOException)
 import Control.Monad (void)
 import Control.Monad.IO.Class (MonadIO(liftIO))
-import Data.Bits (shiftL)
+import Data.Bits (Bits(..))
+import Data.Word (Word8)
 import Data.Char (chr, ord, isSpace)
+import Data.Functor ((<&>))
 import Data.Function ((&))
 import Data.List (unfoldr, intersperse)
 import Data.Maybe (fromMaybe)
@@ -32,6 +36,8 @@
 import qualified Data.Set as Set
 import qualified Streamly.Prelude as Stream
 import qualified Streamly.Data.Fold as Fold
+import qualified Streamly.Internal.Data.Fold as Fold
+import qualified Streamly.Data.Unfold as Unfold
 import qualified Streamly.FileSystem.Handle as Handle
 import qualified System.IO as Sys
 import qualified Streamly.Unicode.Stream as Unicode
@@ -51,7 +57,7 @@
     Sm|Sc|Sk|So|          --S
     Zs|Zl|Zp|             --Z
     Cc|Cf|Cs|Co|Cn        --C
-    deriving (Show, Read)
+    deriving (Show, Bounded, Enum, Read)
 
 data DecompType =
        DTCanonical | DTCompat  | DTFont
@@ -73,6 +79,9 @@
         , _combiningClass :: Int
         , _decompositionType :: Maybe DecompType
         , _decomposition :: Decomp
+        , _simpleUppercaseMapping :: Maybe Char
+        , _simpleLowercaseMapping :: Maybe Char
+        , _simpleTitlecaseMapping :: Maybe Char
         }
     deriving (Show)
 
@@ -94,8 +103,12 @@
 readCodePoint :: String -> Char
 readCodePoint = chr . read . ("0x"++)
 
+readCodePointM :: String -> Maybe Char
+readCodePointM "" = Nothing
+readCodePointM u  = Just (readCodePoint u)
+
 genSignature :: String -> String
-genSignature testBit = testBit <> " :: Char -> Bool"
+genSignature = (<> " :: Char -> Bool")
 
 -- | Check that var is between minimum and maximum of orderList
 genRangeCheck :: String -> [Int] -> String
@@ -144,7 +157,40 @@
     toByte :: [Bool] -> Int
     toByte xs = sum $ map (\i -> if xs !! i then 1 `shiftL` i else 0) [0..7]
 
+genEnumBitmap :: forall a. (Bounded a, Enum a, Show a) => String -> [a] -> String
+genEnumBitmap funcName as = unlines
+    [ "{-# INLINE " ++ funcName ++ " #-}"
+    , funcName <> " :: Char -> Int"
+    , funcName <> " c = let n = ord c in if n >= "
+               <> show (length as)
+               <> " then "
+               <> show (fromEnum Cn)
+               <> " else lookupIntN bitmap# n"
+    , "  where"
+    , "    bitmap# = "
+        <> show (enumMapToAddrLiteral as) <> "#"
+    ]
 
+{-| Encode a list of values as a byte map, using their 'Enum' instance.
+
+__Note:__ 'Enum' instance must respect the following:
+
+* @fromEnum minBound >= 0x00@
+* @fromEnum maxBound <= 0xff@
+-}
+enumMapToAddrLiteral :: forall a. (Bounded a, Enum a, Show a) => [a] -> String
+enumMapToAddrLiteral = fmap go
+
+    where
+
+    go :: a -> Char
+    go = chr . fromIntegral . toWord8
+
+    toWord8 :: a -> Word8
+    toWord8 a = let w = fromEnum a in if 0 <= w && w <= 0xff
+        then fromIntegral w
+        else error $ "Cannot convert to Word8: " <> show a
+
 -- This bit of code is duplicated but this duplication allows us to reduce 2
 -- dependencies on the executable.
 
@@ -175,6 +221,37 @@
 -- Parsing UnicodeData.txt
 -------------------------------------------------------------------------------
 
+genGeneralCategoryModule
+    :: Monad m
+    => String
+    -> Fold m DetailedChar String
+genGeneralCategoryModule moduleName =
+    done <$> Fold.foldl' step initial
+
+    where
+
+    -- (categories, expected char)
+    initial = ([], '\0')
+
+    step (acc, p) a = if p < _char a
+        -- Fill missing char entry with default category Cn
+        -- See: https://www.unicode.org/reports/tr44/#Default_Values_Table
+        then step (Cn : acc, succ p) a
+        -- Regular entry
+        else (_generalCategory a : acc, succ (_char a))
+
+    done (acc, _) = unlines
+        [ apacheLicense moduleName
+        , "module " <> moduleName
+        , "(generalCategory)"
+        , "where"
+        , ""
+        , "import Data.Char (ord)"
+        , "import Unicode.Internal.Bits (lookupIntN)"
+        , ""
+        , genEnumBitmap "generalCategory" (reverse acc)
+        ]
+
 readDecomp :: String -> (Maybe DecompType, Decomp)
 readDecomp s =
     if null wrds
@@ -321,8 +398,8 @@
     step st dc = genDecomposeDef dc : st
 
     done st =
-        let body = genHeader ++ before ++ genSign ++ reverse st ++ after
-         in unlines body
+        let body = mconcat [genHeader, before, genSign, reverse st, after]
+        in unlines body
 
     genDecomposeDef dc =
         "decompose "
@@ -419,6 +496,48 @@
             ++ composeStarterPair (reverse sp)
             ++ isSecondStarter (Set.toList (Set.fromList ss))
 
+genSimpleCaseMappingModule
+    :: Monad m
+    => String
+    -> String
+    -> (DetailedChar -> Maybe Char)
+    -> Fold m DetailedChar String
+genSimpleCaseMappingModule moduleName funcName field =
+    done <$> Fold.foldl' step initial
+
+    where
+
+    genHeader =
+        [ apacheLicense moduleName
+        , "module " <> moduleName
+        , "(" ++ funcName ++ ")"
+        , "where"
+        , ""
+        ]
+    genSign =
+        [ "{-# NOINLINE " ++ funcName ++ " #-}"
+        , funcName ++ " :: Char -> Char"
+        ]
+    initial = []
+
+    step ds dc = case genUpper dc of
+        Nothing -> ds
+        Just d  -> d : ds
+
+    after = [funcName ++ " c = c"]
+
+    done st =
+        let body = mconcat [genHeader, genSign, reverse st, after]
+        in unlines body
+
+    genUpper dc = field dc <&> \c -> mconcat
+        [ funcName
+        , " "
+        , show (_char dc)
+        , " = "
+        , show c
+        ]
+
 genCorePropertiesModule ::
        Monad m => String -> (String -> Bool) -> Fold m (String, [Int]) String
 genCorePropertiesModule moduleName isProp =
@@ -496,10 +615,72 @@
         $ Fold.lmap parsePropertyLine
         $ Fold.foldl' combinePropertyLines emptyPropertyLine
 
+-- | A range entry in @UnicodeData.txt@.
+data UnicodeDataRange
+    = SingleCode    !DetailedChar
+    -- ^ Regular entry for one code point
+    | FirstCode     !String !DetailedChar
+    -- ^ A partial range for entry with a name as: @\<RANGE_IDENTIFIER, First\>@
+    | CompleteRange !String !DetailedChar !DetailedChar
+    -- ^ A complete range, requiring 2 continuous entries with respective names:
+    --
+    -- * @\<RANGE_IDENTIFIER, First\>@
+    -- * @\<RANGE_IDENTIFIER, Last\>@
+
+{-| Parse UnicodeData.txt lines
+
+Parse ranges according to https://www.unicode.org/reports/tr44/#Code_Point_Ranges.
+
+__Note:__ this does /not/ fill missing char entries,
+i.e. entries with no explicit entry nor within a range.
+-}
+parseUnicodeDataLines :: forall t m. (IsStream t, Monad m) => t m String -> t m DetailedChar
+parseUnicodeDataLines
+    = Stream.unfoldMany (Unfold.unfoldr unitToRange)
+    . Stream.foldMany ( Fold.lmap parseDetailedChar
+                      $ Fold.mkFold_ step initial )
+
+    where
+
+    step :: Maybe UnicodeDataRange
+         -> DetailedChar
+         -> Fold.Step (Maybe UnicodeDataRange) (Maybe UnicodeDataRange)
+    step Nothing dc = case span (/= ',') (_name dc) of
+        (range, ", First>") -> Fold.Partial (Just (FirstCode range dc))
+        _                   -> Fold.Done (Just (SingleCode dc))
+    step (Just (FirstCode range1 dc1)) dc2 = case span (/= ',') (_name dc2) of
+        (range2, ", Last>") -> if range1 == range2 && _char dc1 < _char dc2
+            then Fold.Done (Just (CompleteRange range1 dc1 dc2))
+            else error $ "Cannot create range: incompatible ranges" <> show (dc1, dc2)
+        _ -> error $ "Cannot create range: missing <range, Last> entry correspong to: " <> show range1
+    step _ _ = error "impossible case"
+
+    initial :: Fold.Step (Maybe UnicodeDataRange) (Maybe UnicodeDataRange)
+    initial = Fold.Partial Nothing
+
+    unitToRange :: Maybe UnicodeDataRange -> Maybe (DetailedChar, Maybe UnicodeDataRange)
+    unitToRange = fmap $ \case
+        SingleCode          dc      -> (dc, Nothing)
+        FirstCode     _     dc      -> error $ "Incomplete range: " <> show dc
+        CompleteRange range dc1 dc2 -> if _char dc1 < _char dc2
+            -- [TODO] Create the proper name
+            then (dc1{_name="TODO"}, Just (CompleteRange range dc1{_char=succ (_char dc1)} dc2))
+            else (dc2{_name="TODO"}, Nothing)
+
+-- | Parse a single entry of @UnicodeData.txt@
 parseDetailedChar :: String -> DetailedChar
 parseDetailedChar line =
     DetailedChar
-        (readCodePoint char) name (read gc) (read combining) dctype dcval
+        { _char = readCodePoint char
+        , _name = name
+        , _generalCategory = read gc
+        , _combiningClass = read combining
+        , _decompositionType = dctype
+        , _decomposition = dcval
+        , _simpleUppercaseMapping = readCodePointM sUpper
+        , _simpleLowercaseMapping = readCodePointM sLower
+        , _simpleTitlecaseMapping = readCodePointM sTitle
+        }
 
     where
 
@@ -510,13 +691,15 @@
     (_bidi, line5) = span (/= ';') (tail line4)
     (decomposition, line6) = span (/= ';') (tail line5)
     (dctype, dcval) = readDecomp decomposition
-    (_numeric, line7) = span (/= ';') (tail line6)
-    (_bidiM, line8) = span (/= ';') (tail line7)
-    (_uni1Name, line9) = span (/= ';') (tail line8)
-    (_iso, line10) = span (/= ';') (tail line9)
-    (_sUpper, line11) = span (/= ';') (tail line10)
-    (_sLower, line12) = span (/= ';') (tail line11)
-    _sTitle = tail line12
+    (_decimal, line7) = span (/= ';') (tail line6)
+    (_digit, line8) = span (/= ';') (tail line7)
+    (_numeric, line9) = span (/= ';') (tail line8)
+    (_bidiM, line10) = span (/= ';') (tail line9)
+    (_uni1Name, line11) = span (/= ';') (tail line10)
+    (_iso, line12) = span (/= ';') (tail line11)
+    (sUpper, line13) = span (/= ';') (tail line12)
+    (sLower, line14) = span (/= ';') (tail line13)
+    sTitle = tail line14
 
 -------------------------------------------------------------------------------
 -- Generation
@@ -555,9 +738,13 @@
 
     where
 
-    pretext version =
-        "-- autogenerated from https://www.unicode.org/Public/"
-            ++ version ++ "/ucd/" ++ file ++ "\n"
+    pretext version = mconcat
+        [ "-- autogenerated from https://www.unicode.org/Public/"
+        , version
+        , "/ucd/"
+        , file
+        ,"\n"
+        ]
     outfile = outdir <> moduleToFileName modName <> ".hs"
     outfiledir = dirFromFileName outfile
     action c = do
@@ -602,7 +789,7 @@
     runGenerator
         indir
         "UnicodeData.txt"
-        (Stream.map parseDetailedChar)
+        parseUnicodeDataLines
         outdir
         [ compositions compExclu non0CC
         , combiningClass
@@ -611,6 +798,10 @@
         , decompositions
         , decompositionsK2
         , decompositionsK
+        , generalCategory
+        , simpleUpperCaseMapping
+        , simpleLowerCaseMapping
+        , simpleTitleCaseMapping
         ]
 
     runGenerator
@@ -666,3 +857,19 @@
             post = ["decompose c = DK2.decompose c"]
          in ( "Unicode.Internal.Char.UnicodeData.DecompositionsK"
             , \m -> genDecomposeDefModule m pre post Kompat (< 60000))
+
+    generalCategory =
+         ( "Unicode.Internal.Char.UnicodeData.GeneralCategory"
+         , genGeneralCategoryModule)
+
+    simpleUpperCaseMapping =
+         ( "Unicode.Internal.Char.UnicodeData.SimpleUpperCaseMapping"
+         , \m -> genSimpleCaseMappingModule m "toSimpleUpperCase" _simpleUppercaseMapping)
+
+    simpleLowerCaseMapping =
+         ( "Unicode.Internal.Char.UnicodeData.SimpleLowerCaseMapping"
+         , \m -> genSimpleCaseMappingModule m "toSimpleLowerCase" _simpleLowercaseMapping)
+
+    simpleTitleCaseMapping =
+         ( "Unicode.Internal.Char.UnicodeData.SimpleTitleCaseMapping"
+         , \m -> genSimpleCaseMappingModule m "toSimpleTitleCase" _simpleTitlecaseMapping)
diff --git a/lib/Unicode/Char.hs b/lib/Unicode/Char.hs
--- a/lib/Unicode/Char.hs
+++ b/lib/Unicode/Char.hs
@@ -27,13 +27,32 @@
 
 module Unicode.Char
     ( module Unicode.Char.General
+    , module Unicode.Char.General.Compat
     , module Unicode.Char.Case
+    , module Unicode.Char.Case.Compat
+    , module Unicode.Char.Numeric
     , module Unicode.Char.Normalization
     , module Unicode.Char.Identifiers
+    , unicodeVersion
+
+    -- * Re-export
+    , ord
+    , chr
     )
 where
 
+import Data.Char (chr, ord)
+import Data.Version (Version, makeVersion)
 import Unicode.Char.Case
+import Unicode.Char.Case.Compat hiding (isLower, isUpper)
 import Unicode.Char.General
-import Unicode.Char.Normalization
+import Unicode.Char.General.Compat hiding (isLetter, isSpace)
 import Unicode.Char.Identifiers
+import Unicode.Char.Numeric
+import Unicode.Char.Normalization
+
+-- | Version of Unicode standard used by @unicode-data@.
+--
+-- @since 0.3.0
+unicodeVersion :: Version
+unicodeVersion = makeVersion [14, 0, 0]
diff --git a/lib/Unicode/Char/Case.hs b/lib/Unicode/Char/Case.hs
--- a/lib/Unicode/Char/Case.hs
+++ b/lib/Unicode/Char/Case.hs
@@ -8,7 +8,10 @@
 -- Case and case mapping related functions.
 --
 module Unicode.Char.Case
-    ( isLower
+    ( -- * Predicates
+      isLowerCase
+    , isLower
+    , isUpperCase
     , isUpper
     )
 where
@@ -17,17 +20,30 @@
 
 -- | Returns 'True' for lower-case letters.
 --
--- prop> isLower c == Data.Char.isLower c
+-- @since 0.3.0
+{-# INLINE isLowerCase #-}
+isLowerCase :: Char -> Bool
+isLowerCase = P.isLowercase
+
+-- | Returns 'True' for lower-case letters.
 --
+-- @since 0.1.0
 {-# INLINE isLower #-}
+{-# DEPRECATED isLower "Use isLowerCase instead. Note that the behavior of this function does not match base:Data.Char.isLower. See Unicode.Char.Case.Compat for behavior compatible with base:Data.Char." #-}
 isLower :: Char -> Bool
 isLower = P.isLowercase
 
--- | Returns 'True' for upper-case or title-case letters.  Title case is used by
--- a small number of letter ligatures like the single-character form of /Lj/.
+-- | Returns 'True' for upper-case letters.
 --
--- prop> isUpper c == Data.Char.isUpper c
+-- @since 0.3.0
+{-# INLINE isUpperCase #-}
+isUpperCase :: Char -> Bool
+isUpperCase = P.isUppercase
+
+-- | Returns 'True' for upper-case letters.
 --
+-- @since 0.1.0
 {-# INLINE isUpper #-}
+{-# DEPRECATED isUpper "Use isUpperCase instead. Note that the behavior of this function does not match base:Data.Char.isUpper. See Unicode.Char.Case.Compat for behavior compatible with base:Data.Char." #-}
 isUpper :: Char -> Bool
 isUpper = P.isUppercase
diff --git a/lib/Unicode/Char/Case/Compat.hs b/lib/Unicode/Char/Case/Compat.hs
new file mode 100644
--- /dev/null
+++ b/lib/Unicode/Char/Case/Compat.hs
@@ -0,0 +1,81 @@
+-- |
+-- Module      : Unicode.Char.Case.Compat
+-- Copyright   : (c) 2020 Composewell Technologies and Contributors
+-- License     : Apache-2.0
+-- Maintainer  : streamly@composewell.com
+-- Stability   : experimental
+--
+-- Compatibility module for case and case mapping related functions..
+--
+-- The functions of this module are drop-in replacement for those in "Data.Char".
+-- They are similar but not identical to some functions in "Unicode.Char.Case",
+-- therefore they are placed in a separate module in order to avoid ambiguity.
+--
+module Unicode.Char.Case.Compat
+    ( -- * Predicates
+      isUpper
+    , isLower
+      -- * Case conversion
+    , toUpper
+    , toLower
+    , toTitle
+    ) where
+
+import Unicode.Char.General (GeneralCategory(..), generalCategory)
+import qualified Unicode.Internal.Char.UnicodeData.SimpleLowerCaseMapping as C
+import qualified Unicode.Internal.Char.UnicodeData.SimpleTitleCaseMapping as C
+import qualified Unicode.Internal.Char.UnicodeData.SimpleUpperCaseMapping as C
+
+-- | Selects upper-case or title-case alphabetic Unicode characters (letters).
+-- Title case is used by a small number of letter ligatures like the
+-- single-character form of /Lj/.
+--
+-- prop> isUpper c == Data.Char.isUpper c
+--
+-- @since 0.3.0
+isUpper :: Char -> Bool
+isUpper c = case generalCategory c of
+    UppercaseLetter -> True
+    TitlecaseLetter -> True
+    _               -> False
+
+-- | Selects lower-case alphabetic Unicode characters (letters).
+--
+-- prop> isLower c == Data.Char.isLower c
+--
+-- @since 0.3.0
+isLower :: Char -> Bool
+isLower c = case generalCategory c of
+    LowercaseLetter -> True
+    _               -> False
+
+-- | Convert a letter to the corresponding upper-case letter, if any.
+-- Any other character is returned unchanged.
+--
+-- prop> toUpper c == Data.Char.toUpper c
+--
+-- @since 0.3.0
+{-# INLINE toUpper #-}
+toUpper :: Char -> Char
+toUpper = C.toSimpleUpperCase
+
+-- | Convert a letter to the corresponding lower-case letter, if any.
+-- Any other character is returned unchanged.
+--
+-- prop> toLower c == Data.Char.toLower c
+--
+-- @since 0.3.0
+{-# INLINE toLower #-}
+toLower :: Char -> Char
+toLower = C.toSimpleLowerCase
+
+-- | Convert a letter to the corresponding title-case or upper-case letter,
+-- if any. (Title case differs from upper case only for a small number of
+-- ligature letters.) Any other character is returned unchanged.
+--
+-- prop> toTitle c == Data.Char.toTitle c
+--
+-- @since 0.3.0
+{-# INLINE toTitle #-}
+toTitle :: Char -> Char
+toTitle = C.toSimpleTitleCase
diff --git a/lib/Unicode/Char/General.hs b/lib/Unicode/Char/General.hs
--- a/lib/Unicode/Char/General.hs
+++ b/lib/Unicode/Char/General.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE LambdaCase #-}
+
 -- |
 -- Module      : Unicode.Char.General
 -- Copyright   : (c) 2020 Composewell Technologies and Contributors
@@ -9,9 +11,28 @@
 --
 module Unicode.Char.General
     (
-    -- * Character Properties
-      isLetter
+    -- * Unicode general categories
+      GeneralCategory(..)
+    , generalCategoryAbbr
+    , generalCategory
+
+    -- * Character classification
+    , isAlphabetic
+    , isAlphaNum
+    , isControl
+    , isMark
+    , isPrint
+    , isPunctuation
+    , isSeparator
+    , isSymbol
+    , isWhiteSpace
+    , isLetter
     , isSpace
+    -- ** Re-export
+    , isAscii
+    , isLatin1
+    , isAsciiUpper
+    , isAsciiLower
 
     -- * Korean Hangul Characters
     -- | The Hangul script used in the Korean writing system consists of
@@ -49,6 +70,7 @@
 
     -- *** Jamo Leading (L)
     , jamoLFirst
+    , jamoLCount
     , jamoLIndex
     , jamoLLast
 
@@ -74,28 +96,357 @@
 where
 
 import Control.Exception (assert)
-import Data.Char (ord)
+import Data.Char (isAscii, isLatin1, isAsciiUpper, isAsciiLower, ord)
+import Data.Ix (Ix)
 import Unicode.Internal.Division (quotRem28)
 
 import qualified Unicode.Internal.Char.DerivedCoreProperties as P
 import qualified Unicode.Internal.Char.PropList as P
+import qualified Unicode.Internal.Char.UnicodeData.GeneralCategory as UC
 
+{-| Unicode General Categories.
+
+These classes are defined in the
+[Unicode Character Database](http://www.unicode.org/reports/tr44/tr44-14.html#GC_Values_Table),
+part of the Unicode standard
+
+__Note:__ the classes must be in the same order they are listed in the Unicode Standard,
+because some functions (e.g. 'generalCategory') rely on the 'Enum' instance.
+
+@since 0.3.0
+-}
+data GeneralCategory
+    -- L: Letter
+    = UppercaseLetter       -- ^ @Lu@: Letter, Uppercase
+    | LowercaseLetter       -- ^ @Ll@: Letter, Lowercase
+    | TitlecaseLetter       -- ^ @Lt@: Letter, Titlecase
+    | ModifierLetter        -- ^ @Lm@: Letter, Modifier
+    | OtherLetter           -- ^ @Lo@: Letter, Other
+
+    -- M: Mark
+    | NonSpacingMark        -- ^ @Mn@: Mark, Non-Spacing
+    | SpacingCombiningMark  -- ^ @Mc@: Mark, Spacing Combining
+    | EnclosingMark         -- ^ @Me@: Mark, Enclosing
+
+    -- N: Number
+    | DecimalNumber         -- ^ @Nd@: Number, Decimal
+    | LetterNumber          -- ^ @Nl@: Number, Letter
+    | OtherNumber           -- ^ @No@: Number, Other
+
+    -- P: Punctuation
+    | ConnectorPunctuation  -- ^ @Pc@: Punctuation, Connector
+    | DashPunctuation       -- ^ @Pd@: Punctuation, Dash
+    | OpenPunctuation       -- ^ @Ps@: Punctuation, Open
+    | ClosePunctuation      -- ^ @Pe@: Punctuation, Close
+    | InitialQuote          -- ^ @Pi@: Punctuation, Initial quote
+    | FinalQuote            -- ^ @Pf@: Punctuation, Final quote
+    | OtherPunctuation      -- ^ @Po@: Punctuation, Other
+
+    -- S: Symbol
+    | MathSymbol            -- ^ @Sm@: Symbol, Math
+    | CurrencySymbol        -- ^ @Sc@: Symbol, Currency
+    | ModifierSymbol        -- ^ @Sk@: Symbol, Modifier
+    | OtherSymbol           -- ^ @So@: Symbol, Other
+
+    -- Z: Separator
+    | Space                 -- ^ @Zs@: Separator, Space
+    | LineSeparator         -- ^ @Zl@: Separator, Line
+    | ParagraphSeparator    -- ^ @Zp@: Separator, Paragraph
+
+    -- C: Other
+    | Control               -- ^ @Cc@: Other, Control
+    | Format                -- ^ @Cf@: Other, Format
+    | Surrogate             -- ^ @Cs@: Other, Surrogate
+    | PrivateUse            -- ^ @Co@: Other, Private Use
+    | NotAssigned           -- ^ @Cn@: Other, Not Assigned
+    deriving ( Show
+            , Eq
+            , Ord
+            , Enum
+            , Bounded
+            , Ix
+            )
+
+-- | Abbreviation of 'GeneralCategory' used in the Unicode standard.
+--
+-- @since 0.3.0
+generalCategoryAbbr :: GeneralCategory -> String
+generalCategoryAbbr = \case
+    UppercaseLetter      -> "Lu"
+    LowercaseLetter      -> "Ll"
+    TitlecaseLetter      -> "Lt"
+    ModifierLetter       -> "Lm"
+    OtherLetter          -> "Lo"
+    NonSpacingMark       -> "Mn"
+    SpacingCombiningMark -> "Mc"
+    EnclosingMark        -> "Me"
+    DecimalNumber        -> "Nd"
+    LetterNumber         -> "Nl"
+    OtherNumber          -> "No"
+    ConnectorPunctuation -> "Pc"
+    DashPunctuation      -> "Pd"
+    OpenPunctuation      -> "Ps"
+    ClosePunctuation     -> "Pe"
+    InitialQuote         -> "Pi"
+    FinalQuote           -> "Pf"
+    OtherPunctuation     -> "Po"
+    MathSymbol           -> "Sm"
+    CurrencySymbol       -> "Sc"
+    ModifierSymbol       -> "Sk"
+    OtherSymbol          -> "So"
+    Space                -> "Zs"
+    LineSeparator        -> "Zl"
+    ParagraphSeparator   -> "Zp"
+    Control              -> "Cc"
+    Format               -> "Cf"
+    Surrogate            -> "Cs"
+    PrivateUse           -> "Co"
+    NotAssigned          -> "Cn"
+
+{-| The Unicode general category of the character.
+
+This property is defined in the column 2 of the @UnicodeData@ table.
+
+This relies on the 'Enum' instance of 'GeneralCategory', which must remain in the
+same order as the categories are presented in the Unicode standard.
+
+prop> show (generalCategory c) == show (Data.Char.generalCategory c)
+
+@since 0.3.0
+-}
+{-# INLINE generalCategory #-}
+generalCategory :: Char -> GeneralCategory
+generalCategory = toEnum . UC.generalCategory
+
+{-| Returns 'True' for alphabetic Unicode characters (lower-case, upper-case
+and title-case letters, plus letters of caseless scripts and modifiers
+letters).
+
+__Note:__ this function is /not/ equivalent to 'Unicode.Char.General.Compat.isAlpha'
+/'Unicode.Char.General.Compat.isLetter':
+
+* 'isAlpha' matches the following general categories:
+
+    * 'UppercaseLetter' (@Lu@)
+    * 'LowercaseLetter' (@Ll@)
+    * 'TitlecaseLetter' (@Lt@)
+    * 'ModifierLetter' (@Lm@)
+    * 'OtherLetter' (@Lo@)
+
+* whereas 'isAlphabetic' matches:
+
+    * @Uppercase@ [property](https://www.unicode.org/reports/tr44/#Uppercase)
+    * @Lowercase@ [property](https://www.unicode.org/reports/tr44/#Lowercase)
+    * 'TitlecaseLetter' (@Lt@)
+    * 'ModifierLetter' (@Lm@)
+    * 'OtherLetter' (@Lo@)
+    * 'LetterNumber' (@Nl@)
+    * @Other_Alphabetic@ [property](https://www.unicode.org/reports/tr44/#Other_Alphabetic)
+
+@since 0.3.0
+-}
+{-# INLINE isAlphabetic #-}
+isAlphabetic :: Char -> Bool
+isAlphabetic = P.isAlphabetic
+
+{-| Selects alphabetic or numeric Unicode characters.
+
+This function returns 'True' if its argument has one of the
+following 'GeneralCategory's, or 'False' otherwise:
+
+* 'UppercaseLetter'
+* 'LowercaseLetter'
+* 'TitlecaseLetter'
+* 'ModifierLetter'
+* 'OtherLetter'
+* 'DecimalNumber'
+* 'LetterNumber'
+* 'OtherNumber'
+
+prop> isAlphaNum c == Data.Char.isAlphaNum c
+
+@since 0.3.0
+-}
+isAlphaNum :: Char -> Bool
+isAlphaNum c = case generalCategory c of
+    UppercaseLetter -> True
+    LowercaseLetter -> True
+    TitlecaseLetter -> True
+    ModifierLetter  -> True
+    OtherLetter     -> True
+    DecimalNumber   -> True
+    LetterNumber    -> True
+    OtherNumber     -> True
+    _               -> False
+
+{-| Selects control characters, which are the non-printing characters
+of the Latin-1 subset of Unicode.
+
+This function returns 'True' if its argument has the 'GeneralCategory' 'Control'.
+
+prop> isControl c == Data.Char.isControl c
+
+@since 0.3.0
+-}
+isControl :: Char -> Bool
+isControl c = case generalCategory c of
+    Control -> True
+    _       -> False
+
+{-| Selects Unicode mark characters, for example accents and the
+like, which combine with preceding characters.
+
+This function returns 'True' if its argument has one of the
+following 'GeneralCategory's, or 'False' otherwise:
+
+* 'NonSpacingMark'
+* 'SpacingCombiningMark'
+* 'EnclosingMark'
+
+prop> isMark c == Data.Char.isMark c
+
+@since 0.3.0
+-}
+isMark :: Char -> Bool
+isMark c = case generalCategory c of
+    NonSpacingMark       -> True
+    SpacingCombiningMark -> True
+    EnclosingMark        -> True
+    _                    -> False
+
+{-| Selects printable Unicode characters (letters, numbers, marks, punctuation,
+symbols and spaces).
+
+This function returns 'False' if its argument has one of the
+following 'GeneralCategory's, or 'True' otherwise:
+
+* 'LineSeparator'
+* 'ParagraphSeparator'
+* 'Control'
+* 'Format'
+* 'Surrogate'
+* 'PrivateUse'
+* 'NotAssigned'
+
+prop> isPrint c == Data.Char.isPrint c
+
+@since 0.3.0
+-}
+isPrint :: Char -> Bool
+isPrint c = case generalCategory c of
+    LineSeparator      -> False
+    ParagraphSeparator -> False
+    Control            -> False
+    Format             -> False
+    Surrogate          -> False
+    PrivateUse         -> False
+    NotAssigned        -> False
+    _                  -> True
+
+{-| Selects Unicode punctuation characters, including various kinds
+of connectors, brackets and quotes.
+
+This function returns 'True' if its argument has one of the
+following 'GeneralCategory's, or 'False' otherwise:
+
+* 'ConnectorPunctuation'
+* 'DashPunctuation'
+* 'OpenPunctuation'
+* 'ClosePunctuation'
+* 'InitialQuote'
+* 'FinalQuote'
+* 'OtherPunctuation'
+
+prop> isPunctuation c == Data.Char.isPunctuation c
+
+@since 0.3.0
+-}
+isPunctuation :: Char -> Bool
+isPunctuation c = case generalCategory c of
+    ConnectorPunctuation -> True
+    DashPunctuation      -> True
+    OpenPunctuation      -> True
+    ClosePunctuation     -> True
+    InitialQuote         -> True
+    FinalQuote           -> True
+    OtherPunctuation     -> True
+    _                    -> False
+
+{- | Returns 'True' for any whitespace characters, and the control
+characters @\\t@, @\\n@, @\\r@, @\\f@, @\\v@.
+
+See: [Unicode @White_Space@](https://www.unicode.org/reports/tr44/#White_Space).
+
+__Note:__ 'isWhiteSpace' is /not/ equivalent to 'Unicode.Char.General.Compat.isSpace'.
+'isWhiteSpace' selects the same characters from 'isSpace' plus the following:
+
+* @U+0085@ NEXT LINE (NEL)
+* @U+2028@ LINE SEPARATOR
+* @U+2029@ PARAGRAPH SEPARATOR
+
+@since 0.3.0
+-}
+{-# INLINE isWhiteSpace #-}
+isWhiteSpace :: Char -> Bool
+isWhiteSpace = P.isWhite_Space
+
+{-| Selects Unicode space and separator characters.
+
+This function returns 'True' if its argument has one of the
+following 'GeneralCategory's, or 'False' otherwise:
+
+* 'Space'
+* 'LineSeparator'
+* 'ParagraphSeparator'
+
+prop> isSeparator c == Data.Char.isSeparator c
+
+@since 0.3.0
+-}
+isSeparator :: Char -> Bool
+isSeparator c = case generalCategory c of
+    Space              -> True
+    LineSeparator      -> True
+    ParagraphSeparator -> True
+    _                  -> False
+
+{-| Selects Unicode symbol characters, including mathematical and currency symbols.
+
+This function returns 'True' if its argument has one of the
+following 'GeneralCategory's, or 'False' otherwise:
+* 'MathSymbol'
+* 'CurrencySymbol'
+* 'ModifierSymbol'
+* 'OtherSymbol'
+
+prop> isSymbol c == Data.Char.isSymbol c
+
+@since 0.3.0
+-}
+isSymbol :: Char -> Bool
+isSymbol c = case generalCategory c of
+    MathSymbol     -> True
+    CurrencySymbol -> True
+    ModifierSymbol -> True
+    OtherSymbol    -> True
+    _              -> False
+
 -- | Returns 'True' for alphabetic Unicode characters (lower-case, upper-case
 -- and title-case letters, plus letters of caseless scripts and modifiers
 -- letters).
 --
--- prop> isLetter c == Data.Char.isLetter c
---
+-- @since 0.1.0
 {-# INLINE isLetter #-}
+{-# DEPRECATED isLetter "Use isAlphabetic instead. Note that the behavior of this function does not match base:Data.Char.isLetter. See Unicode.Char.General.Compat for behavior compatible with base:Data.Char." #-}
 isLetter :: Char -> Bool
 isLetter = P.isAlphabetic
 
 -- | Returns 'True' for any whitespace characters, and the control
 -- characters @\\t@, @\\n@, @\\r@, @\\f@, @\\v@.
 --
--- prop> isSpace c == Data.Char.isSpace c
---
+-- @since 0.1.0
 {-# INLINE isSpace #-}
+{-# DEPRECATED isSpace "Use isWhiteSpace instead. Note that the behavior of this function does not match base:Data.Char.isSpace. See Unicode.Char.General.Compat for behavior compatible with base:Data.Char." #-}
 isSpace :: Char -> Bool
 isSpace = P.isWhite_Space
 
@@ -107,24 +458,36 @@
 jamoLFirst, jamoLCount, jamoLLast :: Int
 
 -- | First leading consonant jamo.
+--
+-- @since 0.1.0
 jamoLFirst  = 0x1100
 
 -- | Total count of leading consonant jamo.
+--
+-- @since 0.3.0
 jamoLCount = 19
 
 -- | Last leading consonant jamo.
+--
+-- @since 0.1.0
 jamoLLast = jamoLFirst + jamoLCount - 1
 
 -- jamo vowel
 jamoVFirst, jamoVCount, jamoVLast :: Int
 
 -- | First vowel jamo.
+--
+-- @since 0.1.0
 jamoVFirst  = 0x1161
 
 -- | Total count of vowel jamo.
+--
+-- @since 0.1.0
 jamoVCount = 21
 
 -- | Last vowel jamo.
+--
+-- @since 0.1.0
 jamoVLast = jamoVFirst + jamoVCount - 1
 
 -- jamo trailing
@@ -134,18 +497,26 @@
 --
 -- Note that 'jamoTFirst' does not represent a valid T, it represents a missing
 -- T i.e. LV without a T. See comments under 'jamoTIndex' .
+--
+-- @since 0.1.0
 jamoTFirst  = 0x11a7
 
 -- | Total count of trailing consonant jamo.
+--
+-- @since 0.1.0
 jamoTCount = 28
 
 -- | Last trailing consonant jamo.
+--
+-- @since 0.1.0
 jamoTLast :: Int
 jamoTLast = jamoTFirst + jamoTCount - 1
 
 -- | Total count of all jamo characters.
 --
 -- @jamoNCount = jamoVCount * jamoTCount@
+--
+-- @since 0.1.0
 jamoNCount :: Int
 jamoNCount = 588
 
@@ -153,28 +524,40 @@
 hangulFirst, hangulLast :: Int
 
 -- | Codepoint of the first pre-composed Hangul character.
+--
+-- @since 0.1.0
 hangulFirst = 0xac00
 
 -- | Codepoint of the last Hangul character.
+--
+-- @since 0.1.0
 hangulLast = hangulFirst + jamoLCount * jamoVCount * jamoTCount - 1
 
 -- | Determine if the given character is a precomposed Hangul syllable.
+--
+-- @since 0.1.0
 isHangul :: Char -> Bool
 isHangul c = n >= hangulFirst && n <= hangulLast
     where n = ord c
 
 -- | Determine if the given character is a Hangul LV syllable.
+--
+-- @since 0.1.0
 isHangulLV :: Char -> Bool
 isHangulLV c = assert (jamoTCount == 28)
     snd (quotRem28 (ord c - hangulFirst)) == 0
 
 -- | Determine whether a character is a jamo L, V or T character.
+--
+-- @since 0.1.0
 isJamo :: Char -> Bool
 isJamo c = n >= jamoLFirst && n <= jamoTLast
     where n = ord c
 
 -- | Given a Unicode character, if it is a leading jamo, return its index in
 -- the list of leading jamo consonants, otherwise return 'Nothing'.
+--
+-- @since 0.1.0
 jamoLIndex :: Char -> Maybe Int
 jamoLIndex c
   | index >= 0 && index < jamoLCount = Just index
@@ -183,6 +566,8 @@
 
 -- | Given a Unicode character, if it is a vowel jamo, return its index in the
 -- list of vowel jamo, otherwise return 'Nothing'.
+--
+-- @since 0.1.0
 jamoVIndex :: Char -> Maybe Int
 jamoVIndex c
   | index >= 0 && index < jamoVCount = Just index
@@ -197,6 +582,7 @@
 -- Decomposition" in the Conformance chapter of the Unicode standard for more
 -- details.
 --
+-- @since 0.1.0
 jamoTIndex :: Char -> Maybe Int
 jamoTIndex c
   | index > 0 && index < jamoTCount = Just index
diff --git a/lib/Unicode/Char/General/Compat.hs b/lib/Unicode/Char/General/Compat.hs
new file mode 100644
--- /dev/null
+++ b/lib/Unicode/Char/General/Compat.hs
@@ -0,0 +1,81 @@
+-- |
+-- Module      : Unicode.Char.General.Compat
+-- Copyright   : (c) 2020 Composewell Technologies and Contributors
+-- License     : Apache-2.0
+-- Maintainer  : streamly@composewell.com
+-- Stability   : experimental
+--
+-- Compatibility module for general character property related functions.
+--
+-- The functions of this module are drop-in replacement for those in "Data.Char".
+-- They are similar but not identical to some functions in "Unicode.Char.General",
+-- therefore they are placed in a separate module in order to avoid ambiguity.
+--
+module Unicode.Char.General.Compat
+    ( isAlpha
+    , isLetter
+    , isSpace
+    ) where
+
+import Unicode.Char.General (GeneralCategory(..), generalCategory)
+
+-- | Same as 'isLetter'.
+--
+-- @since 0.3.0
+{-# INLINE isAlpha #-}
+isAlpha :: Char -> Bool
+isAlpha = isLetter
+
+{-| Selects alphabetic Unicode characters (lower-case, upper-case and title-case
+letters, plus letters of caseless scripts and modifiers letters).
+
+This function returns 'True' if its argument has one of the
+following 'GeneralCategory's, or 'False' otherwise:
+
+* 'UppercaseLetter'
+* 'LowercaseLetter'
+* 'TitlecaseLetter'
+* 'ModifierLetter'
+* 'OtherLetter'
+
+__Note:__ this function is /not/ equivalent to 'Unicode.Char.General.isAlphabetic'.
+See the description of 'Unicode.Char.General.isAlphabetic' for further details.
+
+prop> isLetter c == Data.Char.isLetter c
+
+@since 0.3.0
+-}
+{-# INLINE isLetter #-}
+isLetter :: Char -> Bool
+isLetter c = case generalCategory c of
+    UppercaseLetter -> True
+    LowercaseLetter -> True
+    TitlecaseLetter -> True
+    ModifierLetter  -> True
+    OtherLetter     -> True
+    _               -> False
+
+{-| Selects Unicode space characters (general category 'Space'),
+and the control characters @\\t@, @\\n@, @\\r@, @\\f@, @\\v@.
+
+__Note:__ 'isSpace' is /not/ equivalent to 'Unicode.Char.General.isWhiteSpace'.
+'Unicode.Char.General.isWhiteSpace' selects the same characters from 'isSpace'
+plus the following:
+
+* @U+0085@ NEXT LINE (NEL)
+* @U+2028@ LINE SEPARATOR
+* @U+2029@ PARAGRAPH SEPARATOR
+
+prop> isSpace c == Data.Char.isSpace c
+
+@since 0.3.0
+-}
+isSpace :: Char -> Bool
+isSpace '\t' = True
+isSpace '\n' = True
+isSpace '\v' = True
+isSpace '\f' = True
+isSpace '\r' = True
+isSpace c = case generalCategory c of
+    Space -> True
+    _     -> False
diff --git a/lib/Unicode/Char/Identifiers.hs b/lib/Unicode/Char/Identifiers.hs
--- a/lib/Unicode/Char/Identifiers.hs
+++ b/lib/Unicode/Char/Identifiers.hs
@@ -22,11 +22,15 @@
 import qualified Unicode.Internal.Char.PropList as P
 
 -- | Returns 'True' if a character is an identifier continue character.
+--
+-- @since 0.2.0
 {-# INLINE isIDContinue #-}
 isIDContinue :: Char -> Bool
 isIDContinue = P.isID_Continue
 
 -- | Returns 'True' if a character is an identifier start character.
+--
+-- @since 0.2.0
 {-# INLINE isIDStart #-}
 isIDStart :: Char -> Bool
 isIDStart = P.isID_Start
@@ -34,6 +38,8 @@
 -- | Returns 'True' if a character is an identifier continue character,
 -- using the NFKC modifications detailed in
 -- [UAX #31, 5.1](https://www.unicode.org/reports/tr31/#NFKC_Modifications).
+--
+-- @since 0.2.0
 {-# INLINE isXIDContinue #-}
 isXIDContinue :: Char -> Bool
 isXIDContinue = P.isXID_Continue
@@ -42,16 +48,22 @@
 -- | Returns 'True' if a character is an identifier start character,
 -- using the NFKC modifications detailed in
 -- [UAX #31, 5.1](https://www.unicode.org/reports/tr31/#NFKC_Modifications).
+--
+-- @since 0.2.0
 {-# INLINE isXIDStart #-}
 isXIDStart :: Char -> Bool
 isXIDStart = P.isXID_Start
 
 -- | Returns 'True' if a character is a pattern syntax character.
+--
+-- @since 0.2.0
 {-# INLINE isPatternSyntax #-}
 isPatternSyntax :: Char -> Bool
 isPatternSyntax = P.isPattern_Syntax
 
 -- | Returns 'True' if a character is a pattern whitespace character.
+--
+-- @since 0.2.0
 {-# INLINE isPatternWhitespace #-}
 isPatternWhitespace :: Char -> Bool
 isPatternWhitespace = P.isPattern_White_Space
diff --git a/lib/Unicode/Char/Normalization.hs b/lib/Unicode/Char/Normalization.hs
--- a/lib/Unicode/Char/Normalization.hs
+++ b/lib/Unicode/Char/Normalization.hs
@@ -73,18 +73,24 @@
 -- | Compose a starter character (combining class 0) with a combining character
 -- (non-zero combining class). Returns the composed character if the starter
 -- combines with the combining character, returns 'Nothing' otherwise.
+--
+-- @since 0.1.0
 {-# INLINE compose #-}
 compose :: Char -> Char -> Maybe Char
 compose = C.compose
 
 -- | Compose a starter character with another starter character.  Returns the
 -- composed character if the two starters combine, returns 'Nothing' otherwise.
+--
+-- @since 0.1.0
 {-# INLINE composeStarters #-}
 composeStarters :: Char -> Char -> Maybe Char
 composeStarters = C.composeStarters
 
 -- | Return 'True' if a starter character may combine with some preceding
 -- starter character.
+--
+-- @since 0.1.0
 {-# INLINE isCombiningStarter #-}
 isCombiningStarter :: Char -> Bool
 isCombiningStarter = C.isSecondStarter
@@ -98,10 +104,14 @@
 -------------------------------------------------------------------------------
 
 -- | Whether we are decomposing in canonical or compatibility mode.
+--
+-- @since 0.1.0
 data DecomposeMode = Canonical | Kompat
 
 -- | Decompose a non-Hangul character into its canonical or compatibility
 -- decompositions.  Note that the resulting characters may further decompose.
+--
+-- @since 0.1.0
 {-# INLINE decompose #-}
 decompose :: DecomposeMode -> Char -> [Char]
 decompose Canonical  = D.decompose
@@ -110,6 +120,8 @@
 -- | Given a non-Hangul character determine if the character is decomposable.
 -- Note that in case compatibility decompositions a character may decompose
 -- into a single compatibility character.
+--
+-- @since 0.1.0
 {-# INLINE isDecomposable #-}
 isDecomposable :: DecomposeMode -> Char -> Bool
 isDecomposable Canonical  = D.isDecomposable
@@ -120,6 +132,8 @@
 -------------------------------------------------------------------------------
 
 -- | Decompose a Hangul syllable into its corresponding Jamo characters.
+--
+-- @since 0.1.0
 {-# INLINE decomposeHangul #-}
 decomposeHangul :: Char -> (Char, Char, Char)
 decomposeHangul c = (l, v, t)
@@ -140,11 +154,15 @@
 -- Determine the combining properties of characters.
 
 -- | Returns the combining class of a character.
+--
+-- @since 0.1.0
 {-# INLINE combiningClass #-}
 combiningClass :: Char -> Int
 combiningClass = CC.combiningClass
 
 -- | Returns 'True' if a character is a combining character.
+--
+-- @since 0.1.0
 {-# INLINE isCombining #-}
 isCombining :: Char -> Bool
 isCombining = CC.isCombining
diff --git a/lib/Unicode/Char/Numeric.hs b/lib/Unicode/Char/Numeric.hs
new file mode 100644
--- /dev/null
+++ b/lib/Unicode/Char/Numeric.hs
@@ -0,0 +1,43 @@
+-- |
+-- Module      : Unicode.Char.Numeric
+-- Copyright   : (c) 2020 Composewell Technologies and Contributors
+-- License     : Apache-2.0
+-- Maintainer  : streamly@composewell.com
+-- Stability   : experimental
+--
+-- Numeric character property related functions.
+--
+module Unicode.Char.Numeric
+    ( isNumber
+
+    -- * Re-export
+    , isDigit
+    , isOctDigit
+    , isHexDigit
+    , digitToInt
+    , intToDigit
+    ) where
+
+import Data.Char (digitToInt, intToDigit, isDigit, isHexDigit, isOctDigit)
+import Unicode.Char.General (GeneralCategory(..), generalCategory)
+
+{-| Selects Unicode numeric characters, including digits from various
+scripts, Roman numerals, et cetera.
+
+This function returns 'True' if its argument has one of the
+following 'GeneralCategory's, or 'False' otherwise:
+
+* 'DecimalNumber'
+* 'LetterNumber'
+* 'OtherNumber'
+
+prop> isNumber c == Data.Char.isNumber c
+
+@since 0.3.0
+-}
+isNumber :: Char -> Bool
+isNumber c = case generalCategory c of
+    DecimalNumber -> True
+    LetterNumber  -> True
+    OtherNumber   -> True
+    _             -> False
diff --git a/lib/Unicode/Internal/Bits.hs b/lib/Unicode/Internal/Bits.hs
--- a/lib/Unicode/Internal/Bits.hs
+++ b/lib/Unicode/Internal/Bits.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE CPP #-}
+
 -- |
 -- Module      : Unicode.Internal.Bits
 -- Copyright   : (c) 2020 Andrew Lelechenko
@@ -10,14 +12,24 @@
 -- Fast, static bitmap lookup utilities
 
 module Unicode.Internal.Bits
-    (
-      lookupBit64
+    ( lookupBit64,
+      lookupIntN
     ) where
 
+#include "MachDeps.h"
+
 import Data.Bits (finiteBitSize, popCount)
 import GHC.Exts
-       (Addr#, Int(..), Word(..), indexWordOffAddr#, and#, andI#,
-        uncheckedIShiftRL#, uncheckedShiftL#)
+       (Addr#, Int(..), Word(..),
+        indexWordOffAddr#, indexWord8OffAddr#,
+        andI#, uncheckedIShiftRL#,
+        and#, word2Int#, uncheckedShiftL#)
+#if MIN_VERSION_base(4,16,0)
+import GHC.Exts (word8ToWord#)
+#endif
+#ifdef WORDS_BIGENDIAN
+import GHC.Exts (byteSwap#)
+#endif
 
 -- | @lookup64 addr index@ looks up the bit stored at bit index @index@ using a
 -- bitmap starting at the address @addr@. Looks up the 64-bit word containing
@@ -35,6 +47,31 @@
       _  -> popCount fbs -- this is a really weird architecture
 
     wordIndex# = index# `uncheckedIShiftRL#` logFbs#
+#ifdef WORDS_BIGENDIAN
+    word## = byteSwap# (indexWordOffAddr# addr# wordIndex#)
+#else
     word## = indexWordOffAddr# addr# wordIndex#
+#endif
     bitIndex# = index# `andI#` fbs#
     bitMask## = 1## `uncheckedShiftL#` bitIndex#
+
+{-| @lookupIntN addr index@ looks up for the @index@-th @8@-bits word in
+the bitmap starting at @addr@, then convert it to an Int.
+
+The caller must make sure that:
+
+* @ceiling (addr + (n * 8))@ is legally accessible @Word8@.
+
+@since 0.3.0
+-}
+lookupIntN
+  :: Addr# -- ^ Bitmap address
+  -> Int   -- ^ Word index
+  -> Int   -- ^ Resulting word as 'Int'
+lookupIntN addr# (I# index#) = I# (word2Int# word##)
+  where
+#if MIN_VERSION_base(4,16,0)
+    word## = word8ToWord# (indexWord8OffAddr# addr# index#)
+#else
+    word## = indexWord8OffAddr# addr# index#
+#endif
diff --git a/lib/Unicode/Internal/Char/UnicodeData/GeneralCategory.hs b/lib/Unicode/Internal/Char/UnicodeData/GeneralCategory.hs
new file mode 100644
# file too large to diff: lib/Unicode/Internal/Char/UnicodeData/GeneralCategory.hs
diff --git a/lib/Unicode/Internal/Char/UnicodeData/SimpleLowerCaseMapping.hs b/lib/Unicode/Internal/Char/UnicodeData/SimpleLowerCaseMapping.hs
new file mode 100644
--- /dev/null
+++ b/lib/Unicode/Internal/Char/UnicodeData/SimpleLowerCaseMapping.hs
@@ -0,0 +1,1448 @@
+-- autogenerated from https://www.unicode.org/Public/14.0.0/ucd/UnicodeData.txt
+-- |
+-- Module      : Unicode.Internal.Char.UnicodeData.SimpleLowerCaseMapping
+-- Copyright   : (c) 2020 Composewell Technologies and Contributors
+-- License     : Apache-2.0
+-- Maintainer  : streamly@composewell.com
+-- Stability   : experimental
+
+module Unicode.Internal.Char.UnicodeData.SimpleLowerCaseMapping
+(toSimpleLowerCase)
+where
+
+{-# NOINLINE toSimpleLowerCase #-}
+toSimpleLowerCase :: Char -> Char
+toSimpleLowerCase 'A' = 'a'
+toSimpleLowerCase 'B' = 'b'
+toSimpleLowerCase 'C' = 'c'
+toSimpleLowerCase 'D' = 'd'
+toSimpleLowerCase 'E' = 'e'
+toSimpleLowerCase 'F' = 'f'
+toSimpleLowerCase 'G' = 'g'
+toSimpleLowerCase 'H' = 'h'
+toSimpleLowerCase 'I' = 'i'
+toSimpleLowerCase 'J' = 'j'
+toSimpleLowerCase 'K' = 'k'
+toSimpleLowerCase 'L' = 'l'
+toSimpleLowerCase 'M' = 'm'
+toSimpleLowerCase 'N' = 'n'
+toSimpleLowerCase 'O' = 'o'
+toSimpleLowerCase 'P' = 'p'
+toSimpleLowerCase 'Q' = 'q'
+toSimpleLowerCase 'R' = 'r'
+toSimpleLowerCase 'S' = 's'
+toSimpleLowerCase 'T' = 't'
+toSimpleLowerCase 'U' = 'u'
+toSimpleLowerCase 'V' = 'v'
+toSimpleLowerCase 'W' = 'w'
+toSimpleLowerCase 'X' = 'x'
+toSimpleLowerCase 'Y' = 'y'
+toSimpleLowerCase 'Z' = 'z'
+toSimpleLowerCase '\192' = '\224'
+toSimpleLowerCase '\193' = '\225'
+toSimpleLowerCase '\194' = '\226'
+toSimpleLowerCase '\195' = '\227'
+toSimpleLowerCase '\196' = '\228'
+toSimpleLowerCase '\197' = '\229'
+toSimpleLowerCase '\198' = '\230'
+toSimpleLowerCase '\199' = '\231'
+toSimpleLowerCase '\200' = '\232'
+toSimpleLowerCase '\201' = '\233'
+toSimpleLowerCase '\202' = '\234'
+toSimpleLowerCase '\203' = '\235'
+toSimpleLowerCase '\204' = '\236'
+toSimpleLowerCase '\205' = '\237'
+toSimpleLowerCase '\206' = '\238'
+toSimpleLowerCase '\207' = '\239'
+toSimpleLowerCase '\208' = '\240'
+toSimpleLowerCase '\209' = '\241'
+toSimpleLowerCase '\210' = '\242'
+toSimpleLowerCase '\211' = '\243'
+toSimpleLowerCase '\212' = '\244'
+toSimpleLowerCase '\213' = '\245'
+toSimpleLowerCase '\214' = '\246'
+toSimpleLowerCase '\216' = '\248'
+toSimpleLowerCase '\217' = '\249'
+toSimpleLowerCase '\218' = '\250'
+toSimpleLowerCase '\219' = '\251'
+toSimpleLowerCase '\220' = '\252'
+toSimpleLowerCase '\221' = '\253'
+toSimpleLowerCase '\222' = '\254'
+toSimpleLowerCase '\256' = '\257'
+toSimpleLowerCase '\258' = '\259'
+toSimpleLowerCase '\260' = '\261'
+toSimpleLowerCase '\262' = '\263'
+toSimpleLowerCase '\264' = '\265'
+toSimpleLowerCase '\266' = '\267'
+toSimpleLowerCase '\268' = '\269'
+toSimpleLowerCase '\270' = '\271'
+toSimpleLowerCase '\272' = '\273'
+toSimpleLowerCase '\274' = '\275'
+toSimpleLowerCase '\276' = '\277'
+toSimpleLowerCase '\278' = '\279'
+toSimpleLowerCase '\280' = '\281'
+toSimpleLowerCase '\282' = '\283'
+toSimpleLowerCase '\284' = '\285'
+toSimpleLowerCase '\286' = '\287'
+toSimpleLowerCase '\288' = '\289'
+toSimpleLowerCase '\290' = '\291'
+toSimpleLowerCase '\292' = '\293'
+toSimpleLowerCase '\294' = '\295'
+toSimpleLowerCase '\296' = '\297'
+toSimpleLowerCase '\298' = '\299'
+toSimpleLowerCase '\300' = '\301'
+toSimpleLowerCase '\302' = '\303'
+toSimpleLowerCase '\304' = 'i'
+toSimpleLowerCase '\306' = '\307'
+toSimpleLowerCase '\308' = '\309'
+toSimpleLowerCase '\310' = '\311'
+toSimpleLowerCase '\313' = '\314'
+toSimpleLowerCase '\315' = '\316'
+toSimpleLowerCase '\317' = '\318'
+toSimpleLowerCase '\319' = '\320'
+toSimpleLowerCase '\321' = '\322'
+toSimpleLowerCase '\323' = '\324'
+toSimpleLowerCase '\325' = '\326'
+toSimpleLowerCase '\327' = '\328'
+toSimpleLowerCase '\330' = '\331'
+toSimpleLowerCase '\332' = '\333'
+toSimpleLowerCase '\334' = '\335'
+toSimpleLowerCase '\336' = '\337'
+toSimpleLowerCase '\338' = '\339'
+toSimpleLowerCase '\340' = '\341'
+toSimpleLowerCase '\342' = '\343'
+toSimpleLowerCase '\344' = '\345'
+toSimpleLowerCase '\346' = '\347'
+toSimpleLowerCase '\348' = '\349'
+toSimpleLowerCase '\350' = '\351'
+toSimpleLowerCase '\352' = '\353'
+toSimpleLowerCase '\354' = '\355'
+toSimpleLowerCase '\356' = '\357'
+toSimpleLowerCase '\358' = '\359'
+toSimpleLowerCase '\360' = '\361'
+toSimpleLowerCase '\362' = '\363'
+toSimpleLowerCase '\364' = '\365'
+toSimpleLowerCase '\366' = '\367'
+toSimpleLowerCase '\368' = '\369'
+toSimpleLowerCase '\370' = '\371'
+toSimpleLowerCase '\372' = '\373'
+toSimpleLowerCase '\374' = '\375'
+toSimpleLowerCase '\376' = '\255'
+toSimpleLowerCase '\377' = '\378'
+toSimpleLowerCase '\379' = '\380'
+toSimpleLowerCase '\381' = '\382'
+toSimpleLowerCase '\385' = '\595'
+toSimpleLowerCase '\386' = '\387'
+toSimpleLowerCase '\388' = '\389'
+toSimpleLowerCase '\390' = '\596'
+toSimpleLowerCase '\391' = '\392'
+toSimpleLowerCase '\393' = '\598'
+toSimpleLowerCase '\394' = '\599'
+toSimpleLowerCase '\395' = '\396'
+toSimpleLowerCase '\398' = '\477'
+toSimpleLowerCase '\399' = '\601'
+toSimpleLowerCase '\400' = '\603'
+toSimpleLowerCase '\401' = '\402'
+toSimpleLowerCase '\403' = '\608'
+toSimpleLowerCase '\404' = '\611'
+toSimpleLowerCase '\406' = '\617'
+toSimpleLowerCase '\407' = '\616'
+toSimpleLowerCase '\408' = '\409'
+toSimpleLowerCase '\412' = '\623'
+toSimpleLowerCase '\413' = '\626'
+toSimpleLowerCase '\415' = '\629'
+toSimpleLowerCase '\416' = '\417'
+toSimpleLowerCase '\418' = '\419'
+toSimpleLowerCase '\420' = '\421'
+toSimpleLowerCase '\422' = '\640'
+toSimpleLowerCase '\423' = '\424'
+toSimpleLowerCase '\425' = '\643'
+toSimpleLowerCase '\428' = '\429'
+toSimpleLowerCase '\430' = '\648'
+toSimpleLowerCase '\431' = '\432'
+toSimpleLowerCase '\433' = '\650'
+toSimpleLowerCase '\434' = '\651'
+toSimpleLowerCase '\435' = '\436'
+toSimpleLowerCase '\437' = '\438'
+toSimpleLowerCase '\439' = '\658'
+toSimpleLowerCase '\440' = '\441'
+toSimpleLowerCase '\444' = '\445'
+toSimpleLowerCase '\452' = '\454'
+toSimpleLowerCase '\453' = '\454'
+toSimpleLowerCase '\455' = '\457'
+toSimpleLowerCase '\456' = '\457'
+toSimpleLowerCase '\458' = '\460'
+toSimpleLowerCase '\459' = '\460'
+toSimpleLowerCase '\461' = '\462'
+toSimpleLowerCase '\463' = '\464'
+toSimpleLowerCase '\465' = '\466'
+toSimpleLowerCase '\467' = '\468'
+toSimpleLowerCase '\469' = '\470'
+toSimpleLowerCase '\471' = '\472'
+toSimpleLowerCase '\473' = '\474'
+toSimpleLowerCase '\475' = '\476'
+toSimpleLowerCase '\478' = '\479'
+toSimpleLowerCase '\480' = '\481'
+toSimpleLowerCase '\482' = '\483'
+toSimpleLowerCase '\484' = '\485'
+toSimpleLowerCase '\486' = '\487'
+toSimpleLowerCase '\488' = '\489'
+toSimpleLowerCase '\490' = '\491'
+toSimpleLowerCase '\492' = '\493'
+toSimpleLowerCase '\494' = '\495'
+toSimpleLowerCase '\497' = '\499'
+toSimpleLowerCase '\498' = '\499'
+toSimpleLowerCase '\500' = '\501'
+toSimpleLowerCase '\502' = '\405'
+toSimpleLowerCase '\503' = '\447'
+toSimpleLowerCase '\504' = '\505'
+toSimpleLowerCase '\506' = '\507'
+toSimpleLowerCase '\508' = '\509'
+toSimpleLowerCase '\510' = '\511'
+toSimpleLowerCase '\512' = '\513'
+toSimpleLowerCase '\514' = '\515'
+toSimpleLowerCase '\516' = '\517'
+toSimpleLowerCase '\518' = '\519'
+toSimpleLowerCase '\520' = '\521'
+toSimpleLowerCase '\522' = '\523'
+toSimpleLowerCase '\524' = '\525'
+toSimpleLowerCase '\526' = '\527'
+toSimpleLowerCase '\528' = '\529'
+toSimpleLowerCase '\530' = '\531'
+toSimpleLowerCase '\532' = '\533'
+toSimpleLowerCase '\534' = '\535'
+toSimpleLowerCase '\536' = '\537'
+toSimpleLowerCase '\538' = '\539'
+toSimpleLowerCase '\540' = '\541'
+toSimpleLowerCase '\542' = '\543'
+toSimpleLowerCase '\544' = '\414'
+toSimpleLowerCase '\546' = '\547'
+toSimpleLowerCase '\548' = '\549'
+toSimpleLowerCase '\550' = '\551'
+toSimpleLowerCase '\552' = '\553'
+toSimpleLowerCase '\554' = '\555'
+toSimpleLowerCase '\556' = '\557'
+toSimpleLowerCase '\558' = '\559'
+toSimpleLowerCase '\560' = '\561'
+toSimpleLowerCase '\562' = '\563'
+toSimpleLowerCase '\570' = '\11365'
+toSimpleLowerCase '\571' = '\572'
+toSimpleLowerCase '\573' = '\410'
+toSimpleLowerCase '\574' = '\11366'
+toSimpleLowerCase '\577' = '\578'
+toSimpleLowerCase '\579' = '\384'
+toSimpleLowerCase '\580' = '\649'
+toSimpleLowerCase '\581' = '\652'
+toSimpleLowerCase '\582' = '\583'
+toSimpleLowerCase '\584' = '\585'
+toSimpleLowerCase '\586' = '\587'
+toSimpleLowerCase '\588' = '\589'
+toSimpleLowerCase '\590' = '\591'
+toSimpleLowerCase '\880' = '\881'
+toSimpleLowerCase '\882' = '\883'
+toSimpleLowerCase '\886' = '\887'
+toSimpleLowerCase '\895' = '\1011'
+toSimpleLowerCase '\902' = '\940'
+toSimpleLowerCase '\904' = '\941'
+toSimpleLowerCase '\905' = '\942'
+toSimpleLowerCase '\906' = '\943'
+toSimpleLowerCase '\908' = '\972'
+toSimpleLowerCase '\910' = '\973'
+toSimpleLowerCase '\911' = '\974'
+toSimpleLowerCase '\913' = '\945'
+toSimpleLowerCase '\914' = '\946'
+toSimpleLowerCase '\915' = '\947'
+toSimpleLowerCase '\916' = '\948'
+toSimpleLowerCase '\917' = '\949'
+toSimpleLowerCase '\918' = '\950'
+toSimpleLowerCase '\919' = '\951'
+toSimpleLowerCase '\920' = '\952'
+toSimpleLowerCase '\921' = '\953'
+toSimpleLowerCase '\922' = '\954'
+toSimpleLowerCase '\923' = '\955'
+toSimpleLowerCase '\924' = '\956'
+toSimpleLowerCase '\925' = '\957'
+toSimpleLowerCase '\926' = '\958'
+toSimpleLowerCase '\927' = '\959'
+toSimpleLowerCase '\928' = '\960'
+toSimpleLowerCase '\929' = '\961'
+toSimpleLowerCase '\931' = '\963'
+toSimpleLowerCase '\932' = '\964'
+toSimpleLowerCase '\933' = '\965'
+toSimpleLowerCase '\934' = '\966'
+toSimpleLowerCase '\935' = '\967'
+toSimpleLowerCase '\936' = '\968'
+toSimpleLowerCase '\937' = '\969'
+toSimpleLowerCase '\938' = '\970'
+toSimpleLowerCase '\939' = '\971'
+toSimpleLowerCase '\975' = '\983'
+toSimpleLowerCase '\984' = '\985'
+toSimpleLowerCase '\986' = '\987'
+toSimpleLowerCase '\988' = '\989'
+toSimpleLowerCase '\990' = '\991'
+toSimpleLowerCase '\992' = '\993'
+toSimpleLowerCase '\994' = '\995'
+toSimpleLowerCase '\996' = '\997'
+toSimpleLowerCase '\998' = '\999'
+toSimpleLowerCase '\1000' = '\1001'
+toSimpleLowerCase '\1002' = '\1003'
+toSimpleLowerCase '\1004' = '\1005'
+toSimpleLowerCase '\1006' = '\1007'
+toSimpleLowerCase '\1012' = '\952'
+toSimpleLowerCase '\1015' = '\1016'
+toSimpleLowerCase '\1017' = '\1010'
+toSimpleLowerCase '\1018' = '\1019'
+toSimpleLowerCase '\1021' = '\891'
+toSimpleLowerCase '\1022' = '\892'
+toSimpleLowerCase '\1023' = '\893'
+toSimpleLowerCase '\1024' = '\1104'
+toSimpleLowerCase '\1025' = '\1105'
+toSimpleLowerCase '\1026' = '\1106'
+toSimpleLowerCase '\1027' = '\1107'
+toSimpleLowerCase '\1028' = '\1108'
+toSimpleLowerCase '\1029' = '\1109'
+toSimpleLowerCase '\1030' = '\1110'
+toSimpleLowerCase '\1031' = '\1111'
+toSimpleLowerCase '\1032' = '\1112'
+toSimpleLowerCase '\1033' = '\1113'
+toSimpleLowerCase '\1034' = '\1114'
+toSimpleLowerCase '\1035' = '\1115'
+toSimpleLowerCase '\1036' = '\1116'
+toSimpleLowerCase '\1037' = '\1117'
+toSimpleLowerCase '\1038' = '\1118'
+toSimpleLowerCase '\1039' = '\1119'
+toSimpleLowerCase '\1040' = '\1072'
+toSimpleLowerCase '\1041' = '\1073'
+toSimpleLowerCase '\1042' = '\1074'
+toSimpleLowerCase '\1043' = '\1075'
+toSimpleLowerCase '\1044' = '\1076'
+toSimpleLowerCase '\1045' = '\1077'
+toSimpleLowerCase '\1046' = '\1078'
+toSimpleLowerCase '\1047' = '\1079'
+toSimpleLowerCase '\1048' = '\1080'
+toSimpleLowerCase '\1049' = '\1081'
+toSimpleLowerCase '\1050' = '\1082'
+toSimpleLowerCase '\1051' = '\1083'
+toSimpleLowerCase '\1052' = '\1084'
+toSimpleLowerCase '\1053' = '\1085'
+toSimpleLowerCase '\1054' = '\1086'
+toSimpleLowerCase '\1055' = '\1087'
+toSimpleLowerCase '\1056' = '\1088'
+toSimpleLowerCase '\1057' = '\1089'
+toSimpleLowerCase '\1058' = '\1090'
+toSimpleLowerCase '\1059' = '\1091'
+toSimpleLowerCase '\1060' = '\1092'
+toSimpleLowerCase '\1061' = '\1093'
+toSimpleLowerCase '\1062' = '\1094'
+toSimpleLowerCase '\1063' = '\1095'
+toSimpleLowerCase '\1064' = '\1096'
+toSimpleLowerCase '\1065' = '\1097'
+toSimpleLowerCase '\1066' = '\1098'
+toSimpleLowerCase '\1067' = '\1099'
+toSimpleLowerCase '\1068' = '\1100'
+toSimpleLowerCase '\1069' = '\1101'
+toSimpleLowerCase '\1070' = '\1102'
+toSimpleLowerCase '\1071' = '\1103'
+toSimpleLowerCase '\1120' = '\1121'
+toSimpleLowerCase '\1122' = '\1123'
+toSimpleLowerCase '\1124' = '\1125'
+toSimpleLowerCase '\1126' = '\1127'
+toSimpleLowerCase '\1128' = '\1129'
+toSimpleLowerCase '\1130' = '\1131'
+toSimpleLowerCase '\1132' = '\1133'
+toSimpleLowerCase '\1134' = '\1135'
+toSimpleLowerCase '\1136' = '\1137'
+toSimpleLowerCase '\1138' = '\1139'
+toSimpleLowerCase '\1140' = '\1141'
+toSimpleLowerCase '\1142' = '\1143'
+toSimpleLowerCase '\1144' = '\1145'
+toSimpleLowerCase '\1146' = '\1147'
+toSimpleLowerCase '\1148' = '\1149'
+toSimpleLowerCase '\1150' = '\1151'
+toSimpleLowerCase '\1152' = '\1153'
+toSimpleLowerCase '\1162' = '\1163'
+toSimpleLowerCase '\1164' = '\1165'
+toSimpleLowerCase '\1166' = '\1167'
+toSimpleLowerCase '\1168' = '\1169'
+toSimpleLowerCase '\1170' = '\1171'
+toSimpleLowerCase '\1172' = '\1173'
+toSimpleLowerCase '\1174' = '\1175'
+toSimpleLowerCase '\1176' = '\1177'
+toSimpleLowerCase '\1178' = '\1179'
+toSimpleLowerCase '\1180' = '\1181'
+toSimpleLowerCase '\1182' = '\1183'
+toSimpleLowerCase '\1184' = '\1185'
+toSimpleLowerCase '\1186' = '\1187'
+toSimpleLowerCase '\1188' = '\1189'
+toSimpleLowerCase '\1190' = '\1191'
+toSimpleLowerCase '\1192' = '\1193'
+toSimpleLowerCase '\1194' = '\1195'
+toSimpleLowerCase '\1196' = '\1197'
+toSimpleLowerCase '\1198' = '\1199'
+toSimpleLowerCase '\1200' = '\1201'
+toSimpleLowerCase '\1202' = '\1203'
+toSimpleLowerCase '\1204' = '\1205'
+toSimpleLowerCase '\1206' = '\1207'
+toSimpleLowerCase '\1208' = '\1209'
+toSimpleLowerCase '\1210' = '\1211'
+toSimpleLowerCase '\1212' = '\1213'
+toSimpleLowerCase '\1214' = '\1215'
+toSimpleLowerCase '\1216' = '\1231'
+toSimpleLowerCase '\1217' = '\1218'
+toSimpleLowerCase '\1219' = '\1220'
+toSimpleLowerCase '\1221' = '\1222'
+toSimpleLowerCase '\1223' = '\1224'
+toSimpleLowerCase '\1225' = '\1226'
+toSimpleLowerCase '\1227' = '\1228'
+toSimpleLowerCase '\1229' = '\1230'
+toSimpleLowerCase '\1232' = '\1233'
+toSimpleLowerCase '\1234' = '\1235'
+toSimpleLowerCase '\1236' = '\1237'
+toSimpleLowerCase '\1238' = '\1239'
+toSimpleLowerCase '\1240' = '\1241'
+toSimpleLowerCase '\1242' = '\1243'
+toSimpleLowerCase '\1244' = '\1245'
+toSimpleLowerCase '\1246' = '\1247'
+toSimpleLowerCase '\1248' = '\1249'
+toSimpleLowerCase '\1250' = '\1251'
+toSimpleLowerCase '\1252' = '\1253'
+toSimpleLowerCase '\1254' = '\1255'
+toSimpleLowerCase '\1256' = '\1257'
+toSimpleLowerCase '\1258' = '\1259'
+toSimpleLowerCase '\1260' = '\1261'
+toSimpleLowerCase '\1262' = '\1263'
+toSimpleLowerCase '\1264' = '\1265'
+toSimpleLowerCase '\1266' = '\1267'
+toSimpleLowerCase '\1268' = '\1269'
+toSimpleLowerCase '\1270' = '\1271'
+toSimpleLowerCase '\1272' = '\1273'
+toSimpleLowerCase '\1274' = '\1275'
+toSimpleLowerCase '\1276' = '\1277'
+toSimpleLowerCase '\1278' = '\1279'
+toSimpleLowerCase '\1280' = '\1281'
+toSimpleLowerCase '\1282' = '\1283'
+toSimpleLowerCase '\1284' = '\1285'
+toSimpleLowerCase '\1286' = '\1287'
+toSimpleLowerCase '\1288' = '\1289'
+toSimpleLowerCase '\1290' = '\1291'
+toSimpleLowerCase '\1292' = '\1293'
+toSimpleLowerCase '\1294' = '\1295'
+toSimpleLowerCase '\1296' = '\1297'
+toSimpleLowerCase '\1298' = '\1299'
+toSimpleLowerCase '\1300' = '\1301'
+toSimpleLowerCase '\1302' = '\1303'
+toSimpleLowerCase '\1304' = '\1305'
+toSimpleLowerCase '\1306' = '\1307'
+toSimpleLowerCase '\1308' = '\1309'
+toSimpleLowerCase '\1310' = '\1311'
+toSimpleLowerCase '\1312' = '\1313'
+toSimpleLowerCase '\1314' = '\1315'
+toSimpleLowerCase '\1316' = '\1317'
+toSimpleLowerCase '\1318' = '\1319'
+toSimpleLowerCase '\1320' = '\1321'
+toSimpleLowerCase '\1322' = '\1323'
+toSimpleLowerCase '\1324' = '\1325'
+toSimpleLowerCase '\1326' = '\1327'
+toSimpleLowerCase '\1329' = '\1377'
+toSimpleLowerCase '\1330' = '\1378'
+toSimpleLowerCase '\1331' = '\1379'
+toSimpleLowerCase '\1332' = '\1380'
+toSimpleLowerCase '\1333' = '\1381'
+toSimpleLowerCase '\1334' = '\1382'
+toSimpleLowerCase '\1335' = '\1383'
+toSimpleLowerCase '\1336' = '\1384'
+toSimpleLowerCase '\1337' = '\1385'
+toSimpleLowerCase '\1338' = '\1386'
+toSimpleLowerCase '\1339' = '\1387'
+toSimpleLowerCase '\1340' = '\1388'
+toSimpleLowerCase '\1341' = '\1389'
+toSimpleLowerCase '\1342' = '\1390'
+toSimpleLowerCase '\1343' = '\1391'
+toSimpleLowerCase '\1344' = '\1392'
+toSimpleLowerCase '\1345' = '\1393'
+toSimpleLowerCase '\1346' = '\1394'
+toSimpleLowerCase '\1347' = '\1395'
+toSimpleLowerCase '\1348' = '\1396'
+toSimpleLowerCase '\1349' = '\1397'
+toSimpleLowerCase '\1350' = '\1398'
+toSimpleLowerCase '\1351' = '\1399'
+toSimpleLowerCase '\1352' = '\1400'
+toSimpleLowerCase '\1353' = '\1401'
+toSimpleLowerCase '\1354' = '\1402'
+toSimpleLowerCase '\1355' = '\1403'
+toSimpleLowerCase '\1356' = '\1404'
+toSimpleLowerCase '\1357' = '\1405'
+toSimpleLowerCase '\1358' = '\1406'
+toSimpleLowerCase '\1359' = '\1407'
+toSimpleLowerCase '\1360' = '\1408'
+toSimpleLowerCase '\1361' = '\1409'
+toSimpleLowerCase '\1362' = '\1410'
+toSimpleLowerCase '\1363' = '\1411'
+toSimpleLowerCase '\1364' = '\1412'
+toSimpleLowerCase '\1365' = '\1413'
+toSimpleLowerCase '\1366' = '\1414'
+toSimpleLowerCase '\4256' = '\11520'
+toSimpleLowerCase '\4257' = '\11521'
+toSimpleLowerCase '\4258' = '\11522'
+toSimpleLowerCase '\4259' = '\11523'
+toSimpleLowerCase '\4260' = '\11524'
+toSimpleLowerCase '\4261' = '\11525'
+toSimpleLowerCase '\4262' = '\11526'
+toSimpleLowerCase '\4263' = '\11527'
+toSimpleLowerCase '\4264' = '\11528'
+toSimpleLowerCase '\4265' = '\11529'
+toSimpleLowerCase '\4266' = '\11530'
+toSimpleLowerCase '\4267' = '\11531'
+toSimpleLowerCase '\4268' = '\11532'
+toSimpleLowerCase '\4269' = '\11533'
+toSimpleLowerCase '\4270' = '\11534'
+toSimpleLowerCase '\4271' = '\11535'
+toSimpleLowerCase '\4272' = '\11536'
+toSimpleLowerCase '\4273' = '\11537'
+toSimpleLowerCase '\4274' = '\11538'
+toSimpleLowerCase '\4275' = '\11539'
+toSimpleLowerCase '\4276' = '\11540'
+toSimpleLowerCase '\4277' = '\11541'
+toSimpleLowerCase '\4278' = '\11542'
+toSimpleLowerCase '\4279' = '\11543'
+toSimpleLowerCase '\4280' = '\11544'
+toSimpleLowerCase '\4281' = '\11545'
+toSimpleLowerCase '\4282' = '\11546'
+toSimpleLowerCase '\4283' = '\11547'
+toSimpleLowerCase '\4284' = '\11548'
+toSimpleLowerCase '\4285' = '\11549'
+toSimpleLowerCase '\4286' = '\11550'
+toSimpleLowerCase '\4287' = '\11551'
+toSimpleLowerCase '\4288' = '\11552'
+toSimpleLowerCase '\4289' = '\11553'
+toSimpleLowerCase '\4290' = '\11554'
+toSimpleLowerCase '\4291' = '\11555'
+toSimpleLowerCase '\4292' = '\11556'
+toSimpleLowerCase '\4293' = '\11557'
+toSimpleLowerCase '\4295' = '\11559'
+toSimpleLowerCase '\4301' = '\11565'
+toSimpleLowerCase '\5024' = '\43888'
+toSimpleLowerCase '\5025' = '\43889'
+toSimpleLowerCase '\5026' = '\43890'
+toSimpleLowerCase '\5027' = '\43891'
+toSimpleLowerCase '\5028' = '\43892'
+toSimpleLowerCase '\5029' = '\43893'
+toSimpleLowerCase '\5030' = '\43894'
+toSimpleLowerCase '\5031' = '\43895'
+toSimpleLowerCase '\5032' = '\43896'
+toSimpleLowerCase '\5033' = '\43897'
+toSimpleLowerCase '\5034' = '\43898'
+toSimpleLowerCase '\5035' = '\43899'
+toSimpleLowerCase '\5036' = '\43900'
+toSimpleLowerCase '\5037' = '\43901'
+toSimpleLowerCase '\5038' = '\43902'
+toSimpleLowerCase '\5039' = '\43903'
+toSimpleLowerCase '\5040' = '\43904'
+toSimpleLowerCase '\5041' = '\43905'
+toSimpleLowerCase '\5042' = '\43906'
+toSimpleLowerCase '\5043' = '\43907'
+toSimpleLowerCase '\5044' = '\43908'
+toSimpleLowerCase '\5045' = '\43909'
+toSimpleLowerCase '\5046' = '\43910'
+toSimpleLowerCase '\5047' = '\43911'
+toSimpleLowerCase '\5048' = '\43912'
+toSimpleLowerCase '\5049' = '\43913'
+toSimpleLowerCase '\5050' = '\43914'
+toSimpleLowerCase '\5051' = '\43915'
+toSimpleLowerCase '\5052' = '\43916'
+toSimpleLowerCase '\5053' = '\43917'
+toSimpleLowerCase '\5054' = '\43918'
+toSimpleLowerCase '\5055' = '\43919'
+toSimpleLowerCase '\5056' = '\43920'
+toSimpleLowerCase '\5057' = '\43921'
+toSimpleLowerCase '\5058' = '\43922'
+toSimpleLowerCase '\5059' = '\43923'
+toSimpleLowerCase '\5060' = '\43924'
+toSimpleLowerCase '\5061' = '\43925'
+toSimpleLowerCase '\5062' = '\43926'
+toSimpleLowerCase '\5063' = '\43927'
+toSimpleLowerCase '\5064' = '\43928'
+toSimpleLowerCase '\5065' = '\43929'
+toSimpleLowerCase '\5066' = '\43930'
+toSimpleLowerCase '\5067' = '\43931'
+toSimpleLowerCase '\5068' = '\43932'
+toSimpleLowerCase '\5069' = '\43933'
+toSimpleLowerCase '\5070' = '\43934'
+toSimpleLowerCase '\5071' = '\43935'
+toSimpleLowerCase '\5072' = '\43936'
+toSimpleLowerCase '\5073' = '\43937'
+toSimpleLowerCase '\5074' = '\43938'
+toSimpleLowerCase '\5075' = '\43939'
+toSimpleLowerCase '\5076' = '\43940'
+toSimpleLowerCase '\5077' = '\43941'
+toSimpleLowerCase '\5078' = '\43942'
+toSimpleLowerCase '\5079' = '\43943'
+toSimpleLowerCase '\5080' = '\43944'
+toSimpleLowerCase '\5081' = '\43945'
+toSimpleLowerCase '\5082' = '\43946'
+toSimpleLowerCase '\5083' = '\43947'
+toSimpleLowerCase '\5084' = '\43948'
+toSimpleLowerCase '\5085' = '\43949'
+toSimpleLowerCase '\5086' = '\43950'
+toSimpleLowerCase '\5087' = '\43951'
+toSimpleLowerCase '\5088' = '\43952'
+toSimpleLowerCase '\5089' = '\43953'
+toSimpleLowerCase '\5090' = '\43954'
+toSimpleLowerCase '\5091' = '\43955'
+toSimpleLowerCase '\5092' = '\43956'
+toSimpleLowerCase '\5093' = '\43957'
+toSimpleLowerCase '\5094' = '\43958'
+toSimpleLowerCase '\5095' = '\43959'
+toSimpleLowerCase '\5096' = '\43960'
+toSimpleLowerCase '\5097' = '\43961'
+toSimpleLowerCase '\5098' = '\43962'
+toSimpleLowerCase '\5099' = '\43963'
+toSimpleLowerCase '\5100' = '\43964'
+toSimpleLowerCase '\5101' = '\43965'
+toSimpleLowerCase '\5102' = '\43966'
+toSimpleLowerCase '\5103' = '\43967'
+toSimpleLowerCase '\5104' = '\5112'
+toSimpleLowerCase '\5105' = '\5113'
+toSimpleLowerCase '\5106' = '\5114'
+toSimpleLowerCase '\5107' = '\5115'
+toSimpleLowerCase '\5108' = '\5116'
+toSimpleLowerCase '\5109' = '\5117'
+toSimpleLowerCase '\7312' = '\4304'
+toSimpleLowerCase '\7313' = '\4305'
+toSimpleLowerCase '\7314' = '\4306'
+toSimpleLowerCase '\7315' = '\4307'
+toSimpleLowerCase '\7316' = '\4308'
+toSimpleLowerCase '\7317' = '\4309'
+toSimpleLowerCase '\7318' = '\4310'
+toSimpleLowerCase '\7319' = '\4311'
+toSimpleLowerCase '\7320' = '\4312'
+toSimpleLowerCase '\7321' = '\4313'
+toSimpleLowerCase '\7322' = '\4314'
+toSimpleLowerCase '\7323' = '\4315'
+toSimpleLowerCase '\7324' = '\4316'
+toSimpleLowerCase '\7325' = '\4317'
+toSimpleLowerCase '\7326' = '\4318'
+toSimpleLowerCase '\7327' = '\4319'
+toSimpleLowerCase '\7328' = '\4320'
+toSimpleLowerCase '\7329' = '\4321'
+toSimpleLowerCase '\7330' = '\4322'
+toSimpleLowerCase '\7331' = '\4323'
+toSimpleLowerCase '\7332' = '\4324'
+toSimpleLowerCase '\7333' = '\4325'
+toSimpleLowerCase '\7334' = '\4326'
+toSimpleLowerCase '\7335' = '\4327'
+toSimpleLowerCase '\7336' = '\4328'
+toSimpleLowerCase '\7337' = '\4329'
+toSimpleLowerCase '\7338' = '\4330'
+toSimpleLowerCase '\7339' = '\4331'
+toSimpleLowerCase '\7340' = '\4332'
+toSimpleLowerCase '\7341' = '\4333'
+toSimpleLowerCase '\7342' = '\4334'
+toSimpleLowerCase '\7343' = '\4335'
+toSimpleLowerCase '\7344' = '\4336'
+toSimpleLowerCase '\7345' = '\4337'
+toSimpleLowerCase '\7346' = '\4338'
+toSimpleLowerCase '\7347' = '\4339'
+toSimpleLowerCase '\7348' = '\4340'
+toSimpleLowerCase '\7349' = '\4341'
+toSimpleLowerCase '\7350' = '\4342'
+toSimpleLowerCase '\7351' = '\4343'
+toSimpleLowerCase '\7352' = '\4344'
+toSimpleLowerCase '\7353' = '\4345'
+toSimpleLowerCase '\7354' = '\4346'
+toSimpleLowerCase '\7357' = '\4349'
+toSimpleLowerCase '\7358' = '\4350'
+toSimpleLowerCase '\7359' = '\4351'
+toSimpleLowerCase '\7680' = '\7681'
+toSimpleLowerCase '\7682' = '\7683'
+toSimpleLowerCase '\7684' = '\7685'
+toSimpleLowerCase '\7686' = '\7687'
+toSimpleLowerCase '\7688' = '\7689'
+toSimpleLowerCase '\7690' = '\7691'
+toSimpleLowerCase '\7692' = '\7693'
+toSimpleLowerCase '\7694' = '\7695'
+toSimpleLowerCase '\7696' = '\7697'
+toSimpleLowerCase '\7698' = '\7699'
+toSimpleLowerCase '\7700' = '\7701'
+toSimpleLowerCase '\7702' = '\7703'
+toSimpleLowerCase '\7704' = '\7705'
+toSimpleLowerCase '\7706' = '\7707'
+toSimpleLowerCase '\7708' = '\7709'
+toSimpleLowerCase '\7710' = '\7711'
+toSimpleLowerCase '\7712' = '\7713'
+toSimpleLowerCase '\7714' = '\7715'
+toSimpleLowerCase '\7716' = '\7717'
+toSimpleLowerCase '\7718' = '\7719'
+toSimpleLowerCase '\7720' = '\7721'
+toSimpleLowerCase '\7722' = '\7723'
+toSimpleLowerCase '\7724' = '\7725'
+toSimpleLowerCase '\7726' = '\7727'
+toSimpleLowerCase '\7728' = '\7729'
+toSimpleLowerCase '\7730' = '\7731'
+toSimpleLowerCase '\7732' = '\7733'
+toSimpleLowerCase '\7734' = '\7735'
+toSimpleLowerCase '\7736' = '\7737'
+toSimpleLowerCase '\7738' = '\7739'
+toSimpleLowerCase '\7740' = '\7741'
+toSimpleLowerCase '\7742' = '\7743'
+toSimpleLowerCase '\7744' = '\7745'
+toSimpleLowerCase '\7746' = '\7747'
+toSimpleLowerCase '\7748' = '\7749'
+toSimpleLowerCase '\7750' = '\7751'
+toSimpleLowerCase '\7752' = '\7753'
+toSimpleLowerCase '\7754' = '\7755'
+toSimpleLowerCase '\7756' = '\7757'
+toSimpleLowerCase '\7758' = '\7759'
+toSimpleLowerCase '\7760' = '\7761'
+toSimpleLowerCase '\7762' = '\7763'
+toSimpleLowerCase '\7764' = '\7765'
+toSimpleLowerCase '\7766' = '\7767'
+toSimpleLowerCase '\7768' = '\7769'
+toSimpleLowerCase '\7770' = '\7771'
+toSimpleLowerCase '\7772' = '\7773'
+toSimpleLowerCase '\7774' = '\7775'
+toSimpleLowerCase '\7776' = '\7777'
+toSimpleLowerCase '\7778' = '\7779'
+toSimpleLowerCase '\7780' = '\7781'
+toSimpleLowerCase '\7782' = '\7783'
+toSimpleLowerCase '\7784' = '\7785'
+toSimpleLowerCase '\7786' = '\7787'
+toSimpleLowerCase '\7788' = '\7789'
+toSimpleLowerCase '\7790' = '\7791'
+toSimpleLowerCase '\7792' = '\7793'
+toSimpleLowerCase '\7794' = '\7795'
+toSimpleLowerCase '\7796' = '\7797'
+toSimpleLowerCase '\7798' = '\7799'
+toSimpleLowerCase '\7800' = '\7801'
+toSimpleLowerCase '\7802' = '\7803'
+toSimpleLowerCase '\7804' = '\7805'
+toSimpleLowerCase '\7806' = '\7807'
+toSimpleLowerCase '\7808' = '\7809'
+toSimpleLowerCase '\7810' = '\7811'
+toSimpleLowerCase '\7812' = '\7813'
+toSimpleLowerCase '\7814' = '\7815'
+toSimpleLowerCase '\7816' = '\7817'
+toSimpleLowerCase '\7818' = '\7819'
+toSimpleLowerCase '\7820' = '\7821'
+toSimpleLowerCase '\7822' = '\7823'
+toSimpleLowerCase '\7824' = '\7825'
+toSimpleLowerCase '\7826' = '\7827'
+toSimpleLowerCase '\7828' = '\7829'
+toSimpleLowerCase '\7838' = '\223'
+toSimpleLowerCase '\7840' = '\7841'
+toSimpleLowerCase '\7842' = '\7843'
+toSimpleLowerCase '\7844' = '\7845'
+toSimpleLowerCase '\7846' = '\7847'
+toSimpleLowerCase '\7848' = '\7849'
+toSimpleLowerCase '\7850' = '\7851'
+toSimpleLowerCase '\7852' = '\7853'
+toSimpleLowerCase '\7854' = '\7855'
+toSimpleLowerCase '\7856' = '\7857'
+toSimpleLowerCase '\7858' = '\7859'
+toSimpleLowerCase '\7860' = '\7861'
+toSimpleLowerCase '\7862' = '\7863'
+toSimpleLowerCase '\7864' = '\7865'
+toSimpleLowerCase '\7866' = '\7867'
+toSimpleLowerCase '\7868' = '\7869'
+toSimpleLowerCase '\7870' = '\7871'
+toSimpleLowerCase '\7872' = '\7873'
+toSimpleLowerCase '\7874' = '\7875'
+toSimpleLowerCase '\7876' = '\7877'
+toSimpleLowerCase '\7878' = '\7879'
+toSimpleLowerCase '\7880' = '\7881'
+toSimpleLowerCase '\7882' = '\7883'
+toSimpleLowerCase '\7884' = '\7885'
+toSimpleLowerCase '\7886' = '\7887'
+toSimpleLowerCase '\7888' = '\7889'
+toSimpleLowerCase '\7890' = '\7891'
+toSimpleLowerCase '\7892' = '\7893'
+toSimpleLowerCase '\7894' = '\7895'
+toSimpleLowerCase '\7896' = '\7897'
+toSimpleLowerCase '\7898' = '\7899'
+toSimpleLowerCase '\7900' = '\7901'
+toSimpleLowerCase '\7902' = '\7903'
+toSimpleLowerCase '\7904' = '\7905'
+toSimpleLowerCase '\7906' = '\7907'
+toSimpleLowerCase '\7908' = '\7909'
+toSimpleLowerCase '\7910' = '\7911'
+toSimpleLowerCase '\7912' = '\7913'
+toSimpleLowerCase '\7914' = '\7915'
+toSimpleLowerCase '\7916' = '\7917'
+toSimpleLowerCase '\7918' = '\7919'
+toSimpleLowerCase '\7920' = '\7921'
+toSimpleLowerCase '\7922' = '\7923'
+toSimpleLowerCase '\7924' = '\7925'
+toSimpleLowerCase '\7926' = '\7927'
+toSimpleLowerCase '\7928' = '\7929'
+toSimpleLowerCase '\7930' = '\7931'
+toSimpleLowerCase '\7932' = '\7933'
+toSimpleLowerCase '\7934' = '\7935'
+toSimpleLowerCase '\7944' = '\7936'
+toSimpleLowerCase '\7945' = '\7937'
+toSimpleLowerCase '\7946' = '\7938'
+toSimpleLowerCase '\7947' = '\7939'
+toSimpleLowerCase '\7948' = '\7940'
+toSimpleLowerCase '\7949' = '\7941'
+toSimpleLowerCase '\7950' = '\7942'
+toSimpleLowerCase '\7951' = '\7943'
+toSimpleLowerCase '\7960' = '\7952'
+toSimpleLowerCase '\7961' = '\7953'
+toSimpleLowerCase '\7962' = '\7954'
+toSimpleLowerCase '\7963' = '\7955'
+toSimpleLowerCase '\7964' = '\7956'
+toSimpleLowerCase '\7965' = '\7957'
+toSimpleLowerCase '\7976' = '\7968'
+toSimpleLowerCase '\7977' = '\7969'
+toSimpleLowerCase '\7978' = '\7970'
+toSimpleLowerCase '\7979' = '\7971'
+toSimpleLowerCase '\7980' = '\7972'
+toSimpleLowerCase '\7981' = '\7973'
+toSimpleLowerCase '\7982' = '\7974'
+toSimpleLowerCase '\7983' = '\7975'
+toSimpleLowerCase '\7992' = '\7984'
+toSimpleLowerCase '\7993' = '\7985'
+toSimpleLowerCase '\7994' = '\7986'
+toSimpleLowerCase '\7995' = '\7987'
+toSimpleLowerCase '\7996' = '\7988'
+toSimpleLowerCase '\7997' = '\7989'
+toSimpleLowerCase '\7998' = '\7990'
+toSimpleLowerCase '\7999' = '\7991'
+toSimpleLowerCase '\8008' = '\8000'
+toSimpleLowerCase '\8009' = '\8001'
+toSimpleLowerCase '\8010' = '\8002'
+toSimpleLowerCase '\8011' = '\8003'
+toSimpleLowerCase '\8012' = '\8004'
+toSimpleLowerCase '\8013' = '\8005'
+toSimpleLowerCase '\8025' = '\8017'
+toSimpleLowerCase '\8027' = '\8019'
+toSimpleLowerCase '\8029' = '\8021'
+toSimpleLowerCase '\8031' = '\8023'
+toSimpleLowerCase '\8040' = '\8032'
+toSimpleLowerCase '\8041' = '\8033'
+toSimpleLowerCase '\8042' = '\8034'
+toSimpleLowerCase '\8043' = '\8035'
+toSimpleLowerCase '\8044' = '\8036'
+toSimpleLowerCase '\8045' = '\8037'
+toSimpleLowerCase '\8046' = '\8038'
+toSimpleLowerCase '\8047' = '\8039'
+toSimpleLowerCase '\8072' = '\8064'
+toSimpleLowerCase '\8073' = '\8065'
+toSimpleLowerCase '\8074' = '\8066'
+toSimpleLowerCase '\8075' = '\8067'
+toSimpleLowerCase '\8076' = '\8068'
+toSimpleLowerCase '\8077' = '\8069'
+toSimpleLowerCase '\8078' = '\8070'
+toSimpleLowerCase '\8079' = '\8071'
+toSimpleLowerCase '\8088' = '\8080'
+toSimpleLowerCase '\8089' = '\8081'
+toSimpleLowerCase '\8090' = '\8082'
+toSimpleLowerCase '\8091' = '\8083'
+toSimpleLowerCase '\8092' = '\8084'
+toSimpleLowerCase '\8093' = '\8085'
+toSimpleLowerCase '\8094' = '\8086'
+toSimpleLowerCase '\8095' = '\8087'
+toSimpleLowerCase '\8104' = '\8096'
+toSimpleLowerCase '\8105' = '\8097'
+toSimpleLowerCase '\8106' = '\8098'
+toSimpleLowerCase '\8107' = '\8099'
+toSimpleLowerCase '\8108' = '\8100'
+toSimpleLowerCase '\8109' = '\8101'
+toSimpleLowerCase '\8110' = '\8102'
+toSimpleLowerCase '\8111' = '\8103'
+toSimpleLowerCase '\8120' = '\8112'
+toSimpleLowerCase '\8121' = '\8113'
+toSimpleLowerCase '\8122' = '\8048'
+toSimpleLowerCase '\8123' = '\8049'
+toSimpleLowerCase '\8124' = '\8115'
+toSimpleLowerCase '\8136' = '\8050'
+toSimpleLowerCase '\8137' = '\8051'
+toSimpleLowerCase '\8138' = '\8052'
+toSimpleLowerCase '\8139' = '\8053'
+toSimpleLowerCase '\8140' = '\8131'
+toSimpleLowerCase '\8152' = '\8144'
+toSimpleLowerCase '\8153' = '\8145'
+toSimpleLowerCase '\8154' = '\8054'
+toSimpleLowerCase '\8155' = '\8055'
+toSimpleLowerCase '\8168' = '\8160'
+toSimpleLowerCase '\8169' = '\8161'
+toSimpleLowerCase '\8170' = '\8058'
+toSimpleLowerCase '\8171' = '\8059'
+toSimpleLowerCase '\8172' = '\8165'
+toSimpleLowerCase '\8184' = '\8056'
+toSimpleLowerCase '\8185' = '\8057'
+toSimpleLowerCase '\8186' = '\8060'
+toSimpleLowerCase '\8187' = '\8061'
+toSimpleLowerCase '\8188' = '\8179'
+toSimpleLowerCase '\8486' = '\969'
+toSimpleLowerCase '\8490' = 'k'
+toSimpleLowerCase '\8491' = '\229'
+toSimpleLowerCase '\8498' = '\8526'
+toSimpleLowerCase '\8544' = '\8560'
+toSimpleLowerCase '\8545' = '\8561'
+toSimpleLowerCase '\8546' = '\8562'
+toSimpleLowerCase '\8547' = '\8563'
+toSimpleLowerCase '\8548' = '\8564'
+toSimpleLowerCase '\8549' = '\8565'
+toSimpleLowerCase '\8550' = '\8566'
+toSimpleLowerCase '\8551' = '\8567'
+toSimpleLowerCase '\8552' = '\8568'
+toSimpleLowerCase '\8553' = '\8569'
+toSimpleLowerCase '\8554' = '\8570'
+toSimpleLowerCase '\8555' = '\8571'
+toSimpleLowerCase '\8556' = '\8572'
+toSimpleLowerCase '\8557' = '\8573'
+toSimpleLowerCase '\8558' = '\8574'
+toSimpleLowerCase '\8559' = '\8575'
+toSimpleLowerCase '\8579' = '\8580'
+toSimpleLowerCase '\9398' = '\9424'
+toSimpleLowerCase '\9399' = '\9425'
+toSimpleLowerCase '\9400' = '\9426'
+toSimpleLowerCase '\9401' = '\9427'
+toSimpleLowerCase '\9402' = '\9428'
+toSimpleLowerCase '\9403' = '\9429'
+toSimpleLowerCase '\9404' = '\9430'
+toSimpleLowerCase '\9405' = '\9431'
+toSimpleLowerCase '\9406' = '\9432'
+toSimpleLowerCase '\9407' = '\9433'
+toSimpleLowerCase '\9408' = '\9434'
+toSimpleLowerCase '\9409' = '\9435'
+toSimpleLowerCase '\9410' = '\9436'
+toSimpleLowerCase '\9411' = '\9437'
+toSimpleLowerCase '\9412' = '\9438'
+toSimpleLowerCase '\9413' = '\9439'
+toSimpleLowerCase '\9414' = '\9440'
+toSimpleLowerCase '\9415' = '\9441'
+toSimpleLowerCase '\9416' = '\9442'
+toSimpleLowerCase '\9417' = '\9443'
+toSimpleLowerCase '\9418' = '\9444'
+toSimpleLowerCase '\9419' = '\9445'
+toSimpleLowerCase '\9420' = '\9446'
+toSimpleLowerCase '\9421' = '\9447'
+toSimpleLowerCase '\9422' = '\9448'
+toSimpleLowerCase '\9423' = '\9449'
+toSimpleLowerCase '\11264' = '\11312'
+toSimpleLowerCase '\11265' = '\11313'
+toSimpleLowerCase '\11266' = '\11314'
+toSimpleLowerCase '\11267' = '\11315'
+toSimpleLowerCase '\11268' = '\11316'
+toSimpleLowerCase '\11269' = '\11317'
+toSimpleLowerCase '\11270' = '\11318'
+toSimpleLowerCase '\11271' = '\11319'
+toSimpleLowerCase '\11272' = '\11320'
+toSimpleLowerCase '\11273' = '\11321'
+toSimpleLowerCase '\11274' = '\11322'
+toSimpleLowerCase '\11275' = '\11323'
+toSimpleLowerCase '\11276' = '\11324'
+toSimpleLowerCase '\11277' = '\11325'
+toSimpleLowerCase '\11278' = '\11326'
+toSimpleLowerCase '\11279' = '\11327'
+toSimpleLowerCase '\11280' = '\11328'
+toSimpleLowerCase '\11281' = '\11329'
+toSimpleLowerCase '\11282' = '\11330'
+toSimpleLowerCase '\11283' = '\11331'
+toSimpleLowerCase '\11284' = '\11332'
+toSimpleLowerCase '\11285' = '\11333'
+toSimpleLowerCase '\11286' = '\11334'
+toSimpleLowerCase '\11287' = '\11335'
+toSimpleLowerCase '\11288' = '\11336'
+toSimpleLowerCase '\11289' = '\11337'
+toSimpleLowerCase '\11290' = '\11338'
+toSimpleLowerCase '\11291' = '\11339'
+toSimpleLowerCase '\11292' = '\11340'
+toSimpleLowerCase '\11293' = '\11341'
+toSimpleLowerCase '\11294' = '\11342'
+toSimpleLowerCase '\11295' = '\11343'
+toSimpleLowerCase '\11296' = '\11344'
+toSimpleLowerCase '\11297' = '\11345'
+toSimpleLowerCase '\11298' = '\11346'
+toSimpleLowerCase '\11299' = '\11347'
+toSimpleLowerCase '\11300' = '\11348'
+toSimpleLowerCase '\11301' = '\11349'
+toSimpleLowerCase '\11302' = '\11350'
+toSimpleLowerCase '\11303' = '\11351'
+toSimpleLowerCase '\11304' = '\11352'
+toSimpleLowerCase '\11305' = '\11353'
+toSimpleLowerCase '\11306' = '\11354'
+toSimpleLowerCase '\11307' = '\11355'
+toSimpleLowerCase '\11308' = '\11356'
+toSimpleLowerCase '\11309' = '\11357'
+toSimpleLowerCase '\11310' = '\11358'
+toSimpleLowerCase '\11311' = '\11359'
+toSimpleLowerCase '\11360' = '\11361'
+toSimpleLowerCase '\11362' = '\619'
+toSimpleLowerCase '\11363' = '\7549'
+toSimpleLowerCase '\11364' = '\637'
+toSimpleLowerCase '\11367' = '\11368'
+toSimpleLowerCase '\11369' = '\11370'
+toSimpleLowerCase '\11371' = '\11372'
+toSimpleLowerCase '\11373' = '\593'
+toSimpleLowerCase '\11374' = '\625'
+toSimpleLowerCase '\11375' = '\592'
+toSimpleLowerCase '\11376' = '\594'
+toSimpleLowerCase '\11378' = '\11379'
+toSimpleLowerCase '\11381' = '\11382'
+toSimpleLowerCase '\11390' = '\575'
+toSimpleLowerCase '\11391' = '\576'
+toSimpleLowerCase '\11392' = '\11393'
+toSimpleLowerCase '\11394' = '\11395'
+toSimpleLowerCase '\11396' = '\11397'
+toSimpleLowerCase '\11398' = '\11399'
+toSimpleLowerCase '\11400' = '\11401'
+toSimpleLowerCase '\11402' = '\11403'
+toSimpleLowerCase '\11404' = '\11405'
+toSimpleLowerCase '\11406' = '\11407'
+toSimpleLowerCase '\11408' = '\11409'
+toSimpleLowerCase '\11410' = '\11411'
+toSimpleLowerCase '\11412' = '\11413'
+toSimpleLowerCase '\11414' = '\11415'
+toSimpleLowerCase '\11416' = '\11417'
+toSimpleLowerCase '\11418' = '\11419'
+toSimpleLowerCase '\11420' = '\11421'
+toSimpleLowerCase '\11422' = '\11423'
+toSimpleLowerCase '\11424' = '\11425'
+toSimpleLowerCase '\11426' = '\11427'
+toSimpleLowerCase '\11428' = '\11429'
+toSimpleLowerCase '\11430' = '\11431'
+toSimpleLowerCase '\11432' = '\11433'
+toSimpleLowerCase '\11434' = '\11435'
+toSimpleLowerCase '\11436' = '\11437'
+toSimpleLowerCase '\11438' = '\11439'
+toSimpleLowerCase '\11440' = '\11441'
+toSimpleLowerCase '\11442' = '\11443'
+toSimpleLowerCase '\11444' = '\11445'
+toSimpleLowerCase '\11446' = '\11447'
+toSimpleLowerCase '\11448' = '\11449'
+toSimpleLowerCase '\11450' = '\11451'
+toSimpleLowerCase '\11452' = '\11453'
+toSimpleLowerCase '\11454' = '\11455'
+toSimpleLowerCase '\11456' = '\11457'
+toSimpleLowerCase '\11458' = '\11459'
+toSimpleLowerCase '\11460' = '\11461'
+toSimpleLowerCase '\11462' = '\11463'
+toSimpleLowerCase '\11464' = '\11465'
+toSimpleLowerCase '\11466' = '\11467'
+toSimpleLowerCase '\11468' = '\11469'
+toSimpleLowerCase '\11470' = '\11471'
+toSimpleLowerCase '\11472' = '\11473'
+toSimpleLowerCase '\11474' = '\11475'
+toSimpleLowerCase '\11476' = '\11477'
+toSimpleLowerCase '\11478' = '\11479'
+toSimpleLowerCase '\11480' = '\11481'
+toSimpleLowerCase '\11482' = '\11483'
+toSimpleLowerCase '\11484' = '\11485'
+toSimpleLowerCase '\11486' = '\11487'
+toSimpleLowerCase '\11488' = '\11489'
+toSimpleLowerCase '\11490' = '\11491'
+toSimpleLowerCase '\11499' = '\11500'
+toSimpleLowerCase '\11501' = '\11502'
+toSimpleLowerCase '\11506' = '\11507'
+toSimpleLowerCase '\42560' = '\42561'
+toSimpleLowerCase '\42562' = '\42563'
+toSimpleLowerCase '\42564' = '\42565'
+toSimpleLowerCase '\42566' = '\42567'
+toSimpleLowerCase '\42568' = '\42569'
+toSimpleLowerCase '\42570' = '\42571'
+toSimpleLowerCase '\42572' = '\42573'
+toSimpleLowerCase '\42574' = '\42575'
+toSimpleLowerCase '\42576' = '\42577'
+toSimpleLowerCase '\42578' = '\42579'
+toSimpleLowerCase '\42580' = '\42581'
+toSimpleLowerCase '\42582' = '\42583'
+toSimpleLowerCase '\42584' = '\42585'
+toSimpleLowerCase '\42586' = '\42587'
+toSimpleLowerCase '\42588' = '\42589'
+toSimpleLowerCase '\42590' = '\42591'
+toSimpleLowerCase '\42592' = '\42593'
+toSimpleLowerCase '\42594' = '\42595'
+toSimpleLowerCase '\42596' = '\42597'
+toSimpleLowerCase '\42598' = '\42599'
+toSimpleLowerCase '\42600' = '\42601'
+toSimpleLowerCase '\42602' = '\42603'
+toSimpleLowerCase '\42604' = '\42605'
+toSimpleLowerCase '\42624' = '\42625'
+toSimpleLowerCase '\42626' = '\42627'
+toSimpleLowerCase '\42628' = '\42629'
+toSimpleLowerCase '\42630' = '\42631'
+toSimpleLowerCase '\42632' = '\42633'
+toSimpleLowerCase '\42634' = '\42635'
+toSimpleLowerCase '\42636' = '\42637'
+toSimpleLowerCase '\42638' = '\42639'
+toSimpleLowerCase '\42640' = '\42641'
+toSimpleLowerCase '\42642' = '\42643'
+toSimpleLowerCase '\42644' = '\42645'
+toSimpleLowerCase '\42646' = '\42647'
+toSimpleLowerCase '\42648' = '\42649'
+toSimpleLowerCase '\42650' = '\42651'
+toSimpleLowerCase '\42786' = '\42787'
+toSimpleLowerCase '\42788' = '\42789'
+toSimpleLowerCase '\42790' = '\42791'
+toSimpleLowerCase '\42792' = '\42793'
+toSimpleLowerCase '\42794' = '\42795'
+toSimpleLowerCase '\42796' = '\42797'
+toSimpleLowerCase '\42798' = '\42799'
+toSimpleLowerCase '\42802' = '\42803'
+toSimpleLowerCase '\42804' = '\42805'
+toSimpleLowerCase '\42806' = '\42807'
+toSimpleLowerCase '\42808' = '\42809'
+toSimpleLowerCase '\42810' = '\42811'
+toSimpleLowerCase '\42812' = '\42813'
+toSimpleLowerCase '\42814' = '\42815'
+toSimpleLowerCase '\42816' = '\42817'
+toSimpleLowerCase '\42818' = '\42819'
+toSimpleLowerCase '\42820' = '\42821'
+toSimpleLowerCase '\42822' = '\42823'
+toSimpleLowerCase '\42824' = '\42825'
+toSimpleLowerCase '\42826' = '\42827'
+toSimpleLowerCase '\42828' = '\42829'
+toSimpleLowerCase '\42830' = '\42831'
+toSimpleLowerCase '\42832' = '\42833'
+toSimpleLowerCase '\42834' = '\42835'
+toSimpleLowerCase '\42836' = '\42837'
+toSimpleLowerCase '\42838' = '\42839'
+toSimpleLowerCase '\42840' = '\42841'
+toSimpleLowerCase '\42842' = '\42843'
+toSimpleLowerCase '\42844' = '\42845'
+toSimpleLowerCase '\42846' = '\42847'
+toSimpleLowerCase '\42848' = '\42849'
+toSimpleLowerCase '\42850' = '\42851'
+toSimpleLowerCase '\42852' = '\42853'
+toSimpleLowerCase '\42854' = '\42855'
+toSimpleLowerCase '\42856' = '\42857'
+toSimpleLowerCase '\42858' = '\42859'
+toSimpleLowerCase '\42860' = '\42861'
+toSimpleLowerCase '\42862' = '\42863'
+toSimpleLowerCase '\42873' = '\42874'
+toSimpleLowerCase '\42875' = '\42876'
+toSimpleLowerCase '\42877' = '\7545'
+toSimpleLowerCase '\42878' = '\42879'
+toSimpleLowerCase '\42880' = '\42881'
+toSimpleLowerCase '\42882' = '\42883'
+toSimpleLowerCase '\42884' = '\42885'
+toSimpleLowerCase '\42886' = '\42887'
+toSimpleLowerCase '\42891' = '\42892'
+toSimpleLowerCase '\42893' = '\613'
+toSimpleLowerCase '\42896' = '\42897'
+toSimpleLowerCase '\42898' = '\42899'
+toSimpleLowerCase '\42902' = '\42903'
+toSimpleLowerCase '\42904' = '\42905'
+toSimpleLowerCase '\42906' = '\42907'
+toSimpleLowerCase '\42908' = '\42909'
+toSimpleLowerCase '\42910' = '\42911'
+toSimpleLowerCase '\42912' = '\42913'
+toSimpleLowerCase '\42914' = '\42915'
+toSimpleLowerCase '\42916' = '\42917'
+toSimpleLowerCase '\42918' = '\42919'
+toSimpleLowerCase '\42920' = '\42921'
+toSimpleLowerCase '\42922' = '\614'
+toSimpleLowerCase '\42923' = '\604'
+toSimpleLowerCase '\42924' = '\609'
+toSimpleLowerCase '\42925' = '\620'
+toSimpleLowerCase '\42926' = '\618'
+toSimpleLowerCase '\42928' = '\670'
+toSimpleLowerCase '\42929' = '\647'
+toSimpleLowerCase '\42930' = '\669'
+toSimpleLowerCase '\42931' = '\43859'
+toSimpleLowerCase '\42932' = '\42933'
+toSimpleLowerCase '\42934' = '\42935'
+toSimpleLowerCase '\42936' = '\42937'
+toSimpleLowerCase '\42938' = '\42939'
+toSimpleLowerCase '\42940' = '\42941'
+toSimpleLowerCase '\42942' = '\42943'
+toSimpleLowerCase '\42944' = '\42945'
+toSimpleLowerCase '\42946' = '\42947'
+toSimpleLowerCase '\42948' = '\42900'
+toSimpleLowerCase '\42949' = '\642'
+toSimpleLowerCase '\42950' = '\7566'
+toSimpleLowerCase '\42951' = '\42952'
+toSimpleLowerCase '\42953' = '\42954'
+toSimpleLowerCase '\42960' = '\42961'
+toSimpleLowerCase '\42966' = '\42967'
+toSimpleLowerCase '\42968' = '\42969'
+toSimpleLowerCase '\42997' = '\42998'
+toSimpleLowerCase '\65313' = '\65345'
+toSimpleLowerCase '\65314' = '\65346'
+toSimpleLowerCase '\65315' = '\65347'
+toSimpleLowerCase '\65316' = '\65348'
+toSimpleLowerCase '\65317' = '\65349'
+toSimpleLowerCase '\65318' = '\65350'
+toSimpleLowerCase '\65319' = '\65351'
+toSimpleLowerCase '\65320' = '\65352'
+toSimpleLowerCase '\65321' = '\65353'
+toSimpleLowerCase '\65322' = '\65354'
+toSimpleLowerCase '\65323' = '\65355'
+toSimpleLowerCase '\65324' = '\65356'
+toSimpleLowerCase '\65325' = '\65357'
+toSimpleLowerCase '\65326' = '\65358'
+toSimpleLowerCase '\65327' = '\65359'
+toSimpleLowerCase '\65328' = '\65360'
+toSimpleLowerCase '\65329' = '\65361'
+toSimpleLowerCase '\65330' = '\65362'
+toSimpleLowerCase '\65331' = '\65363'
+toSimpleLowerCase '\65332' = '\65364'
+toSimpleLowerCase '\65333' = '\65365'
+toSimpleLowerCase '\65334' = '\65366'
+toSimpleLowerCase '\65335' = '\65367'
+toSimpleLowerCase '\65336' = '\65368'
+toSimpleLowerCase '\65337' = '\65369'
+toSimpleLowerCase '\65338' = '\65370'
+toSimpleLowerCase '\66560' = '\66600'
+toSimpleLowerCase '\66561' = '\66601'
+toSimpleLowerCase '\66562' = '\66602'
+toSimpleLowerCase '\66563' = '\66603'
+toSimpleLowerCase '\66564' = '\66604'
+toSimpleLowerCase '\66565' = '\66605'
+toSimpleLowerCase '\66566' = '\66606'
+toSimpleLowerCase '\66567' = '\66607'
+toSimpleLowerCase '\66568' = '\66608'
+toSimpleLowerCase '\66569' = '\66609'
+toSimpleLowerCase '\66570' = '\66610'
+toSimpleLowerCase '\66571' = '\66611'
+toSimpleLowerCase '\66572' = '\66612'
+toSimpleLowerCase '\66573' = '\66613'
+toSimpleLowerCase '\66574' = '\66614'
+toSimpleLowerCase '\66575' = '\66615'
+toSimpleLowerCase '\66576' = '\66616'
+toSimpleLowerCase '\66577' = '\66617'
+toSimpleLowerCase '\66578' = '\66618'
+toSimpleLowerCase '\66579' = '\66619'
+toSimpleLowerCase '\66580' = '\66620'
+toSimpleLowerCase '\66581' = '\66621'
+toSimpleLowerCase '\66582' = '\66622'
+toSimpleLowerCase '\66583' = '\66623'
+toSimpleLowerCase '\66584' = '\66624'
+toSimpleLowerCase '\66585' = '\66625'
+toSimpleLowerCase '\66586' = '\66626'
+toSimpleLowerCase '\66587' = '\66627'
+toSimpleLowerCase '\66588' = '\66628'
+toSimpleLowerCase '\66589' = '\66629'
+toSimpleLowerCase '\66590' = '\66630'
+toSimpleLowerCase '\66591' = '\66631'
+toSimpleLowerCase '\66592' = '\66632'
+toSimpleLowerCase '\66593' = '\66633'
+toSimpleLowerCase '\66594' = '\66634'
+toSimpleLowerCase '\66595' = '\66635'
+toSimpleLowerCase '\66596' = '\66636'
+toSimpleLowerCase '\66597' = '\66637'
+toSimpleLowerCase '\66598' = '\66638'
+toSimpleLowerCase '\66599' = '\66639'
+toSimpleLowerCase '\66736' = '\66776'
+toSimpleLowerCase '\66737' = '\66777'
+toSimpleLowerCase '\66738' = '\66778'
+toSimpleLowerCase '\66739' = '\66779'
+toSimpleLowerCase '\66740' = '\66780'
+toSimpleLowerCase '\66741' = '\66781'
+toSimpleLowerCase '\66742' = '\66782'
+toSimpleLowerCase '\66743' = '\66783'
+toSimpleLowerCase '\66744' = '\66784'
+toSimpleLowerCase '\66745' = '\66785'
+toSimpleLowerCase '\66746' = '\66786'
+toSimpleLowerCase '\66747' = '\66787'
+toSimpleLowerCase '\66748' = '\66788'
+toSimpleLowerCase '\66749' = '\66789'
+toSimpleLowerCase '\66750' = '\66790'
+toSimpleLowerCase '\66751' = '\66791'
+toSimpleLowerCase '\66752' = '\66792'
+toSimpleLowerCase '\66753' = '\66793'
+toSimpleLowerCase '\66754' = '\66794'
+toSimpleLowerCase '\66755' = '\66795'
+toSimpleLowerCase '\66756' = '\66796'
+toSimpleLowerCase '\66757' = '\66797'
+toSimpleLowerCase '\66758' = '\66798'
+toSimpleLowerCase '\66759' = '\66799'
+toSimpleLowerCase '\66760' = '\66800'
+toSimpleLowerCase '\66761' = '\66801'
+toSimpleLowerCase '\66762' = '\66802'
+toSimpleLowerCase '\66763' = '\66803'
+toSimpleLowerCase '\66764' = '\66804'
+toSimpleLowerCase '\66765' = '\66805'
+toSimpleLowerCase '\66766' = '\66806'
+toSimpleLowerCase '\66767' = '\66807'
+toSimpleLowerCase '\66768' = '\66808'
+toSimpleLowerCase '\66769' = '\66809'
+toSimpleLowerCase '\66770' = '\66810'
+toSimpleLowerCase '\66771' = '\66811'
+toSimpleLowerCase '\66928' = '\66967'
+toSimpleLowerCase '\66929' = '\66968'
+toSimpleLowerCase '\66930' = '\66969'
+toSimpleLowerCase '\66931' = '\66970'
+toSimpleLowerCase '\66932' = '\66971'
+toSimpleLowerCase '\66933' = '\66972'
+toSimpleLowerCase '\66934' = '\66973'
+toSimpleLowerCase '\66935' = '\66974'
+toSimpleLowerCase '\66936' = '\66975'
+toSimpleLowerCase '\66937' = '\66976'
+toSimpleLowerCase '\66938' = '\66977'
+toSimpleLowerCase '\66940' = '\66979'
+toSimpleLowerCase '\66941' = '\66980'
+toSimpleLowerCase '\66942' = '\66981'
+toSimpleLowerCase '\66943' = '\66982'
+toSimpleLowerCase '\66944' = '\66983'
+toSimpleLowerCase '\66945' = '\66984'
+toSimpleLowerCase '\66946' = '\66985'
+toSimpleLowerCase '\66947' = '\66986'
+toSimpleLowerCase '\66948' = '\66987'
+toSimpleLowerCase '\66949' = '\66988'
+toSimpleLowerCase '\66950' = '\66989'
+toSimpleLowerCase '\66951' = '\66990'
+toSimpleLowerCase '\66952' = '\66991'
+toSimpleLowerCase '\66953' = '\66992'
+toSimpleLowerCase '\66954' = '\66993'
+toSimpleLowerCase '\66956' = '\66995'
+toSimpleLowerCase '\66957' = '\66996'
+toSimpleLowerCase '\66958' = '\66997'
+toSimpleLowerCase '\66959' = '\66998'
+toSimpleLowerCase '\66960' = '\66999'
+toSimpleLowerCase '\66961' = '\67000'
+toSimpleLowerCase '\66962' = '\67001'
+toSimpleLowerCase '\66964' = '\67003'
+toSimpleLowerCase '\66965' = '\67004'
+toSimpleLowerCase '\68736' = '\68800'
+toSimpleLowerCase '\68737' = '\68801'
+toSimpleLowerCase '\68738' = '\68802'
+toSimpleLowerCase '\68739' = '\68803'
+toSimpleLowerCase '\68740' = '\68804'
+toSimpleLowerCase '\68741' = '\68805'
+toSimpleLowerCase '\68742' = '\68806'
+toSimpleLowerCase '\68743' = '\68807'
+toSimpleLowerCase '\68744' = '\68808'
+toSimpleLowerCase '\68745' = '\68809'
+toSimpleLowerCase '\68746' = '\68810'
+toSimpleLowerCase '\68747' = '\68811'
+toSimpleLowerCase '\68748' = '\68812'
+toSimpleLowerCase '\68749' = '\68813'
+toSimpleLowerCase '\68750' = '\68814'
+toSimpleLowerCase '\68751' = '\68815'
+toSimpleLowerCase '\68752' = '\68816'
+toSimpleLowerCase '\68753' = '\68817'
+toSimpleLowerCase '\68754' = '\68818'
+toSimpleLowerCase '\68755' = '\68819'
+toSimpleLowerCase '\68756' = '\68820'
+toSimpleLowerCase '\68757' = '\68821'
+toSimpleLowerCase '\68758' = '\68822'
+toSimpleLowerCase '\68759' = '\68823'
+toSimpleLowerCase '\68760' = '\68824'
+toSimpleLowerCase '\68761' = '\68825'
+toSimpleLowerCase '\68762' = '\68826'
+toSimpleLowerCase '\68763' = '\68827'
+toSimpleLowerCase '\68764' = '\68828'
+toSimpleLowerCase '\68765' = '\68829'
+toSimpleLowerCase '\68766' = '\68830'
+toSimpleLowerCase '\68767' = '\68831'
+toSimpleLowerCase '\68768' = '\68832'
+toSimpleLowerCase '\68769' = '\68833'
+toSimpleLowerCase '\68770' = '\68834'
+toSimpleLowerCase '\68771' = '\68835'
+toSimpleLowerCase '\68772' = '\68836'
+toSimpleLowerCase '\68773' = '\68837'
+toSimpleLowerCase '\68774' = '\68838'
+toSimpleLowerCase '\68775' = '\68839'
+toSimpleLowerCase '\68776' = '\68840'
+toSimpleLowerCase '\68777' = '\68841'
+toSimpleLowerCase '\68778' = '\68842'
+toSimpleLowerCase '\68779' = '\68843'
+toSimpleLowerCase '\68780' = '\68844'
+toSimpleLowerCase '\68781' = '\68845'
+toSimpleLowerCase '\68782' = '\68846'
+toSimpleLowerCase '\68783' = '\68847'
+toSimpleLowerCase '\68784' = '\68848'
+toSimpleLowerCase '\68785' = '\68849'
+toSimpleLowerCase '\68786' = '\68850'
+toSimpleLowerCase '\71840' = '\71872'
+toSimpleLowerCase '\71841' = '\71873'
+toSimpleLowerCase '\71842' = '\71874'
+toSimpleLowerCase '\71843' = '\71875'
+toSimpleLowerCase '\71844' = '\71876'
+toSimpleLowerCase '\71845' = '\71877'
+toSimpleLowerCase '\71846' = '\71878'
+toSimpleLowerCase '\71847' = '\71879'
+toSimpleLowerCase '\71848' = '\71880'
+toSimpleLowerCase '\71849' = '\71881'
+toSimpleLowerCase '\71850' = '\71882'
+toSimpleLowerCase '\71851' = '\71883'
+toSimpleLowerCase '\71852' = '\71884'
+toSimpleLowerCase '\71853' = '\71885'
+toSimpleLowerCase '\71854' = '\71886'
+toSimpleLowerCase '\71855' = '\71887'
+toSimpleLowerCase '\71856' = '\71888'
+toSimpleLowerCase '\71857' = '\71889'
+toSimpleLowerCase '\71858' = '\71890'
+toSimpleLowerCase '\71859' = '\71891'
+toSimpleLowerCase '\71860' = '\71892'
+toSimpleLowerCase '\71861' = '\71893'
+toSimpleLowerCase '\71862' = '\71894'
+toSimpleLowerCase '\71863' = '\71895'
+toSimpleLowerCase '\71864' = '\71896'
+toSimpleLowerCase '\71865' = '\71897'
+toSimpleLowerCase '\71866' = '\71898'
+toSimpleLowerCase '\71867' = '\71899'
+toSimpleLowerCase '\71868' = '\71900'
+toSimpleLowerCase '\71869' = '\71901'
+toSimpleLowerCase '\71870' = '\71902'
+toSimpleLowerCase '\71871' = '\71903'
+toSimpleLowerCase '\93760' = '\93792'
+toSimpleLowerCase '\93761' = '\93793'
+toSimpleLowerCase '\93762' = '\93794'
+toSimpleLowerCase '\93763' = '\93795'
+toSimpleLowerCase '\93764' = '\93796'
+toSimpleLowerCase '\93765' = '\93797'
+toSimpleLowerCase '\93766' = '\93798'
+toSimpleLowerCase '\93767' = '\93799'
+toSimpleLowerCase '\93768' = '\93800'
+toSimpleLowerCase '\93769' = '\93801'
+toSimpleLowerCase '\93770' = '\93802'
+toSimpleLowerCase '\93771' = '\93803'
+toSimpleLowerCase '\93772' = '\93804'
+toSimpleLowerCase '\93773' = '\93805'
+toSimpleLowerCase '\93774' = '\93806'
+toSimpleLowerCase '\93775' = '\93807'
+toSimpleLowerCase '\93776' = '\93808'
+toSimpleLowerCase '\93777' = '\93809'
+toSimpleLowerCase '\93778' = '\93810'
+toSimpleLowerCase '\93779' = '\93811'
+toSimpleLowerCase '\93780' = '\93812'
+toSimpleLowerCase '\93781' = '\93813'
+toSimpleLowerCase '\93782' = '\93814'
+toSimpleLowerCase '\93783' = '\93815'
+toSimpleLowerCase '\93784' = '\93816'
+toSimpleLowerCase '\93785' = '\93817'
+toSimpleLowerCase '\93786' = '\93818'
+toSimpleLowerCase '\93787' = '\93819'
+toSimpleLowerCase '\93788' = '\93820'
+toSimpleLowerCase '\93789' = '\93821'
+toSimpleLowerCase '\93790' = '\93822'
+toSimpleLowerCase '\93791' = '\93823'
+toSimpleLowerCase '\125184' = '\125218'
+toSimpleLowerCase '\125185' = '\125219'
+toSimpleLowerCase '\125186' = '\125220'
+toSimpleLowerCase '\125187' = '\125221'
+toSimpleLowerCase '\125188' = '\125222'
+toSimpleLowerCase '\125189' = '\125223'
+toSimpleLowerCase '\125190' = '\125224'
+toSimpleLowerCase '\125191' = '\125225'
+toSimpleLowerCase '\125192' = '\125226'
+toSimpleLowerCase '\125193' = '\125227'
+toSimpleLowerCase '\125194' = '\125228'
+toSimpleLowerCase '\125195' = '\125229'
+toSimpleLowerCase '\125196' = '\125230'
+toSimpleLowerCase '\125197' = '\125231'
+toSimpleLowerCase '\125198' = '\125232'
+toSimpleLowerCase '\125199' = '\125233'
+toSimpleLowerCase '\125200' = '\125234'
+toSimpleLowerCase '\125201' = '\125235'
+toSimpleLowerCase '\125202' = '\125236'
+toSimpleLowerCase '\125203' = '\125237'
+toSimpleLowerCase '\125204' = '\125238'
+toSimpleLowerCase '\125205' = '\125239'
+toSimpleLowerCase '\125206' = '\125240'
+toSimpleLowerCase '\125207' = '\125241'
+toSimpleLowerCase '\125208' = '\125242'
+toSimpleLowerCase '\125209' = '\125243'
+toSimpleLowerCase '\125210' = '\125244'
+toSimpleLowerCase '\125211' = '\125245'
+toSimpleLowerCase '\125212' = '\125246'
+toSimpleLowerCase '\125213' = '\125247'
+toSimpleLowerCase '\125214' = '\125248'
+toSimpleLowerCase '\125215' = '\125249'
+toSimpleLowerCase '\125216' = '\125250'
+toSimpleLowerCase '\125217' = '\125251'
+toSimpleLowerCase c = c
diff --git a/lib/Unicode/Internal/Char/UnicodeData/SimpleTitleCaseMapping.hs b/lib/Unicode/Internal/Char/UnicodeData/SimpleTitleCaseMapping.hs
new file mode 100644
--- /dev/null
+++ b/lib/Unicode/Internal/Char/UnicodeData/SimpleTitleCaseMapping.hs
@@ -0,0 +1,1469 @@
+-- autogenerated from https://www.unicode.org/Public/14.0.0/ucd/UnicodeData.txt
+-- |
+-- Module      : Unicode.Internal.Char.UnicodeData.SimpleTitleCaseMapping
+-- Copyright   : (c) 2020 Composewell Technologies and Contributors
+-- License     : Apache-2.0
+-- Maintainer  : streamly@composewell.com
+-- Stability   : experimental
+
+module Unicode.Internal.Char.UnicodeData.SimpleTitleCaseMapping
+(toSimpleTitleCase)
+where
+
+{-# NOINLINE toSimpleTitleCase #-}
+toSimpleTitleCase :: Char -> Char
+toSimpleTitleCase 'a' = 'A'
+toSimpleTitleCase 'b' = 'B'
+toSimpleTitleCase 'c' = 'C'
+toSimpleTitleCase 'd' = 'D'
+toSimpleTitleCase 'e' = 'E'
+toSimpleTitleCase 'f' = 'F'
+toSimpleTitleCase 'g' = 'G'
+toSimpleTitleCase 'h' = 'H'
+toSimpleTitleCase 'i' = 'I'
+toSimpleTitleCase 'j' = 'J'
+toSimpleTitleCase 'k' = 'K'
+toSimpleTitleCase 'l' = 'L'
+toSimpleTitleCase 'm' = 'M'
+toSimpleTitleCase 'n' = 'N'
+toSimpleTitleCase 'o' = 'O'
+toSimpleTitleCase 'p' = 'P'
+toSimpleTitleCase 'q' = 'Q'
+toSimpleTitleCase 'r' = 'R'
+toSimpleTitleCase 's' = 'S'
+toSimpleTitleCase 't' = 'T'
+toSimpleTitleCase 'u' = 'U'
+toSimpleTitleCase 'v' = 'V'
+toSimpleTitleCase 'w' = 'W'
+toSimpleTitleCase 'x' = 'X'
+toSimpleTitleCase 'y' = 'Y'
+toSimpleTitleCase 'z' = 'Z'
+toSimpleTitleCase '\181' = '\924'
+toSimpleTitleCase '\224' = '\192'
+toSimpleTitleCase '\225' = '\193'
+toSimpleTitleCase '\226' = '\194'
+toSimpleTitleCase '\227' = '\195'
+toSimpleTitleCase '\228' = '\196'
+toSimpleTitleCase '\229' = '\197'
+toSimpleTitleCase '\230' = '\198'
+toSimpleTitleCase '\231' = '\199'
+toSimpleTitleCase '\232' = '\200'
+toSimpleTitleCase '\233' = '\201'
+toSimpleTitleCase '\234' = '\202'
+toSimpleTitleCase '\235' = '\203'
+toSimpleTitleCase '\236' = '\204'
+toSimpleTitleCase '\237' = '\205'
+toSimpleTitleCase '\238' = '\206'
+toSimpleTitleCase '\239' = '\207'
+toSimpleTitleCase '\240' = '\208'
+toSimpleTitleCase '\241' = '\209'
+toSimpleTitleCase '\242' = '\210'
+toSimpleTitleCase '\243' = '\211'
+toSimpleTitleCase '\244' = '\212'
+toSimpleTitleCase '\245' = '\213'
+toSimpleTitleCase '\246' = '\214'
+toSimpleTitleCase '\248' = '\216'
+toSimpleTitleCase '\249' = '\217'
+toSimpleTitleCase '\250' = '\218'
+toSimpleTitleCase '\251' = '\219'
+toSimpleTitleCase '\252' = '\220'
+toSimpleTitleCase '\253' = '\221'
+toSimpleTitleCase '\254' = '\222'
+toSimpleTitleCase '\255' = '\376'
+toSimpleTitleCase '\257' = '\256'
+toSimpleTitleCase '\259' = '\258'
+toSimpleTitleCase '\261' = '\260'
+toSimpleTitleCase '\263' = '\262'
+toSimpleTitleCase '\265' = '\264'
+toSimpleTitleCase '\267' = '\266'
+toSimpleTitleCase '\269' = '\268'
+toSimpleTitleCase '\271' = '\270'
+toSimpleTitleCase '\273' = '\272'
+toSimpleTitleCase '\275' = '\274'
+toSimpleTitleCase '\277' = '\276'
+toSimpleTitleCase '\279' = '\278'
+toSimpleTitleCase '\281' = '\280'
+toSimpleTitleCase '\283' = '\282'
+toSimpleTitleCase '\285' = '\284'
+toSimpleTitleCase '\287' = '\286'
+toSimpleTitleCase '\289' = '\288'
+toSimpleTitleCase '\291' = '\290'
+toSimpleTitleCase '\293' = '\292'
+toSimpleTitleCase '\295' = '\294'
+toSimpleTitleCase '\297' = '\296'
+toSimpleTitleCase '\299' = '\298'
+toSimpleTitleCase '\301' = '\300'
+toSimpleTitleCase '\303' = '\302'
+toSimpleTitleCase '\305' = 'I'
+toSimpleTitleCase '\307' = '\306'
+toSimpleTitleCase '\309' = '\308'
+toSimpleTitleCase '\311' = '\310'
+toSimpleTitleCase '\314' = '\313'
+toSimpleTitleCase '\316' = '\315'
+toSimpleTitleCase '\318' = '\317'
+toSimpleTitleCase '\320' = '\319'
+toSimpleTitleCase '\322' = '\321'
+toSimpleTitleCase '\324' = '\323'
+toSimpleTitleCase '\326' = '\325'
+toSimpleTitleCase '\328' = '\327'
+toSimpleTitleCase '\331' = '\330'
+toSimpleTitleCase '\333' = '\332'
+toSimpleTitleCase '\335' = '\334'
+toSimpleTitleCase '\337' = '\336'
+toSimpleTitleCase '\339' = '\338'
+toSimpleTitleCase '\341' = '\340'
+toSimpleTitleCase '\343' = '\342'
+toSimpleTitleCase '\345' = '\344'
+toSimpleTitleCase '\347' = '\346'
+toSimpleTitleCase '\349' = '\348'
+toSimpleTitleCase '\351' = '\350'
+toSimpleTitleCase '\353' = '\352'
+toSimpleTitleCase '\355' = '\354'
+toSimpleTitleCase '\357' = '\356'
+toSimpleTitleCase '\359' = '\358'
+toSimpleTitleCase '\361' = '\360'
+toSimpleTitleCase '\363' = '\362'
+toSimpleTitleCase '\365' = '\364'
+toSimpleTitleCase '\367' = '\366'
+toSimpleTitleCase '\369' = '\368'
+toSimpleTitleCase '\371' = '\370'
+toSimpleTitleCase '\373' = '\372'
+toSimpleTitleCase '\375' = '\374'
+toSimpleTitleCase '\378' = '\377'
+toSimpleTitleCase '\380' = '\379'
+toSimpleTitleCase '\382' = '\381'
+toSimpleTitleCase '\383' = 'S'
+toSimpleTitleCase '\384' = '\579'
+toSimpleTitleCase '\387' = '\386'
+toSimpleTitleCase '\389' = '\388'
+toSimpleTitleCase '\392' = '\391'
+toSimpleTitleCase '\396' = '\395'
+toSimpleTitleCase '\402' = '\401'
+toSimpleTitleCase '\405' = '\502'
+toSimpleTitleCase '\409' = '\408'
+toSimpleTitleCase '\410' = '\573'
+toSimpleTitleCase '\414' = '\544'
+toSimpleTitleCase '\417' = '\416'
+toSimpleTitleCase '\419' = '\418'
+toSimpleTitleCase '\421' = '\420'
+toSimpleTitleCase '\424' = '\423'
+toSimpleTitleCase '\429' = '\428'
+toSimpleTitleCase '\432' = '\431'
+toSimpleTitleCase '\436' = '\435'
+toSimpleTitleCase '\438' = '\437'
+toSimpleTitleCase '\441' = '\440'
+toSimpleTitleCase '\445' = '\444'
+toSimpleTitleCase '\447' = '\503'
+toSimpleTitleCase '\452' = '\453'
+toSimpleTitleCase '\453' = '\453'
+toSimpleTitleCase '\454' = '\453'
+toSimpleTitleCase '\455' = '\456'
+toSimpleTitleCase '\456' = '\456'
+toSimpleTitleCase '\457' = '\456'
+toSimpleTitleCase '\458' = '\459'
+toSimpleTitleCase '\459' = '\459'
+toSimpleTitleCase '\460' = '\459'
+toSimpleTitleCase '\462' = '\461'
+toSimpleTitleCase '\464' = '\463'
+toSimpleTitleCase '\466' = '\465'
+toSimpleTitleCase '\468' = '\467'
+toSimpleTitleCase '\470' = '\469'
+toSimpleTitleCase '\472' = '\471'
+toSimpleTitleCase '\474' = '\473'
+toSimpleTitleCase '\476' = '\475'
+toSimpleTitleCase '\477' = '\398'
+toSimpleTitleCase '\479' = '\478'
+toSimpleTitleCase '\481' = '\480'
+toSimpleTitleCase '\483' = '\482'
+toSimpleTitleCase '\485' = '\484'
+toSimpleTitleCase '\487' = '\486'
+toSimpleTitleCase '\489' = '\488'
+toSimpleTitleCase '\491' = '\490'
+toSimpleTitleCase '\493' = '\492'
+toSimpleTitleCase '\495' = '\494'
+toSimpleTitleCase '\497' = '\498'
+toSimpleTitleCase '\498' = '\498'
+toSimpleTitleCase '\499' = '\498'
+toSimpleTitleCase '\501' = '\500'
+toSimpleTitleCase '\505' = '\504'
+toSimpleTitleCase '\507' = '\506'
+toSimpleTitleCase '\509' = '\508'
+toSimpleTitleCase '\511' = '\510'
+toSimpleTitleCase '\513' = '\512'
+toSimpleTitleCase '\515' = '\514'
+toSimpleTitleCase '\517' = '\516'
+toSimpleTitleCase '\519' = '\518'
+toSimpleTitleCase '\521' = '\520'
+toSimpleTitleCase '\523' = '\522'
+toSimpleTitleCase '\525' = '\524'
+toSimpleTitleCase '\527' = '\526'
+toSimpleTitleCase '\529' = '\528'
+toSimpleTitleCase '\531' = '\530'
+toSimpleTitleCase '\533' = '\532'
+toSimpleTitleCase '\535' = '\534'
+toSimpleTitleCase '\537' = '\536'
+toSimpleTitleCase '\539' = '\538'
+toSimpleTitleCase '\541' = '\540'
+toSimpleTitleCase '\543' = '\542'
+toSimpleTitleCase '\547' = '\546'
+toSimpleTitleCase '\549' = '\548'
+toSimpleTitleCase '\551' = '\550'
+toSimpleTitleCase '\553' = '\552'
+toSimpleTitleCase '\555' = '\554'
+toSimpleTitleCase '\557' = '\556'
+toSimpleTitleCase '\559' = '\558'
+toSimpleTitleCase '\561' = '\560'
+toSimpleTitleCase '\563' = '\562'
+toSimpleTitleCase '\572' = '\571'
+toSimpleTitleCase '\575' = '\11390'
+toSimpleTitleCase '\576' = '\11391'
+toSimpleTitleCase '\578' = '\577'
+toSimpleTitleCase '\583' = '\582'
+toSimpleTitleCase '\585' = '\584'
+toSimpleTitleCase '\587' = '\586'
+toSimpleTitleCase '\589' = '\588'
+toSimpleTitleCase '\591' = '\590'
+toSimpleTitleCase '\592' = '\11375'
+toSimpleTitleCase '\593' = '\11373'
+toSimpleTitleCase '\594' = '\11376'
+toSimpleTitleCase '\595' = '\385'
+toSimpleTitleCase '\596' = '\390'
+toSimpleTitleCase '\598' = '\393'
+toSimpleTitleCase '\599' = '\394'
+toSimpleTitleCase '\601' = '\399'
+toSimpleTitleCase '\603' = '\400'
+toSimpleTitleCase '\604' = '\42923'
+toSimpleTitleCase '\608' = '\403'
+toSimpleTitleCase '\609' = '\42924'
+toSimpleTitleCase '\611' = '\404'
+toSimpleTitleCase '\613' = '\42893'
+toSimpleTitleCase '\614' = '\42922'
+toSimpleTitleCase '\616' = '\407'
+toSimpleTitleCase '\617' = '\406'
+toSimpleTitleCase '\618' = '\42926'
+toSimpleTitleCase '\619' = '\11362'
+toSimpleTitleCase '\620' = '\42925'
+toSimpleTitleCase '\623' = '\412'
+toSimpleTitleCase '\625' = '\11374'
+toSimpleTitleCase '\626' = '\413'
+toSimpleTitleCase '\629' = '\415'
+toSimpleTitleCase '\637' = '\11364'
+toSimpleTitleCase '\640' = '\422'
+toSimpleTitleCase '\642' = '\42949'
+toSimpleTitleCase '\643' = '\425'
+toSimpleTitleCase '\647' = '\42929'
+toSimpleTitleCase '\648' = '\430'
+toSimpleTitleCase '\649' = '\580'
+toSimpleTitleCase '\650' = '\433'
+toSimpleTitleCase '\651' = '\434'
+toSimpleTitleCase '\652' = '\581'
+toSimpleTitleCase '\658' = '\439'
+toSimpleTitleCase '\669' = '\42930'
+toSimpleTitleCase '\670' = '\42928'
+toSimpleTitleCase '\837' = '\921'
+toSimpleTitleCase '\881' = '\880'
+toSimpleTitleCase '\883' = '\882'
+toSimpleTitleCase '\887' = '\886'
+toSimpleTitleCase '\891' = '\1021'
+toSimpleTitleCase '\892' = '\1022'
+toSimpleTitleCase '\893' = '\1023'
+toSimpleTitleCase '\940' = '\902'
+toSimpleTitleCase '\941' = '\904'
+toSimpleTitleCase '\942' = '\905'
+toSimpleTitleCase '\943' = '\906'
+toSimpleTitleCase '\945' = '\913'
+toSimpleTitleCase '\946' = '\914'
+toSimpleTitleCase '\947' = '\915'
+toSimpleTitleCase '\948' = '\916'
+toSimpleTitleCase '\949' = '\917'
+toSimpleTitleCase '\950' = '\918'
+toSimpleTitleCase '\951' = '\919'
+toSimpleTitleCase '\952' = '\920'
+toSimpleTitleCase '\953' = '\921'
+toSimpleTitleCase '\954' = '\922'
+toSimpleTitleCase '\955' = '\923'
+toSimpleTitleCase '\956' = '\924'
+toSimpleTitleCase '\957' = '\925'
+toSimpleTitleCase '\958' = '\926'
+toSimpleTitleCase '\959' = '\927'
+toSimpleTitleCase '\960' = '\928'
+toSimpleTitleCase '\961' = '\929'
+toSimpleTitleCase '\962' = '\931'
+toSimpleTitleCase '\963' = '\931'
+toSimpleTitleCase '\964' = '\932'
+toSimpleTitleCase '\965' = '\933'
+toSimpleTitleCase '\966' = '\934'
+toSimpleTitleCase '\967' = '\935'
+toSimpleTitleCase '\968' = '\936'
+toSimpleTitleCase '\969' = '\937'
+toSimpleTitleCase '\970' = '\938'
+toSimpleTitleCase '\971' = '\939'
+toSimpleTitleCase '\972' = '\908'
+toSimpleTitleCase '\973' = '\910'
+toSimpleTitleCase '\974' = '\911'
+toSimpleTitleCase '\976' = '\914'
+toSimpleTitleCase '\977' = '\920'
+toSimpleTitleCase '\981' = '\934'
+toSimpleTitleCase '\982' = '\928'
+toSimpleTitleCase '\983' = '\975'
+toSimpleTitleCase '\985' = '\984'
+toSimpleTitleCase '\987' = '\986'
+toSimpleTitleCase '\989' = '\988'
+toSimpleTitleCase '\991' = '\990'
+toSimpleTitleCase '\993' = '\992'
+toSimpleTitleCase '\995' = '\994'
+toSimpleTitleCase '\997' = '\996'
+toSimpleTitleCase '\999' = '\998'
+toSimpleTitleCase '\1001' = '\1000'
+toSimpleTitleCase '\1003' = '\1002'
+toSimpleTitleCase '\1005' = '\1004'
+toSimpleTitleCase '\1007' = '\1006'
+toSimpleTitleCase '\1008' = '\922'
+toSimpleTitleCase '\1009' = '\929'
+toSimpleTitleCase '\1010' = '\1017'
+toSimpleTitleCase '\1011' = '\895'
+toSimpleTitleCase '\1013' = '\917'
+toSimpleTitleCase '\1016' = '\1015'
+toSimpleTitleCase '\1019' = '\1018'
+toSimpleTitleCase '\1072' = '\1040'
+toSimpleTitleCase '\1073' = '\1041'
+toSimpleTitleCase '\1074' = '\1042'
+toSimpleTitleCase '\1075' = '\1043'
+toSimpleTitleCase '\1076' = '\1044'
+toSimpleTitleCase '\1077' = '\1045'
+toSimpleTitleCase '\1078' = '\1046'
+toSimpleTitleCase '\1079' = '\1047'
+toSimpleTitleCase '\1080' = '\1048'
+toSimpleTitleCase '\1081' = '\1049'
+toSimpleTitleCase '\1082' = '\1050'
+toSimpleTitleCase '\1083' = '\1051'
+toSimpleTitleCase '\1084' = '\1052'
+toSimpleTitleCase '\1085' = '\1053'
+toSimpleTitleCase '\1086' = '\1054'
+toSimpleTitleCase '\1087' = '\1055'
+toSimpleTitleCase '\1088' = '\1056'
+toSimpleTitleCase '\1089' = '\1057'
+toSimpleTitleCase '\1090' = '\1058'
+toSimpleTitleCase '\1091' = '\1059'
+toSimpleTitleCase '\1092' = '\1060'
+toSimpleTitleCase '\1093' = '\1061'
+toSimpleTitleCase '\1094' = '\1062'
+toSimpleTitleCase '\1095' = '\1063'
+toSimpleTitleCase '\1096' = '\1064'
+toSimpleTitleCase '\1097' = '\1065'
+toSimpleTitleCase '\1098' = '\1066'
+toSimpleTitleCase '\1099' = '\1067'
+toSimpleTitleCase '\1100' = '\1068'
+toSimpleTitleCase '\1101' = '\1069'
+toSimpleTitleCase '\1102' = '\1070'
+toSimpleTitleCase '\1103' = '\1071'
+toSimpleTitleCase '\1104' = '\1024'
+toSimpleTitleCase '\1105' = '\1025'
+toSimpleTitleCase '\1106' = '\1026'
+toSimpleTitleCase '\1107' = '\1027'
+toSimpleTitleCase '\1108' = '\1028'
+toSimpleTitleCase '\1109' = '\1029'
+toSimpleTitleCase '\1110' = '\1030'
+toSimpleTitleCase '\1111' = '\1031'
+toSimpleTitleCase '\1112' = '\1032'
+toSimpleTitleCase '\1113' = '\1033'
+toSimpleTitleCase '\1114' = '\1034'
+toSimpleTitleCase '\1115' = '\1035'
+toSimpleTitleCase '\1116' = '\1036'
+toSimpleTitleCase '\1117' = '\1037'
+toSimpleTitleCase '\1118' = '\1038'
+toSimpleTitleCase '\1119' = '\1039'
+toSimpleTitleCase '\1121' = '\1120'
+toSimpleTitleCase '\1123' = '\1122'
+toSimpleTitleCase '\1125' = '\1124'
+toSimpleTitleCase '\1127' = '\1126'
+toSimpleTitleCase '\1129' = '\1128'
+toSimpleTitleCase '\1131' = '\1130'
+toSimpleTitleCase '\1133' = '\1132'
+toSimpleTitleCase '\1135' = '\1134'
+toSimpleTitleCase '\1137' = '\1136'
+toSimpleTitleCase '\1139' = '\1138'
+toSimpleTitleCase '\1141' = '\1140'
+toSimpleTitleCase '\1143' = '\1142'
+toSimpleTitleCase '\1145' = '\1144'
+toSimpleTitleCase '\1147' = '\1146'
+toSimpleTitleCase '\1149' = '\1148'
+toSimpleTitleCase '\1151' = '\1150'
+toSimpleTitleCase '\1153' = '\1152'
+toSimpleTitleCase '\1163' = '\1162'
+toSimpleTitleCase '\1165' = '\1164'
+toSimpleTitleCase '\1167' = '\1166'
+toSimpleTitleCase '\1169' = '\1168'
+toSimpleTitleCase '\1171' = '\1170'
+toSimpleTitleCase '\1173' = '\1172'
+toSimpleTitleCase '\1175' = '\1174'
+toSimpleTitleCase '\1177' = '\1176'
+toSimpleTitleCase '\1179' = '\1178'
+toSimpleTitleCase '\1181' = '\1180'
+toSimpleTitleCase '\1183' = '\1182'
+toSimpleTitleCase '\1185' = '\1184'
+toSimpleTitleCase '\1187' = '\1186'
+toSimpleTitleCase '\1189' = '\1188'
+toSimpleTitleCase '\1191' = '\1190'
+toSimpleTitleCase '\1193' = '\1192'
+toSimpleTitleCase '\1195' = '\1194'
+toSimpleTitleCase '\1197' = '\1196'
+toSimpleTitleCase '\1199' = '\1198'
+toSimpleTitleCase '\1201' = '\1200'
+toSimpleTitleCase '\1203' = '\1202'
+toSimpleTitleCase '\1205' = '\1204'
+toSimpleTitleCase '\1207' = '\1206'
+toSimpleTitleCase '\1209' = '\1208'
+toSimpleTitleCase '\1211' = '\1210'
+toSimpleTitleCase '\1213' = '\1212'
+toSimpleTitleCase '\1215' = '\1214'
+toSimpleTitleCase '\1218' = '\1217'
+toSimpleTitleCase '\1220' = '\1219'
+toSimpleTitleCase '\1222' = '\1221'
+toSimpleTitleCase '\1224' = '\1223'
+toSimpleTitleCase '\1226' = '\1225'
+toSimpleTitleCase '\1228' = '\1227'
+toSimpleTitleCase '\1230' = '\1229'
+toSimpleTitleCase '\1231' = '\1216'
+toSimpleTitleCase '\1233' = '\1232'
+toSimpleTitleCase '\1235' = '\1234'
+toSimpleTitleCase '\1237' = '\1236'
+toSimpleTitleCase '\1239' = '\1238'
+toSimpleTitleCase '\1241' = '\1240'
+toSimpleTitleCase '\1243' = '\1242'
+toSimpleTitleCase '\1245' = '\1244'
+toSimpleTitleCase '\1247' = '\1246'
+toSimpleTitleCase '\1249' = '\1248'
+toSimpleTitleCase '\1251' = '\1250'
+toSimpleTitleCase '\1253' = '\1252'
+toSimpleTitleCase '\1255' = '\1254'
+toSimpleTitleCase '\1257' = '\1256'
+toSimpleTitleCase '\1259' = '\1258'
+toSimpleTitleCase '\1261' = '\1260'
+toSimpleTitleCase '\1263' = '\1262'
+toSimpleTitleCase '\1265' = '\1264'
+toSimpleTitleCase '\1267' = '\1266'
+toSimpleTitleCase '\1269' = '\1268'
+toSimpleTitleCase '\1271' = '\1270'
+toSimpleTitleCase '\1273' = '\1272'
+toSimpleTitleCase '\1275' = '\1274'
+toSimpleTitleCase '\1277' = '\1276'
+toSimpleTitleCase '\1279' = '\1278'
+toSimpleTitleCase '\1281' = '\1280'
+toSimpleTitleCase '\1283' = '\1282'
+toSimpleTitleCase '\1285' = '\1284'
+toSimpleTitleCase '\1287' = '\1286'
+toSimpleTitleCase '\1289' = '\1288'
+toSimpleTitleCase '\1291' = '\1290'
+toSimpleTitleCase '\1293' = '\1292'
+toSimpleTitleCase '\1295' = '\1294'
+toSimpleTitleCase '\1297' = '\1296'
+toSimpleTitleCase '\1299' = '\1298'
+toSimpleTitleCase '\1301' = '\1300'
+toSimpleTitleCase '\1303' = '\1302'
+toSimpleTitleCase '\1305' = '\1304'
+toSimpleTitleCase '\1307' = '\1306'
+toSimpleTitleCase '\1309' = '\1308'
+toSimpleTitleCase '\1311' = '\1310'
+toSimpleTitleCase '\1313' = '\1312'
+toSimpleTitleCase '\1315' = '\1314'
+toSimpleTitleCase '\1317' = '\1316'
+toSimpleTitleCase '\1319' = '\1318'
+toSimpleTitleCase '\1321' = '\1320'
+toSimpleTitleCase '\1323' = '\1322'
+toSimpleTitleCase '\1325' = '\1324'
+toSimpleTitleCase '\1327' = '\1326'
+toSimpleTitleCase '\1377' = '\1329'
+toSimpleTitleCase '\1378' = '\1330'
+toSimpleTitleCase '\1379' = '\1331'
+toSimpleTitleCase '\1380' = '\1332'
+toSimpleTitleCase '\1381' = '\1333'
+toSimpleTitleCase '\1382' = '\1334'
+toSimpleTitleCase '\1383' = '\1335'
+toSimpleTitleCase '\1384' = '\1336'
+toSimpleTitleCase '\1385' = '\1337'
+toSimpleTitleCase '\1386' = '\1338'
+toSimpleTitleCase '\1387' = '\1339'
+toSimpleTitleCase '\1388' = '\1340'
+toSimpleTitleCase '\1389' = '\1341'
+toSimpleTitleCase '\1390' = '\1342'
+toSimpleTitleCase '\1391' = '\1343'
+toSimpleTitleCase '\1392' = '\1344'
+toSimpleTitleCase '\1393' = '\1345'
+toSimpleTitleCase '\1394' = '\1346'
+toSimpleTitleCase '\1395' = '\1347'
+toSimpleTitleCase '\1396' = '\1348'
+toSimpleTitleCase '\1397' = '\1349'
+toSimpleTitleCase '\1398' = '\1350'
+toSimpleTitleCase '\1399' = '\1351'
+toSimpleTitleCase '\1400' = '\1352'
+toSimpleTitleCase '\1401' = '\1353'
+toSimpleTitleCase '\1402' = '\1354'
+toSimpleTitleCase '\1403' = '\1355'
+toSimpleTitleCase '\1404' = '\1356'
+toSimpleTitleCase '\1405' = '\1357'
+toSimpleTitleCase '\1406' = '\1358'
+toSimpleTitleCase '\1407' = '\1359'
+toSimpleTitleCase '\1408' = '\1360'
+toSimpleTitleCase '\1409' = '\1361'
+toSimpleTitleCase '\1410' = '\1362'
+toSimpleTitleCase '\1411' = '\1363'
+toSimpleTitleCase '\1412' = '\1364'
+toSimpleTitleCase '\1413' = '\1365'
+toSimpleTitleCase '\1414' = '\1366'
+toSimpleTitleCase '\4304' = '\4304'
+toSimpleTitleCase '\4305' = '\4305'
+toSimpleTitleCase '\4306' = '\4306'
+toSimpleTitleCase '\4307' = '\4307'
+toSimpleTitleCase '\4308' = '\4308'
+toSimpleTitleCase '\4309' = '\4309'
+toSimpleTitleCase '\4310' = '\4310'
+toSimpleTitleCase '\4311' = '\4311'
+toSimpleTitleCase '\4312' = '\4312'
+toSimpleTitleCase '\4313' = '\4313'
+toSimpleTitleCase '\4314' = '\4314'
+toSimpleTitleCase '\4315' = '\4315'
+toSimpleTitleCase '\4316' = '\4316'
+toSimpleTitleCase '\4317' = '\4317'
+toSimpleTitleCase '\4318' = '\4318'
+toSimpleTitleCase '\4319' = '\4319'
+toSimpleTitleCase '\4320' = '\4320'
+toSimpleTitleCase '\4321' = '\4321'
+toSimpleTitleCase '\4322' = '\4322'
+toSimpleTitleCase '\4323' = '\4323'
+toSimpleTitleCase '\4324' = '\4324'
+toSimpleTitleCase '\4325' = '\4325'
+toSimpleTitleCase '\4326' = '\4326'
+toSimpleTitleCase '\4327' = '\4327'
+toSimpleTitleCase '\4328' = '\4328'
+toSimpleTitleCase '\4329' = '\4329'
+toSimpleTitleCase '\4330' = '\4330'
+toSimpleTitleCase '\4331' = '\4331'
+toSimpleTitleCase '\4332' = '\4332'
+toSimpleTitleCase '\4333' = '\4333'
+toSimpleTitleCase '\4334' = '\4334'
+toSimpleTitleCase '\4335' = '\4335'
+toSimpleTitleCase '\4336' = '\4336'
+toSimpleTitleCase '\4337' = '\4337'
+toSimpleTitleCase '\4338' = '\4338'
+toSimpleTitleCase '\4339' = '\4339'
+toSimpleTitleCase '\4340' = '\4340'
+toSimpleTitleCase '\4341' = '\4341'
+toSimpleTitleCase '\4342' = '\4342'
+toSimpleTitleCase '\4343' = '\4343'
+toSimpleTitleCase '\4344' = '\4344'
+toSimpleTitleCase '\4345' = '\4345'
+toSimpleTitleCase '\4346' = '\4346'
+toSimpleTitleCase '\4349' = '\4349'
+toSimpleTitleCase '\4350' = '\4350'
+toSimpleTitleCase '\4351' = '\4351'
+toSimpleTitleCase '\5112' = '\5104'
+toSimpleTitleCase '\5113' = '\5105'
+toSimpleTitleCase '\5114' = '\5106'
+toSimpleTitleCase '\5115' = '\5107'
+toSimpleTitleCase '\5116' = '\5108'
+toSimpleTitleCase '\5117' = '\5109'
+toSimpleTitleCase '\7296' = '\1042'
+toSimpleTitleCase '\7297' = '\1044'
+toSimpleTitleCase '\7298' = '\1054'
+toSimpleTitleCase '\7299' = '\1057'
+toSimpleTitleCase '\7300' = '\1058'
+toSimpleTitleCase '\7301' = '\1058'
+toSimpleTitleCase '\7302' = '\1066'
+toSimpleTitleCase '\7303' = '\1122'
+toSimpleTitleCase '\7304' = '\42570'
+toSimpleTitleCase '\7545' = '\42877'
+toSimpleTitleCase '\7549' = '\11363'
+toSimpleTitleCase '\7566' = '\42950'
+toSimpleTitleCase '\7681' = '\7680'
+toSimpleTitleCase '\7683' = '\7682'
+toSimpleTitleCase '\7685' = '\7684'
+toSimpleTitleCase '\7687' = '\7686'
+toSimpleTitleCase '\7689' = '\7688'
+toSimpleTitleCase '\7691' = '\7690'
+toSimpleTitleCase '\7693' = '\7692'
+toSimpleTitleCase '\7695' = '\7694'
+toSimpleTitleCase '\7697' = '\7696'
+toSimpleTitleCase '\7699' = '\7698'
+toSimpleTitleCase '\7701' = '\7700'
+toSimpleTitleCase '\7703' = '\7702'
+toSimpleTitleCase '\7705' = '\7704'
+toSimpleTitleCase '\7707' = '\7706'
+toSimpleTitleCase '\7709' = '\7708'
+toSimpleTitleCase '\7711' = '\7710'
+toSimpleTitleCase '\7713' = '\7712'
+toSimpleTitleCase '\7715' = '\7714'
+toSimpleTitleCase '\7717' = '\7716'
+toSimpleTitleCase '\7719' = '\7718'
+toSimpleTitleCase '\7721' = '\7720'
+toSimpleTitleCase '\7723' = '\7722'
+toSimpleTitleCase '\7725' = '\7724'
+toSimpleTitleCase '\7727' = '\7726'
+toSimpleTitleCase '\7729' = '\7728'
+toSimpleTitleCase '\7731' = '\7730'
+toSimpleTitleCase '\7733' = '\7732'
+toSimpleTitleCase '\7735' = '\7734'
+toSimpleTitleCase '\7737' = '\7736'
+toSimpleTitleCase '\7739' = '\7738'
+toSimpleTitleCase '\7741' = '\7740'
+toSimpleTitleCase '\7743' = '\7742'
+toSimpleTitleCase '\7745' = '\7744'
+toSimpleTitleCase '\7747' = '\7746'
+toSimpleTitleCase '\7749' = '\7748'
+toSimpleTitleCase '\7751' = '\7750'
+toSimpleTitleCase '\7753' = '\7752'
+toSimpleTitleCase '\7755' = '\7754'
+toSimpleTitleCase '\7757' = '\7756'
+toSimpleTitleCase '\7759' = '\7758'
+toSimpleTitleCase '\7761' = '\7760'
+toSimpleTitleCase '\7763' = '\7762'
+toSimpleTitleCase '\7765' = '\7764'
+toSimpleTitleCase '\7767' = '\7766'
+toSimpleTitleCase '\7769' = '\7768'
+toSimpleTitleCase '\7771' = '\7770'
+toSimpleTitleCase '\7773' = '\7772'
+toSimpleTitleCase '\7775' = '\7774'
+toSimpleTitleCase '\7777' = '\7776'
+toSimpleTitleCase '\7779' = '\7778'
+toSimpleTitleCase '\7781' = '\7780'
+toSimpleTitleCase '\7783' = '\7782'
+toSimpleTitleCase '\7785' = '\7784'
+toSimpleTitleCase '\7787' = '\7786'
+toSimpleTitleCase '\7789' = '\7788'
+toSimpleTitleCase '\7791' = '\7790'
+toSimpleTitleCase '\7793' = '\7792'
+toSimpleTitleCase '\7795' = '\7794'
+toSimpleTitleCase '\7797' = '\7796'
+toSimpleTitleCase '\7799' = '\7798'
+toSimpleTitleCase '\7801' = '\7800'
+toSimpleTitleCase '\7803' = '\7802'
+toSimpleTitleCase '\7805' = '\7804'
+toSimpleTitleCase '\7807' = '\7806'
+toSimpleTitleCase '\7809' = '\7808'
+toSimpleTitleCase '\7811' = '\7810'
+toSimpleTitleCase '\7813' = '\7812'
+toSimpleTitleCase '\7815' = '\7814'
+toSimpleTitleCase '\7817' = '\7816'
+toSimpleTitleCase '\7819' = '\7818'
+toSimpleTitleCase '\7821' = '\7820'
+toSimpleTitleCase '\7823' = '\7822'
+toSimpleTitleCase '\7825' = '\7824'
+toSimpleTitleCase '\7827' = '\7826'
+toSimpleTitleCase '\7829' = '\7828'
+toSimpleTitleCase '\7835' = '\7776'
+toSimpleTitleCase '\7841' = '\7840'
+toSimpleTitleCase '\7843' = '\7842'
+toSimpleTitleCase '\7845' = '\7844'
+toSimpleTitleCase '\7847' = '\7846'
+toSimpleTitleCase '\7849' = '\7848'
+toSimpleTitleCase '\7851' = '\7850'
+toSimpleTitleCase '\7853' = '\7852'
+toSimpleTitleCase '\7855' = '\7854'
+toSimpleTitleCase '\7857' = '\7856'
+toSimpleTitleCase '\7859' = '\7858'
+toSimpleTitleCase '\7861' = '\7860'
+toSimpleTitleCase '\7863' = '\7862'
+toSimpleTitleCase '\7865' = '\7864'
+toSimpleTitleCase '\7867' = '\7866'
+toSimpleTitleCase '\7869' = '\7868'
+toSimpleTitleCase '\7871' = '\7870'
+toSimpleTitleCase '\7873' = '\7872'
+toSimpleTitleCase '\7875' = '\7874'
+toSimpleTitleCase '\7877' = '\7876'
+toSimpleTitleCase '\7879' = '\7878'
+toSimpleTitleCase '\7881' = '\7880'
+toSimpleTitleCase '\7883' = '\7882'
+toSimpleTitleCase '\7885' = '\7884'
+toSimpleTitleCase '\7887' = '\7886'
+toSimpleTitleCase '\7889' = '\7888'
+toSimpleTitleCase '\7891' = '\7890'
+toSimpleTitleCase '\7893' = '\7892'
+toSimpleTitleCase '\7895' = '\7894'
+toSimpleTitleCase '\7897' = '\7896'
+toSimpleTitleCase '\7899' = '\7898'
+toSimpleTitleCase '\7901' = '\7900'
+toSimpleTitleCase '\7903' = '\7902'
+toSimpleTitleCase '\7905' = '\7904'
+toSimpleTitleCase '\7907' = '\7906'
+toSimpleTitleCase '\7909' = '\7908'
+toSimpleTitleCase '\7911' = '\7910'
+toSimpleTitleCase '\7913' = '\7912'
+toSimpleTitleCase '\7915' = '\7914'
+toSimpleTitleCase '\7917' = '\7916'
+toSimpleTitleCase '\7919' = '\7918'
+toSimpleTitleCase '\7921' = '\7920'
+toSimpleTitleCase '\7923' = '\7922'
+toSimpleTitleCase '\7925' = '\7924'
+toSimpleTitleCase '\7927' = '\7926'
+toSimpleTitleCase '\7929' = '\7928'
+toSimpleTitleCase '\7931' = '\7930'
+toSimpleTitleCase '\7933' = '\7932'
+toSimpleTitleCase '\7935' = '\7934'
+toSimpleTitleCase '\7936' = '\7944'
+toSimpleTitleCase '\7937' = '\7945'
+toSimpleTitleCase '\7938' = '\7946'
+toSimpleTitleCase '\7939' = '\7947'
+toSimpleTitleCase '\7940' = '\7948'
+toSimpleTitleCase '\7941' = '\7949'
+toSimpleTitleCase '\7942' = '\7950'
+toSimpleTitleCase '\7943' = '\7951'
+toSimpleTitleCase '\7952' = '\7960'
+toSimpleTitleCase '\7953' = '\7961'
+toSimpleTitleCase '\7954' = '\7962'
+toSimpleTitleCase '\7955' = '\7963'
+toSimpleTitleCase '\7956' = '\7964'
+toSimpleTitleCase '\7957' = '\7965'
+toSimpleTitleCase '\7968' = '\7976'
+toSimpleTitleCase '\7969' = '\7977'
+toSimpleTitleCase '\7970' = '\7978'
+toSimpleTitleCase '\7971' = '\7979'
+toSimpleTitleCase '\7972' = '\7980'
+toSimpleTitleCase '\7973' = '\7981'
+toSimpleTitleCase '\7974' = '\7982'
+toSimpleTitleCase '\7975' = '\7983'
+toSimpleTitleCase '\7984' = '\7992'
+toSimpleTitleCase '\7985' = '\7993'
+toSimpleTitleCase '\7986' = '\7994'
+toSimpleTitleCase '\7987' = '\7995'
+toSimpleTitleCase '\7988' = '\7996'
+toSimpleTitleCase '\7989' = '\7997'
+toSimpleTitleCase '\7990' = '\7998'
+toSimpleTitleCase '\7991' = '\7999'
+toSimpleTitleCase '\8000' = '\8008'
+toSimpleTitleCase '\8001' = '\8009'
+toSimpleTitleCase '\8002' = '\8010'
+toSimpleTitleCase '\8003' = '\8011'
+toSimpleTitleCase '\8004' = '\8012'
+toSimpleTitleCase '\8005' = '\8013'
+toSimpleTitleCase '\8017' = '\8025'
+toSimpleTitleCase '\8019' = '\8027'
+toSimpleTitleCase '\8021' = '\8029'
+toSimpleTitleCase '\8023' = '\8031'
+toSimpleTitleCase '\8032' = '\8040'
+toSimpleTitleCase '\8033' = '\8041'
+toSimpleTitleCase '\8034' = '\8042'
+toSimpleTitleCase '\8035' = '\8043'
+toSimpleTitleCase '\8036' = '\8044'
+toSimpleTitleCase '\8037' = '\8045'
+toSimpleTitleCase '\8038' = '\8046'
+toSimpleTitleCase '\8039' = '\8047'
+toSimpleTitleCase '\8048' = '\8122'
+toSimpleTitleCase '\8049' = '\8123'
+toSimpleTitleCase '\8050' = '\8136'
+toSimpleTitleCase '\8051' = '\8137'
+toSimpleTitleCase '\8052' = '\8138'
+toSimpleTitleCase '\8053' = '\8139'
+toSimpleTitleCase '\8054' = '\8154'
+toSimpleTitleCase '\8055' = '\8155'
+toSimpleTitleCase '\8056' = '\8184'
+toSimpleTitleCase '\8057' = '\8185'
+toSimpleTitleCase '\8058' = '\8170'
+toSimpleTitleCase '\8059' = '\8171'
+toSimpleTitleCase '\8060' = '\8186'
+toSimpleTitleCase '\8061' = '\8187'
+toSimpleTitleCase '\8064' = '\8072'
+toSimpleTitleCase '\8065' = '\8073'
+toSimpleTitleCase '\8066' = '\8074'
+toSimpleTitleCase '\8067' = '\8075'
+toSimpleTitleCase '\8068' = '\8076'
+toSimpleTitleCase '\8069' = '\8077'
+toSimpleTitleCase '\8070' = '\8078'
+toSimpleTitleCase '\8071' = '\8079'
+toSimpleTitleCase '\8080' = '\8088'
+toSimpleTitleCase '\8081' = '\8089'
+toSimpleTitleCase '\8082' = '\8090'
+toSimpleTitleCase '\8083' = '\8091'
+toSimpleTitleCase '\8084' = '\8092'
+toSimpleTitleCase '\8085' = '\8093'
+toSimpleTitleCase '\8086' = '\8094'
+toSimpleTitleCase '\8087' = '\8095'
+toSimpleTitleCase '\8096' = '\8104'
+toSimpleTitleCase '\8097' = '\8105'
+toSimpleTitleCase '\8098' = '\8106'
+toSimpleTitleCase '\8099' = '\8107'
+toSimpleTitleCase '\8100' = '\8108'
+toSimpleTitleCase '\8101' = '\8109'
+toSimpleTitleCase '\8102' = '\8110'
+toSimpleTitleCase '\8103' = '\8111'
+toSimpleTitleCase '\8112' = '\8120'
+toSimpleTitleCase '\8113' = '\8121'
+toSimpleTitleCase '\8115' = '\8124'
+toSimpleTitleCase '\8126' = '\921'
+toSimpleTitleCase '\8131' = '\8140'
+toSimpleTitleCase '\8144' = '\8152'
+toSimpleTitleCase '\8145' = '\8153'
+toSimpleTitleCase '\8160' = '\8168'
+toSimpleTitleCase '\8161' = '\8169'
+toSimpleTitleCase '\8165' = '\8172'
+toSimpleTitleCase '\8179' = '\8188'
+toSimpleTitleCase '\8526' = '\8498'
+toSimpleTitleCase '\8560' = '\8544'
+toSimpleTitleCase '\8561' = '\8545'
+toSimpleTitleCase '\8562' = '\8546'
+toSimpleTitleCase '\8563' = '\8547'
+toSimpleTitleCase '\8564' = '\8548'
+toSimpleTitleCase '\8565' = '\8549'
+toSimpleTitleCase '\8566' = '\8550'
+toSimpleTitleCase '\8567' = '\8551'
+toSimpleTitleCase '\8568' = '\8552'
+toSimpleTitleCase '\8569' = '\8553'
+toSimpleTitleCase '\8570' = '\8554'
+toSimpleTitleCase '\8571' = '\8555'
+toSimpleTitleCase '\8572' = '\8556'
+toSimpleTitleCase '\8573' = '\8557'
+toSimpleTitleCase '\8574' = '\8558'
+toSimpleTitleCase '\8575' = '\8559'
+toSimpleTitleCase '\8580' = '\8579'
+toSimpleTitleCase '\9424' = '\9398'
+toSimpleTitleCase '\9425' = '\9399'
+toSimpleTitleCase '\9426' = '\9400'
+toSimpleTitleCase '\9427' = '\9401'
+toSimpleTitleCase '\9428' = '\9402'
+toSimpleTitleCase '\9429' = '\9403'
+toSimpleTitleCase '\9430' = '\9404'
+toSimpleTitleCase '\9431' = '\9405'
+toSimpleTitleCase '\9432' = '\9406'
+toSimpleTitleCase '\9433' = '\9407'
+toSimpleTitleCase '\9434' = '\9408'
+toSimpleTitleCase '\9435' = '\9409'
+toSimpleTitleCase '\9436' = '\9410'
+toSimpleTitleCase '\9437' = '\9411'
+toSimpleTitleCase '\9438' = '\9412'
+toSimpleTitleCase '\9439' = '\9413'
+toSimpleTitleCase '\9440' = '\9414'
+toSimpleTitleCase '\9441' = '\9415'
+toSimpleTitleCase '\9442' = '\9416'
+toSimpleTitleCase '\9443' = '\9417'
+toSimpleTitleCase '\9444' = '\9418'
+toSimpleTitleCase '\9445' = '\9419'
+toSimpleTitleCase '\9446' = '\9420'
+toSimpleTitleCase '\9447' = '\9421'
+toSimpleTitleCase '\9448' = '\9422'
+toSimpleTitleCase '\9449' = '\9423'
+toSimpleTitleCase '\11312' = '\11264'
+toSimpleTitleCase '\11313' = '\11265'
+toSimpleTitleCase '\11314' = '\11266'
+toSimpleTitleCase '\11315' = '\11267'
+toSimpleTitleCase '\11316' = '\11268'
+toSimpleTitleCase '\11317' = '\11269'
+toSimpleTitleCase '\11318' = '\11270'
+toSimpleTitleCase '\11319' = '\11271'
+toSimpleTitleCase '\11320' = '\11272'
+toSimpleTitleCase '\11321' = '\11273'
+toSimpleTitleCase '\11322' = '\11274'
+toSimpleTitleCase '\11323' = '\11275'
+toSimpleTitleCase '\11324' = '\11276'
+toSimpleTitleCase '\11325' = '\11277'
+toSimpleTitleCase '\11326' = '\11278'
+toSimpleTitleCase '\11327' = '\11279'
+toSimpleTitleCase '\11328' = '\11280'
+toSimpleTitleCase '\11329' = '\11281'
+toSimpleTitleCase '\11330' = '\11282'
+toSimpleTitleCase '\11331' = '\11283'
+toSimpleTitleCase '\11332' = '\11284'
+toSimpleTitleCase '\11333' = '\11285'
+toSimpleTitleCase '\11334' = '\11286'
+toSimpleTitleCase '\11335' = '\11287'
+toSimpleTitleCase '\11336' = '\11288'
+toSimpleTitleCase '\11337' = '\11289'
+toSimpleTitleCase '\11338' = '\11290'
+toSimpleTitleCase '\11339' = '\11291'
+toSimpleTitleCase '\11340' = '\11292'
+toSimpleTitleCase '\11341' = '\11293'
+toSimpleTitleCase '\11342' = '\11294'
+toSimpleTitleCase '\11343' = '\11295'
+toSimpleTitleCase '\11344' = '\11296'
+toSimpleTitleCase '\11345' = '\11297'
+toSimpleTitleCase '\11346' = '\11298'
+toSimpleTitleCase '\11347' = '\11299'
+toSimpleTitleCase '\11348' = '\11300'
+toSimpleTitleCase '\11349' = '\11301'
+toSimpleTitleCase '\11350' = '\11302'
+toSimpleTitleCase '\11351' = '\11303'
+toSimpleTitleCase '\11352' = '\11304'
+toSimpleTitleCase '\11353' = '\11305'
+toSimpleTitleCase '\11354' = '\11306'
+toSimpleTitleCase '\11355' = '\11307'
+toSimpleTitleCase '\11356' = '\11308'
+toSimpleTitleCase '\11357' = '\11309'
+toSimpleTitleCase '\11358' = '\11310'
+toSimpleTitleCase '\11359' = '\11311'
+toSimpleTitleCase '\11361' = '\11360'
+toSimpleTitleCase '\11365' = '\570'
+toSimpleTitleCase '\11366' = '\574'
+toSimpleTitleCase '\11368' = '\11367'
+toSimpleTitleCase '\11370' = '\11369'
+toSimpleTitleCase '\11372' = '\11371'
+toSimpleTitleCase '\11379' = '\11378'
+toSimpleTitleCase '\11382' = '\11381'
+toSimpleTitleCase '\11393' = '\11392'
+toSimpleTitleCase '\11395' = '\11394'
+toSimpleTitleCase '\11397' = '\11396'
+toSimpleTitleCase '\11399' = '\11398'
+toSimpleTitleCase '\11401' = '\11400'
+toSimpleTitleCase '\11403' = '\11402'
+toSimpleTitleCase '\11405' = '\11404'
+toSimpleTitleCase '\11407' = '\11406'
+toSimpleTitleCase '\11409' = '\11408'
+toSimpleTitleCase '\11411' = '\11410'
+toSimpleTitleCase '\11413' = '\11412'
+toSimpleTitleCase '\11415' = '\11414'
+toSimpleTitleCase '\11417' = '\11416'
+toSimpleTitleCase '\11419' = '\11418'
+toSimpleTitleCase '\11421' = '\11420'
+toSimpleTitleCase '\11423' = '\11422'
+toSimpleTitleCase '\11425' = '\11424'
+toSimpleTitleCase '\11427' = '\11426'
+toSimpleTitleCase '\11429' = '\11428'
+toSimpleTitleCase '\11431' = '\11430'
+toSimpleTitleCase '\11433' = '\11432'
+toSimpleTitleCase '\11435' = '\11434'
+toSimpleTitleCase '\11437' = '\11436'
+toSimpleTitleCase '\11439' = '\11438'
+toSimpleTitleCase '\11441' = '\11440'
+toSimpleTitleCase '\11443' = '\11442'
+toSimpleTitleCase '\11445' = '\11444'
+toSimpleTitleCase '\11447' = '\11446'
+toSimpleTitleCase '\11449' = '\11448'
+toSimpleTitleCase '\11451' = '\11450'
+toSimpleTitleCase '\11453' = '\11452'
+toSimpleTitleCase '\11455' = '\11454'
+toSimpleTitleCase '\11457' = '\11456'
+toSimpleTitleCase '\11459' = '\11458'
+toSimpleTitleCase '\11461' = '\11460'
+toSimpleTitleCase '\11463' = '\11462'
+toSimpleTitleCase '\11465' = '\11464'
+toSimpleTitleCase '\11467' = '\11466'
+toSimpleTitleCase '\11469' = '\11468'
+toSimpleTitleCase '\11471' = '\11470'
+toSimpleTitleCase '\11473' = '\11472'
+toSimpleTitleCase '\11475' = '\11474'
+toSimpleTitleCase '\11477' = '\11476'
+toSimpleTitleCase '\11479' = '\11478'
+toSimpleTitleCase '\11481' = '\11480'
+toSimpleTitleCase '\11483' = '\11482'
+toSimpleTitleCase '\11485' = '\11484'
+toSimpleTitleCase '\11487' = '\11486'
+toSimpleTitleCase '\11489' = '\11488'
+toSimpleTitleCase '\11491' = '\11490'
+toSimpleTitleCase '\11500' = '\11499'
+toSimpleTitleCase '\11502' = '\11501'
+toSimpleTitleCase '\11507' = '\11506'
+toSimpleTitleCase '\11520' = '\4256'
+toSimpleTitleCase '\11521' = '\4257'
+toSimpleTitleCase '\11522' = '\4258'
+toSimpleTitleCase '\11523' = '\4259'
+toSimpleTitleCase '\11524' = '\4260'
+toSimpleTitleCase '\11525' = '\4261'
+toSimpleTitleCase '\11526' = '\4262'
+toSimpleTitleCase '\11527' = '\4263'
+toSimpleTitleCase '\11528' = '\4264'
+toSimpleTitleCase '\11529' = '\4265'
+toSimpleTitleCase '\11530' = '\4266'
+toSimpleTitleCase '\11531' = '\4267'
+toSimpleTitleCase '\11532' = '\4268'
+toSimpleTitleCase '\11533' = '\4269'
+toSimpleTitleCase '\11534' = '\4270'
+toSimpleTitleCase '\11535' = '\4271'
+toSimpleTitleCase '\11536' = '\4272'
+toSimpleTitleCase '\11537' = '\4273'
+toSimpleTitleCase '\11538' = '\4274'
+toSimpleTitleCase '\11539' = '\4275'
+toSimpleTitleCase '\11540' = '\4276'
+toSimpleTitleCase '\11541' = '\4277'
+toSimpleTitleCase '\11542' = '\4278'
+toSimpleTitleCase '\11543' = '\4279'
+toSimpleTitleCase '\11544' = '\4280'
+toSimpleTitleCase '\11545' = '\4281'
+toSimpleTitleCase '\11546' = '\4282'
+toSimpleTitleCase '\11547' = '\4283'
+toSimpleTitleCase '\11548' = '\4284'
+toSimpleTitleCase '\11549' = '\4285'
+toSimpleTitleCase '\11550' = '\4286'
+toSimpleTitleCase '\11551' = '\4287'
+toSimpleTitleCase '\11552' = '\4288'
+toSimpleTitleCase '\11553' = '\4289'
+toSimpleTitleCase '\11554' = '\4290'
+toSimpleTitleCase '\11555' = '\4291'
+toSimpleTitleCase '\11556' = '\4292'
+toSimpleTitleCase '\11557' = '\4293'
+toSimpleTitleCase '\11559' = '\4295'
+toSimpleTitleCase '\11565' = '\4301'
+toSimpleTitleCase '\42561' = '\42560'
+toSimpleTitleCase '\42563' = '\42562'
+toSimpleTitleCase '\42565' = '\42564'
+toSimpleTitleCase '\42567' = '\42566'
+toSimpleTitleCase '\42569' = '\42568'
+toSimpleTitleCase '\42571' = '\42570'
+toSimpleTitleCase '\42573' = '\42572'
+toSimpleTitleCase '\42575' = '\42574'
+toSimpleTitleCase '\42577' = '\42576'
+toSimpleTitleCase '\42579' = '\42578'
+toSimpleTitleCase '\42581' = '\42580'
+toSimpleTitleCase '\42583' = '\42582'
+toSimpleTitleCase '\42585' = '\42584'
+toSimpleTitleCase '\42587' = '\42586'
+toSimpleTitleCase '\42589' = '\42588'
+toSimpleTitleCase '\42591' = '\42590'
+toSimpleTitleCase '\42593' = '\42592'
+toSimpleTitleCase '\42595' = '\42594'
+toSimpleTitleCase '\42597' = '\42596'
+toSimpleTitleCase '\42599' = '\42598'
+toSimpleTitleCase '\42601' = '\42600'
+toSimpleTitleCase '\42603' = '\42602'
+toSimpleTitleCase '\42605' = '\42604'
+toSimpleTitleCase '\42625' = '\42624'
+toSimpleTitleCase '\42627' = '\42626'
+toSimpleTitleCase '\42629' = '\42628'
+toSimpleTitleCase '\42631' = '\42630'
+toSimpleTitleCase '\42633' = '\42632'
+toSimpleTitleCase '\42635' = '\42634'
+toSimpleTitleCase '\42637' = '\42636'
+toSimpleTitleCase '\42639' = '\42638'
+toSimpleTitleCase '\42641' = '\42640'
+toSimpleTitleCase '\42643' = '\42642'
+toSimpleTitleCase '\42645' = '\42644'
+toSimpleTitleCase '\42647' = '\42646'
+toSimpleTitleCase '\42649' = '\42648'
+toSimpleTitleCase '\42651' = '\42650'
+toSimpleTitleCase '\42787' = '\42786'
+toSimpleTitleCase '\42789' = '\42788'
+toSimpleTitleCase '\42791' = '\42790'
+toSimpleTitleCase '\42793' = '\42792'
+toSimpleTitleCase '\42795' = '\42794'
+toSimpleTitleCase '\42797' = '\42796'
+toSimpleTitleCase '\42799' = '\42798'
+toSimpleTitleCase '\42803' = '\42802'
+toSimpleTitleCase '\42805' = '\42804'
+toSimpleTitleCase '\42807' = '\42806'
+toSimpleTitleCase '\42809' = '\42808'
+toSimpleTitleCase '\42811' = '\42810'
+toSimpleTitleCase '\42813' = '\42812'
+toSimpleTitleCase '\42815' = '\42814'
+toSimpleTitleCase '\42817' = '\42816'
+toSimpleTitleCase '\42819' = '\42818'
+toSimpleTitleCase '\42821' = '\42820'
+toSimpleTitleCase '\42823' = '\42822'
+toSimpleTitleCase '\42825' = '\42824'
+toSimpleTitleCase '\42827' = '\42826'
+toSimpleTitleCase '\42829' = '\42828'
+toSimpleTitleCase '\42831' = '\42830'
+toSimpleTitleCase '\42833' = '\42832'
+toSimpleTitleCase '\42835' = '\42834'
+toSimpleTitleCase '\42837' = '\42836'
+toSimpleTitleCase '\42839' = '\42838'
+toSimpleTitleCase '\42841' = '\42840'
+toSimpleTitleCase '\42843' = '\42842'
+toSimpleTitleCase '\42845' = '\42844'
+toSimpleTitleCase '\42847' = '\42846'
+toSimpleTitleCase '\42849' = '\42848'
+toSimpleTitleCase '\42851' = '\42850'
+toSimpleTitleCase '\42853' = '\42852'
+toSimpleTitleCase '\42855' = '\42854'
+toSimpleTitleCase '\42857' = '\42856'
+toSimpleTitleCase '\42859' = '\42858'
+toSimpleTitleCase '\42861' = '\42860'
+toSimpleTitleCase '\42863' = '\42862'
+toSimpleTitleCase '\42874' = '\42873'
+toSimpleTitleCase '\42876' = '\42875'
+toSimpleTitleCase '\42879' = '\42878'
+toSimpleTitleCase '\42881' = '\42880'
+toSimpleTitleCase '\42883' = '\42882'
+toSimpleTitleCase '\42885' = '\42884'
+toSimpleTitleCase '\42887' = '\42886'
+toSimpleTitleCase '\42892' = '\42891'
+toSimpleTitleCase '\42897' = '\42896'
+toSimpleTitleCase '\42899' = '\42898'
+toSimpleTitleCase '\42900' = '\42948'
+toSimpleTitleCase '\42903' = '\42902'
+toSimpleTitleCase '\42905' = '\42904'
+toSimpleTitleCase '\42907' = '\42906'
+toSimpleTitleCase '\42909' = '\42908'
+toSimpleTitleCase '\42911' = '\42910'
+toSimpleTitleCase '\42913' = '\42912'
+toSimpleTitleCase '\42915' = '\42914'
+toSimpleTitleCase '\42917' = '\42916'
+toSimpleTitleCase '\42919' = '\42918'
+toSimpleTitleCase '\42921' = '\42920'
+toSimpleTitleCase '\42933' = '\42932'
+toSimpleTitleCase '\42935' = '\42934'
+toSimpleTitleCase '\42937' = '\42936'
+toSimpleTitleCase '\42939' = '\42938'
+toSimpleTitleCase '\42941' = '\42940'
+toSimpleTitleCase '\42943' = '\42942'
+toSimpleTitleCase '\42945' = '\42944'
+toSimpleTitleCase '\42947' = '\42946'
+toSimpleTitleCase '\42952' = '\42951'
+toSimpleTitleCase '\42954' = '\42953'
+toSimpleTitleCase '\42961' = '\42960'
+toSimpleTitleCase '\42967' = '\42966'
+toSimpleTitleCase '\42969' = '\42968'
+toSimpleTitleCase '\42998' = '\42997'
+toSimpleTitleCase '\43859' = '\42931'
+toSimpleTitleCase '\43888' = '\5024'
+toSimpleTitleCase '\43889' = '\5025'
+toSimpleTitleCase '\43890' = '\5026'
+toSimpleTitleCase '\43891' = '\5027'
+toSimpleTitleCase '\43892' = '\5028'
+toSimpleTitleCase '\43893' = '\5029'
+toSimpleTitleCase '\43894' = '\5030'
+toSimpleTitleCase '\43895' = '\5031'
+toSimpleTitleCase '\43896' = '\5032'
+toSimpleTitleCase '\43897' = '\5033'
+toSimpleTitleCase '\43898' = '\5034'
+toSimpleTitleCase '\43899' = '\5035'
+toSimpleTitleCase '\43900' = '\5036'
+toSimpleTitleCase '\43901' = '\5037'
+toSimpleTitleCase '\43902' = '\5038'
+toSimpleTitleCase '\43903' = '\5039'
+toSimpleTitleCase '\43904' = '\5040'
+toSimpleTitleCase '\43905' = '\5041'
+toSimpleTitleCase '\43906' = '\5042'
+toSimpleTitleCase '\43907' = '\5043'
+toSimpleTitleCase '\43908' = '\5044'
+toSimpleTitleCase '\43909' = '\5045'
+toSimpleTitleCase '\43910' = '\5046'
+toSimpleTitleCase '\43911' = '\5047'
+toSimpleTitleCase '\43912' = '\5048'
+toSimpleTitleCase '\43913' = '\5049'
+toSimpleTitleCase '\43914' = '\5050'
+toSimpleTitleCase '\43915' = '\5051'
+toSimpleTitleCase '\43916' = '\5052'
+toSimpleTitleCase '\43917' = '\5053'
+toSimpleTitleCase '\43918' = '\5054'
+toSimpleTitleCase '\43919' = '\5055'
+toSimpleTitleCase '\43920' = '\5056'
+toSimpleTitleCase '\43921' = '\5057'
+toSimpleTitleCase '\43922' = '\5058'
+toSimpleTitleCase '\43923' = '\5059'
+toSimpleTitleCase '\43924' = '\5060'
+toSimpleTitleCase '\43925' = '\5061'
+toSimpleTitleCase '\43926' = '\5062'
+toSimpleTitleCase '\43927' = '\5063'
+toSimpleTitleCase '\43928' = '\5064'
+toSimpleTitleCase '\43929' = '\5065'
+toSimpleTitleCase '\43930' = '\5066'
+toSimpleTitleCase '\43931' = '\5067'
+toSimpleTitleCase '\43932' = '\5068'
+toSimpleTitleCase '\43933' = '\5069'
+toSimpleTitleCase '\43934' = '\5070'
+toSimpleTitleCase '\43935' = '\5071'
+toSimpleTitleCase '\43936' = '\5072'
+toSimpleTitleCase '\43937' = '\5073'
+toSimpleTitleCase '\43938' = '\5074'
+toSimpleTitleCase '\43939' = '\5075'
+toSimpleTitleCase '\43940' = '\5076'
+toSimpleTitleCase '\43941' = '\5077'
+toSimpleTitleCase '\43942' = '\5078'
+toSimpleTitleCase '\43943' = '\5079'
+toSimpleTitleCase '\43944' = '\5080'
+toSimpleTitleCase '\43945' = '\5081'
+toSimpleTitleCase '\43946' = '\5082'
+toSimpleTitleCase '\43947' = '\5083'
+toSimpleTitleCase '\43948' = '\5084'
+toSimpleTitleCase '\43949' = '\5085'
+toSimpleTitleCase '\43950' = '\5086'
+toSimpleTitleCase '\43951' = '\5087'
+toSimpleTitleCase '\43952' = '\5088'
+toSimpleTitleCase '\43953' = '\5089'
+toSimpleTitleCase '\43954' = '\5090'
+toSimpleTitleCase '\43955' = '\5091'
+toSimpleTitleCase '\43956' = '\5092'
+toSimpleTitleCase '\43957' = '\5093'
+toSimpleTitleCase '\43958' = '\5094'
+toSimpleTitleCase '\43959' = '\5095'
+toSimpleTitleCase '\43960' = '\5096'
+toSimpleTitleCase '\43961' = '\5097'
+toSimpleTitleCase '\43962' = '\5098'
+toSimpleTitleCase '\43963' = '\5099'
+toSimpleTitleCase '\43964' = '\5100'
+toSimpleTitleCase '\43965' = '\5101'
+toSimpleTitleCase '\43966' = '\5102'
+toSimpleTitleCase '\43967' = '\5103'
+toSimpleTitleCase '\65345' = '\65313'
+toSimpleTitleCase '\65346' = '\65314'
+toSimpleTitleCase '\65347' = '\65315'
+toSimpleTitleCase '\65348' = '\65316'
+toSimpleTitleCase '\65349' = '\65317'
+toSimpleTitleCase '\65350' = '\65318'
+toSimpleTitleCase '\65351' = '\65319'
+toSimpleTitleCase '\65352' = '\65320'
+toSimpleTitleCase '\65353' = '\65321'
+toSimpleTitleCase '\65354' = '\65322'
+toSimpleTitleCase '\65355' = '\65323'
+toSimpleTitleCase '\65356' = '\65324'
+toSimpleTitleCase '\65357' = '\65325'
+toSimpleTitleCase '\65358' = '\65326'
+toSimpleTitleCase '\65359' = '\65327'
+toSimpleTitleCase '\65360' = '\65328'
+toSimpleTitleCase '\65361' = '\65329'
+toSimpleTitleCase '\65362' = '\65330'
+toSimpleTitleCase '\65363' = '\65331'
+toSimpleTitleCase '\65364' = '\65332'
+toSimpleTitleCase '\65365' = '\65333'
+toSimpleTitleCase '\65366' = '\65334'
+toSimpleTitleCase '\65367' = '\65335'
+toSimpleTitleCase '\65368' = '\65336'
+toSimpleTitleCase '\65369' = '\65337'
+toSimpleTitleCase '\65370' = '\65338'
+toSimpleTitleCase '\66600' = '\66560'
+toSimpleTitleCase '\66601' = '\66561'
+toSimpleTitleCase '\66602' = '\66562'
+toSimpleTitleCase '\66603' = '\66563'
+toSimpleTitleCase '\66604' = '\66564'
+toSimpleTitleCase '\66605' = '\66565'
+toSimpleTitleCase '\66606' = '\66566'
+toSimpleTitleCase '\66607' = '\66567'
+toSimpleTitleCase '\66608' = '\66568'
+toSimpleTitleCase '\66609' = '\66569'
+toSimpleTitleCase '\66610' = '\66570'
+toSimpleTitleCase '\66611' = '\66571'
+toSimpleTitleCase '\66612' = '\66572'
+toSimpleTitleCase '\66613' = '\66573'
+toSimpleTitleCase '\66614' = '\66574'
+toSimpleTitleCase '\66615' = '\66575'
+toSimpleTitleCase '\66616' = '\66576'
+toSimpleTitleCase '\66617' = '\66577'
+toSimpleTitleCase '\66618' = '\66578'
+toSimpleTitleCase '\66619' = '\66579'
+toSimpleTitleCase '\66620' = '\66580'
+toSimpleTitleCase '\66621' = '\66581'
+toSimpleTitleCase '\66622' = '\66582'
+toSimpleTitleCase '\66623' = '\66583'
+toSimpleTitleCase '\66624' = '\66584'
+toSimpleTitleCase '\66625' = '\66585'
+toSimpleTitleCase '\66626' = '\66586'
+toSimpleTitleCase '\66627' = '\66587'
+toSimpleTitleCase '\66628' = '\66588'
+toSimpleTitleCase '\66629' = '\66589'
+toSimpleTitleCase '\66630' = '\66590'
+toSimpleTitleCase '\66631' = '\66591'
+toSimpleTitleCase '\66632' = '\66592'
+toSimpleTitleCase '\66633' = '\66593'
+toSimpleTitleCase '\66634' = '\66594'
+toSimpleTitleCase '\66635' = '\66595'
+toSimpleTitleCase '\66636' = '\66596'
+toSimpleTitleCase '\66637' = '\66597'
+toSimpleTitleCase '\66638' = '\66598'
+toSimpleTitleCase '\66639' = '\66599'
+toSimpleTitleCase '\66776' = '\66736'
+toSimpleTitleCase '\66777' = '\66737'
+toSimpleTitleCase '\66778' = '\66738'
+toSimpleTitleCase '\66779' = '\66739'
+toSimpleTitleCase '\66780' = '\66740'
+toSimpleTitleCase '\66781' = '\66741'
+toSimpleTitleCase '\66782' = '\66742'
+toSimpleTitleCase '\66783' = '\66743'
+toSimpleTitleCase '\66784' = '\66744'
+toSimpleTitleCase '\66785' = '\66745'
+toSimpleTitleCase '\66786' = '\66746'
+toSimpleTitleCase '\66787' = '\66747'
+toSimpleTitleCase '\66788' = '\66748'
+toSimpleTitleCase '\66789' = '\66749'
+toSimpleTitleCase '\66790' = '\66750'
+toSimpleTitleCase '\66791' = '\66751'
+toSimpleTitleCase '\66792' = '\66752'
+toSimpleTitleCase '\66793' = '\66753'
+toSimpleTitleCase '\66794' = '\66754'
+toSimpleTitleCase '\66795' = '\66755'
+toSimpleTitleCase '\66796' = '\66756'
+toSimpleTitleCase '\66797' = '\66757'
+toSimpleTitleCase '\66798' = '\66758'
+toSimpleTitleCase '\66799' = '\66759'
+toSimpleTitleCase '\66800' = '\66760'
+toSimpleTitleCase '\66801' = '\66761'
+toSimpleTitleCase '\66802' = '\66762'
+toSimpleTitleCase '\66803' = '\66763'
+toSimpleTitleCase '\66804' = '\66764'
+toSimpleTitleCase '\66805' = '\66765'
+toSimpleTitleCase '\66806' = '\66766'
+toSimpleTitleCase '\66807' = '\66767'
+toSimpleTitleCase '\66808' = '\66768'
+toSimpleTitleCase '\66809' = '\66769'
+toSimpleTitleCase '\66810' = '\66770'
+toSimpleTitleCase '\66811' = '\66771'
+toSimpleTitleCase '\66967' = '\66928'
+toSimpleTitleCase '\66968' = '\66929'
+toSimpleTitleCase '\66969' = '\66930'
+toSimpleTitleCase '\66970' = '\66931'
+toSimpleTitleCase '\66971' = '\66932'
+toSimpleTitleCase '\66972' = '\66933'
+toSimpleTitleCase '\66973' = '\66934'
+toSimpleTitleCase '\66974' = '\66935'
+toSimpleTitleCase '\66975' = '\66936'
+toSimpleTitleCase '\66976' = '\66937'
+toSimpleTitleCase '\66977' = '\66938'
+toSimpleTitleCase '\66979' = '\66940'
+toSimpleTitleCase '\66980' = '\66941'
+toSimpleTitleCase '\66981' = '\66942'
+toSimpleTitleCase '\66982' = '\66943'
+toSimpleTitleCase '\66983' = '\66944'
+toSimpleTitleCase '\66984' = '\66945'
+toSimpleTitleCase '\66985' = '\66946'
+toSimpleTitleCase '\66986' = '\66947'
+toSimpleTitleCase '\66987' = '\66948'
+toSimpleTitleCase '\66988' = '\66949'
+toSimpleTitleCase '\66989' = '\66950'
+toSimpleTitleCase '\66990' = '\66951'
+toSimpleTitleCase '\66991' = '\66952'
+toSimpleTitleCase '\66992' = '\66953'
+toSimpleTitleCase '\66993' = '\66954'
+toSimpleTitleCase '\66995' = '\66956'
+toSimpleTitleCase '\66996' = '\66957'
+toSimpleTitleCase '\66997' = '\66958'
+toSimpleTitleCase '\66998' = '\66959'
+toSimpleTitleCase '\66999' = '\66960'
+toSimpleTitleCase '\67000' = '\66961'
+toSimpleTitleCase '\67001' = '\66962'
+toSimpleTitleCase '\67003' = '\66964'
+toSimpleTitleCase '\67004' = '\66965'
+toSimpleTitleCase '\68800' = '\68736'
+toSimpleTitleCase '\68801' = '\68737'
+toSimpleTitleCase '\68802' = '\68738'
+toSimpleTitleCase '\68803' = '\68739'
+toSimpleTitleCase '\68804' = '\68740'
+toSimpleTitleCase '\68805' = '\68741'
+toSimpleTitleCase '\68806' = '\68742'
+toSimpleTitleCase '\68807' = '\68743'
+toSimpleTitleCase '\68808' = '\68744'
+toSimpleTitleCase '\68809' = '\68745'
+toSimpleTitleCase '\68810' = '\68746'
+toSimpleTitleCase '\68811' = '\68747'
+toSimpleTitleCase '\68812' = '\68748'
+toSimpleTitleCase '\68813' = '\68749'
+toSimpleTitleCase '\68814' = '\68750'
+toSimpleTitleCase '\68815' = '\68751'
+toSimpleTitleCase '\68816' = '\68752'
+toSimpleTitleCase '\68817' = '\68753'
+toSimpleTitleCase '\68818' = '\68754'
+toSimpleTitleCase '\68819' = '\68755'
+toSimpleTitleCase '\68820' = '\68756'
+toSimpleTitleCase '\68821' = '\68757'
+toSimpleTitleCase '\68822' = '\68758'
+toSimpleTitleCase '\68823' = '\68759'
+toSimpleTitleCase '\68824' = '\68760'
+toSimpleTitleCase '\68825' = '\68761'
+toSimpleTitleCase '\68826' = '\68762'
+toSimpleTitleCase '\68827' = '\68763'
+toSimpleTitleCase '\68828' = '\68764'
+toSimpleTitleCase '\68829' = '\68765'
+toSimpleTitleCase '\68830' = '\68766'
+toSimpleTitleCase '\68831' = '\68767'
+toSimpleTitleCase '\68832' = '\68768'
+toSimpleTitleCase '\68833' = '\68769'
+toSimpleTitleCase '\68834' = '\68770'
+toSimpleTitleCase '\68835' = '\68771'
+toSimpleTitleCase '\68836' = '\68772'
+toSimpleTitleCase '\68837' = '\68773'
+toSimpleTitleCase '\68838' = '\68774'
+toSimpleTitleCase '\68839' = '\68775'
+toSimpleTitleCase '\68840' = '\68776'
+toSimpleTitleCase '\68841' = '\68777'
+toSimpleTitleCase '\68842' = '\68778'
+toSimpleTitleCase '\68843' = '\68779'
+toSimpleTitleCase '\68844' = '\68780'
+toSimpleTitleCase '\68845' = '\68781'
+toSimpleTitleCase '\68846' = '\68782'
+toSimpleTitleCase '\68847' = '\68783'
+toSimpleTitleCase '\68848' = '\68784'
+toSimpleTitleCase '\68849' = '\68785'
+toSimpleTitleCase '\68850' = '\68786'
+toSimpleTitleCase '\71872' = '\71840'
+toSimpleTitleCase '\71873' = '\71841'
+toSimpleTitleCase '\71874' = '\71842'
+toSimpleTitleCase '\71875' = '\71843'
+toSimpleTitleCase '\71876' = '\71844'
+toSimpleTitleCase '\71877' = '\71845'
+toSimpleTitleCase '\71878' = '\71846'
+toSimpleTitleCase '\71879' = '\71847'
+toSimpleTitleCase '\71880' = '\71848'
+toSimpleTitleCase '\71881' = '\71849'
+toSimpleTitleCase '\71882' = '\71850'
+toSimpleTitleCase '\71883' = '\71851'
+toSimpleTitleCase '\71884' = '\71852'
+toSimpleTitleCase '\71885' = '\71853'
+toSimpleTitleCase '\71886' = '\71854'
+toSimpleTitleCase '\71887' = '\71855'
+toSimpleTitleCase '\71888' = '\71856'
+toSimpleTitleCase '\71889' = '\71857'
+toSimpleTitleCase '\71890' = '\71858'
+toSimpleTitleCase '\71891' = '\71859'
+toSimpleTitleCase '\71892' = '\71860'
+toSimpleTitleCase '\71893' = '\71861'
+toSimpleTitleCase '\71894' = '\71862'
+toSimpleTitleCase '\71895' = '\71863'
+toSimpleTitleCase '\71896' = '\71864'
+toSimpleTitleCase '\71897' = '\71865'
+toSimpleTitleCase '\71898' = '\71866'
+toSimpleTitleCase '\71899' = '\71867'
+toSimpleTitleCase '\71900' = '\71868'
+toSimpleTitleCase '\71901' = '\71869'
+toSimpleTitleCase '\71902' = '\71870'
+toSimpleTitleCase '\71903' = '\71871'
+toSimpleTitleCase '\93792' = '\93760'
+toSimpleTitleCase '\93793' = '\93761'
+toSimpleTitleCase '\93794' = '\93762'
+toSimpleTitleCase '\93795' = '\93763'
+toSimpleTitleCase '\93796' = '\93764'
+toSimpleTitleCase '\93797' = '\93765'
+toSimpleTitleCase '\93798' = '\93766'
+toSimpleTitleCase '\93799' = '\93767'
+toSimpleTitleCase '\93800' = '\93768'
+toSimpleTitleCase '\93801' = '\93769'
+toSimpleTitleCase '\93802' = '\93770'
+toSimpleTitleCase '\93803' = '\93771'
+toSimpleTitleCase '\93804' = '\93772'
+toSimpleTitleCase '\93805' = '\93773'
+toSimpleTitleCase '\93806' = '\93774'
+toSimpleTitleCase '\93807' = '\93775'
+toSimpleTitleCase '\93808' = '\93776'
+toSimpleTitleCase '\93809' = '\93777'
+toSimpleTitleCase '\93810' = '\93778'
+toSimpleTitleCase '\93811' = '\93779'
+toSimpleTitleCase '\93812' = '\93780'
+toSimpleTitleCase '\93813' = '\93781'
+toSimpleTitleCase '\93814' = '\93782'
+toSimpleTitleCase '\93815' = '\93783'
+toSimpleTitleCase '\93816' = '\93784'
+toSimpleTitleCase '\93817' = '\93785'
+toSimpleTitleCase '\93818' = '\93786'
+toSimpleTitleCase '\93819' = '\93787'
+toSimpleTitleCase '\93820' = '\93788'
+toSimpleTitleCase '\93821' = '\93789'
+toSimpleTitleCase '\93822' = '\93790'
+toSimpleTitleCase '\93823' = '\93791'
+toSimpleTitleCase '\125218' = '\125184'
+toSimpleTitleCase '\125219' = '\125185'
+toSimpleTitleCase '\125220' = '\125186'
+toSimpleTitleCase '\125221' = '\125187'
+toSimpleTitleCase '\125222' = '\125188'
+toSimpleTitleCase '\125223' = '\125189'
+toSimpleTitleCase '\125224' = '\125190'
+toSimpleTitleCase '\125225' = '\125191'
+toSimpleTitleCase '\125226' = '\125192'
+toSimpleTitleCase '\125227' = '\125193'
+toSimpleTitleCase '\125228' = '\125194'
+toSimpleTitleCase '\125229' = '\125195'
+toSimpleTitleCase '\125230' = '\125196'
+toSimpleTitleCase '\125231' = '\125197'
+toSimpleTitleCase '\125232' = '\125198'
+toSimpleTitleCase '\125233' = '\125199'
+toSimpleTitleCase '\125234' = '\125200'
+toSimpleTitleCase '\125235' = '\125201'
+toSimpleTitleCase '\125236' = '\125202'
+toSimpleTitleCase '\125237' = '\125203'
+toSimpleTitleCase '\125238' = '\125204'
+toSimpleTitleCase '\125239' = '\125205'
+toSimpleTitleCase '\125240' = '\125206'
+toSimpleTitleCase '\125241' = '\125207'
+toSimpleTitleCase '\125242' = '\125208'
+toSimpleTitleCase '\125243' = '\125209'
+toSimpleTitleCase '\125244' = '\125210'
+toSimpleTitleCase '\125245' = '\125211'
+toSimpleTitleCase '\125246' = '\125212'
+toSimpleTitleCase '\125247' = '\125213'
+toSimpleTitleCase '\125248' = '\125214'
+toSimpleTitleCase '\125249' = '\125215'
+toSimpleTitleCase '\125250' = '\125216'
+toSimpleTitleCase '\125251' = '\125217'
+toSimpleTitleCase c = c
diff --git a/lib/Unicode/Internal/Char/UnicodeData/SimpleUpperCaseMapping.hs b/lib/Unicode/Internal/Char/UnicodeData/SimpleUpperCaseMapping.hs
new file mode 100644
--- /dev/null
+++ b/lib/Unicode/Internal/Char/UnicodeData/SimpleUpperCaseMapping.hs
@@ -0,0 +1,1465 @@
+-- autogenerated from https://www.unicode.org/Public/14.0.0/ucd/UnicodeData.txt
+-- |
+-- Module      : Unicode.Internal.Char.UnicodeData.SimpleUpperCaseMapping
+-- Copyright   : (c) 2020 Composewell Technologies and Contributors
+-- License     : Apache-2.0
+-- Maintainer  : streamly@composewell.com
+-- Stability   : experimental
+
+module Unicode.Internal.Char.UnicodeData.SimpleUpperCaseMapping
+(toSimpleUpperCase)
+where
+
+{-# NOINLINE toSimpleUpperCase #-}
+toSimpleUpperCase :: Char -> Char
+toSimpleUpperCase 'a' = 'A'
+toSimpleUpperCase 'b' = 'B'
+toSimpleUpperCase 'c' = 'C'
+toSimpleUpperCase 'd' = 'D'
+toSimpleUpperCase 'e' = 'E'
+toSimpleUpperCase 'f' = 'F'
+toSimpleUpperCase 'g' = 'G'
+toSimpleUpperCase 'h' = 'H'
+toSimpleUpperCase 'i' = 'I'
+toSimpleUpperCase 'j' = 'J'
+toSimpleUpperCase 'k' = 'K'
+toSimpleUpperCase 'l' = 'L'
+toSimpleUpperCase 'm' = 'M'
+toSimpleUpperCase 'n' = 'N'
+toSimpleUpperCase 'o' = 'O'
+toSimpleUpperCase 'p' = 'P'
+toSimpleUpperCase 'q' = 'Q'
+toSimpleUpperCase 'r' = 'R'
+toSimpleUpperCase 's' = 'S'
+toSimpleUpperCase 't' = 'T'
+toSimpleUpperCase 'u' = 'U'
+toSimpleUpperCase 'v' = 'V'
+toSimpleUpperCase 'w' = 'W'
+toSimpleUpperCase 'x' = 'X'
+toSimpleUpperCase 'y' = 'Y'
+toSimpleUpperCase 'z' = 'Z'
+toSimpleUpperCase '\181' = '\924'
+toSimpleUpperCase '\224' = '\192'
+toSimpleUpperCase '\225' = '\193'
+toSimpleUpperCase '\226' = '\194'
+toSimpleUpperCase '\227' = '\195'
+toSimpleUpperCase '\228' = '\196'
+toSimpleUpperCase '\229' = '\197'
+toSimpleUpperCase '\230' = '\198'
+toSimpleUpperCase '\231' = '\199'
+toSimpleUpperCase '\232' = '\200'
+toSimpleUpperCase '\233' = '\201'
+toSimpleUpperCase '\234' = '\202'
+toSimpleUpperCase '\235' = '\203'
+toSimpleUpperCase '\236' = '\204'
+toSimpleUpperCase '\237' = '\205'
+toSimpleUpperCase '\238' = '\206'
+toSimpleUpperCase '\239' = '\207'
+toSimpleUpperCase '\240' = '\208'
+toSimpleUpperCase '\241' = '\209'
+toSimpleUpperCase '\242' = '\210'
+toSimpleUpperCase '\243' = '\211'
+toSimpleUpperCase '\244' = '\212'
+toSimpleUpperCase '\245' = '\213'
+toSimpleUpperCase '\246' = '\214'
+toSimpleUpperCase '\248' = '\216'
+toSimpleUpperCase '\249' = '\217'
+toSimpleUpperCase '\250' = '\218'
+toSimpleUpperCase '\251' = '\219'
+toSimpleUpperCase '\252' = '\220'
+toSimpleUpperCase '\253' = '\221'
+toSimpleUpperCase '\254' = '\222'
+toSimpleUpperCase '\255' = '\376'
+toSimpleUpperCase '\257' = '\256'
+toSimpleUpperCase '\259' = '\258'
+toSimpleUpperCase '\261' = '\260'
+toSimpleUpperCase '\263' = '\262'
+toSimpleUpperCase '\265' = '\264'
+toSimpleUpperCase '\267' = '\266'
+toSimpleUpperCase '\269' = '\268'
+toSimpleUpperCase '\271' = '\270'
+toSimpleUpperCase '\273' = '\272'
+toSimpleUpperCase '\275' = '\274'
+toSimpleUpperCase '\277' = '\276'
+toSimpleUpperCase '\279' = '\278'
+toSimpleUpperCase '\281' = '\280'
+toSimpleUpperCase '\283' = '\282'
+toSimpleUpperCase '\285' = '\284'
+toSimpleUpperCase '\287' = '\286'
+toSimpleUpperCase '\289' = '\288'
+toSimpleUpperCase '\291' = '\290'
+toSimpleUpperCase '\293' = '\292'
+toSimpleUpperCase '\295' = '\294'
+toSimpleUpperCase '\297' = '\296'
+toSimpleUpperCase '\299' = '\298'
+toSimpleUpperCase '\301' = '\300'
+toSimpleUpperCase '\303' = '\302'
+toSimpleUpperCase '\305' = 'I'
+toSimpleUpperCase '\307' = '\306'
+toSimpleUpperCase '\309' = '\308'
+toSimpleUpperCase '\311' = '\310'
+toSimpleUpperCase '\314' = '\313'
+toSimpleUpperCase '\316' = '\315'
+toSimpleUpperCase '\318' = '\317'
+toSimpleUpperCase '\320' = '\319'
+toSimpleUpperCase '\322' = '\321'
+toSimpleUpperCase '\324' = '\323'
+toSimpleUpperCase '\326' = '\325'
+toSimpleUpperCase '\328' = '\327'
+toSimpleUpperCase '\331' = '\330'
+toSimpleUpperCase '\333' = '\332'
+toSimpleUpperCase '\335' = '\334'
+toSimpleUpperCase '\337' = '\336'
+toSimpleUpperCase '\339' = '\338'
+toSimpleUpperCase '\341' = '\340'
+toSimpleUpperCase '\343' = '\342'
+toSimpleUpperCase '\345' = '\344'
+toSimpleUpperCase '\347' = '\346'
+toSimpleUpperCase '\349' = '\348'
+toSimpleUpperCase '\351' = '\350'
+toSimpleUpperCase '\353' = '\352'
+toSimpleUpperCase '\355' = '\354'
+toSimpleUpperCase '\357' = '\356'
+toSimpleUpperCase '\359' = '\358'
+toSimpleUpperCase '\361' = '\360'
+toSimpleUpperCase '\363' = '\362'
+toSimpleUpperCase '\365' = '\364'
+toSimpleUpperCase '\367' = '\366'
+toSimpleUpperCase '\369' = '\368'
+toSimpleUpperCase '\371' = '\370'
+toSimpleUpperCase '\373' = '\372'
+toSimpleUpperCase '\375' = '\374'
+toSimpleUpperCase '\378' = '\377'
+toSimpleUpperCase '\380' = '\379'
+toSimpleUpperCase '\382' = '\381'
+toSimpleUpperCase '\383' = 'S'
+toSimpleUpperCase '\384' = '\579'
+toSimpleUpperCase '\387' = '\386'
+toSimpleUpperCase '\389' = '\388'
+toSimpleUpperCase '\392' = '\391'
+toSimpleUpperCase '\396' = '\395'
+toSimpleUpperCase '\402' = '\401'
+toSimpleUpperCase '\405' = '\502'
+toSimpleUpperCase '\409' = '\408'
+toSimpleUpperCase '\410' = '\573'
+toSimpleUpperCase '\414' = '\544'
+toSimpleUpperCase '\417' = '\416'
+toSimpleUpperCase '\419' = '\418'
+toSimpleUpperCase '\421' = '\420'
+toSimpleUpperCase '\424' = '\423'
+toSimpleUpperCase '\429' = '\428'
+toSimpleUpperCase '\432' = '\431'
+toSimpleUpperCase '\436' = '\435'
+toSimpleUpperCase '\438' = '\437'
+toSimpleUpperCase '\441' = '\440'
+toSimpleUpperCase '\445' = '\444'
+toSimpleUpperCase '\447' = '\503'
+toSimpleUpperCase '\453' = '\452'
+toSimpleUpperCase '\454' = '\452'
+toSimpleUpperCase '\456' = '\455'
+toSimpleUpperCase '\457' = '\455'
+toSimpleUpperCase '\459' = '\458'
+toSimpleUpperCase '\460' = '\458'
+toSimpleUpperCase '\462' = '\461'
+toSimpleUpperCase '\464' = '\463'
+toSimpleUpperCase '\466' = '\465'
+toSimpleUpperCase '\468' = '\467'
+toSimpleUpperCase '\470' = '\469'
+toSimpleUpperCase '\472' = '\471'
+toSimpleUpperCase '\474' = '\473'
+toSimpleUpperCase '\476' = '\475'
+toSimpleUpperCase '\477' = '\398'
+toSimpleUpperCase '\479' = '\478'
+toSimpleUpperCase '\481' = '\480'
+toSimpleUpperCase '\483' = '\482'
+toSimpleUpperCase '\485' = '\484'
+toSimpleUpperCase '\487' = '\486'
+toSimpleUpperCase '\489' = '\488'
+toSimpleUpperCase '\491' = '\490'
+toSimpleUpperCase '\493' = '\492'
+toSimpleUpperCase '\495' = '\494'
+toSimpleUpperCase '\498' = '\497'
+toSimpleUpperCase '\499' = '\497'
+toSimpleUpperCase '\501' = '\500'
+toSimpleUpperCase '\505' = '\504'
+toSimpleUpperCase '\507' = '\506'
+toSimpleUpperCase '\509' = '\508'
+toSimpleUpperCase '\511' = '\510'
+toSimpleUpperCase '\513' = '\512'
+toSimpleUpperCase '\515' = '\514'
+toSimpleUpperCase '\517' = '\516'
+toSimpleUpperCase '\519' = '\518'
+toSimpleUpperCase '\521' = '\520'
+toSimpleUpperCase '\523' = '\522'
+toSimpleUpperCase '\525' = '\524'
+toSimpleUpperCase '\527' = '\526'
+toSimpleUpperCase '\529' = '\528'
+toSimpleUpperCase '\531' = '\530'
+toSimpleUpperCase '\533' = '\532'
+toSimpleUpperCase '\535' = '\534'
+toSimpleUpperCase '\537' = '\536'
+toSimpleUpperCase '\539' = '\538'
+toSimpleUpperCase '\541' = '\540'
+toSimpleUpperCase '\543' = '\542'
+toSimpleUpperCase '\547' = '\546'
+toSimpleUpperCase '\549' = '\548'
+toSimpleUpperCase '\551' = '\550'
+toSimpleUpperCase '\553' = '\552'
+toSimpleUpperCase '\555' = '\554'
+toSimpleUpperCase '\557' = '\556'
+toSimpleUpperCase '\559' = '\558'
+toSimpleUpperCase '\561' = '\560'
+toSimpleUpperCase '\563' = '\562'
+toSimpleUpperCase '\572' = '\571'
+toSimpleUpperCase '\575' = '\11390'
+toSimpleUpperCase '\576' = '\11391'
+toSimpleUpperCase '\578' = '\577'
+toSimpleUpperCase '\583' = '\582'
+toSimpleUpperCase '\585' = '\584'
+toSimpleUpperCase '\587' = '\586'
+toSimpleUpperCase '\589' = '\588'
+toSimpleUpperCase '\591' = '\590'
+toSimpleUpperCase '\592' = '\11375'
+toSimpleUpperCase '\593' = '\11373'
+toSimpleUpperCase '\594' = '\11376'
+toSimpleUpperCase '\595' = '\385'
+toSimpleUpperCase '\596' = '\390'
+toSimpleUpperCase '\598' = '\393'
+toSimpleUpperCase '\599' = '\394'
+toSimpleUpperCase '\601' = '\399'
+toSimpleUpperCase '\603' = '\400'
+toSimpleUpperCase '\604' = '\42923'
+toSimpleUpperCase '\608' = '\403'
+toSimpleUpperCase '\609' = '\42924'
+toSimpleUpperCase '\611' = '\404'
+toSimpleUpperCase '\613' = '\42893'
+toSimpleUpperCase '\614' = '\42922'
+toSimpleUpperCase '\616' = '\407'
+toSimpleUpperCase '\617' = '\406'
+toSimpleUpperCase '\618' = '\42926'
+toSimpleUpperCase '\619' = '\11362'
+toSimpleUpperCase '\620' = '\42925'
+toSimpleUpperCase '\623' = '\412'
+toSimpleUpperCase '\625' = '\11374'
+toSimpleUpperCase '\626' = '\413'
+toSimpleUpperCase '\629' = '\415'
+toSimpleUpperCase '\637' = '\11364'
+toSimpleUpperCase '\640' = '\422'
+toSimpleUpperCase '\642' = '\42949'
+toSimpleUpperCase '\643' = '\425'
+toSimpleUpperCase '\647' = '\42929'
+toSimpleUpperCase '\648' = '\430'
+toSimpleUpperCase '\649' = '\580'
+toSimpleUpperCase '\650' = '\433'
+toSimpleUpperCase '\651' = '\434'
+toSimpleUpperCase '\652' = '\581'
+toSimpleUpperCase '\658' = '\439'
+toSimpleUpperCase '\669' = '\42930'
+toSimpleUpperCase '\670' = '\42928'
+toSimpleUpperCase '\837' = '\921'
+toSimpleUpperCase '\881' = '\880'
+toSimpleUpperCase '\883' = '\882'
+toSimpleUpperCase '\887' = '\886'
+toSimpleUpperCase '\891' = '\1021'
+toSimpleUpperCase '\892' = '\1022'
+toSimpleUpperCase '\893' = '\1023'
+toSimpleUpperCase '\940' = '\902'
+toSimpleUpperCase '\941' = '\904'
+toSimpleUpperCase '\942' = '\905'
+toSimpleUpperCase '\943' = '\906'
+toSimpleUpperCase '\945' = '\913'
+toSimpleUpperCase '\946' = '\914'
+toSimpleUpperCase '\947' = '\915'
+toSimpleUpperCase '\948' = '\916'
+toSimpleUpperCase '\949' = '\917'
+toSimpleUpperCase '\950' = '\918'
+toSimpleUpperCase '\951' = '\919'
+toSimpleUpperCase '\952' = '\920'
+toSimpleUpperCase '\953' = '\921'
+toSimpleUpperCase '\954' = '\922'
+toSimpleUpperCase '\955' = '\923'
+toSimpleUpperCase '\956' = '\924'
+toSimpleUpperCase '\957' = '\925'
+toSimpleUpperCase '\958' = '\926'
+toSimpleUpperCase '\959' = '\927'
+toSimpleUpperCase '\960' = '\928'
+toSimpleUpperCase '\961' = '\929'
+toSimpleUpperCase '\962' = '\931'
+toSimpleUpperCase '\963' = '\931'
+toSimpleUpperCase '\964' = '\932'
+toSimpleUpperCase '\965' = '\933'
+toSimpleUpperCase '\966' = '\934'
+toSimpleUpperCase '\967' = '\935'
+toSimpleUpperCase '\968' = '\936'
+toSimpleUpperCase '\969' = '\937'
+toSimpleUpperCase '\970' = '\938'
+toSimpleUpperCase '\971' = '\939'
+toSimpleUpperCase '\972' = '\908'
+toSimpleUpperCase '\973' = '\910'
+toSimpleUpperCase '\974' = '\911'
+toSimpleUpperCase '\976' = '\914'
+toSimpleUpperCase '\977' = '\920'
+toSimpleUpperCase '\981' = '\934'
+toSimpleUpperCase '\982' = '\928'
+toSimpleUpperCase '\983' = '\975'
+toSimpleUpperCase '\985' = '\984'
+toSimpleUpperCase '\987' = '\986'
+toSimpleUpperCase '\989' = '\988'
+toSimpleUpperCase '\991' = '\990'
+toSimpleUpperCase '\993' = '\992'
+toSimpleUpperCase '\995' = '\994'
+toSimpleUpperCase '\997' = '\996'
+toSimpleUpperCase '\999' = '\998'
+toSimpleUpperCase '\1001' = '\1000'
+toSimpleUpperCase '\1003' = '\1002'
+toSimpleUpperCase '\1005' = '\1004'
+toSimpleUpperCase '\1007' = '\1006'
+toSimpleUpperCase '\1008' = '\922'
+toSimpleUpperCase '\1009' = '\929'
+toSimpleUpperCase '\1010' = '\1017'
+toSimpleUpperCase '\1011' = '\895'
+toSimpleUpperCase '\1013' = '\917'
+toSimpleUpperCase '\1016' = '\1015'
+toSimpleUpperCase '\1019' = '\1018'
+toSimpleUpperCase '\1072' = '\1040'
+toSimpleUpperCase '\1073' = '\1041'
+toSimpleUpperCase '\1074' = '\1042'
+toSimpleUpperCase '\1075' = '\1043'
+toSimpleUpperCase '\1076' = '\1044'
+toSimpleUpperCase '\1077' = '\1045'
+toSimpleUpperCase '\1078' = '\1046'
+toSimpleUpperCase '\1079' = '\1047'
+toSimpleUpperCase '\1080' = '\1048'
+toSimpleUpperCase '\1081' = '\1049'
+toSimpleUpperCase '\1082' = '\1050'
+toSimpleUpperCase '\1083' = '\1051'
+toSimpleUpperCase '\1084' = '\1052'
+toSimpleUpperCase '\1085' = '\1053'
+toSimpleUpperCase '\1086' = '\1054'
+toSimpleUpperCase '\1087' = '\1055'
+toSimpleUpperCase '\1088' = '\1056'
+toSimpleUpperCase '\1089' = '\1057'
+toSimpleUpperCase '\1090' = '\1058'
+toSimpleUpperCase '\1091' = '\1059'
+toSimpleUpperCase '\1092' = '\1060'
+toSimpleUpperCase '\1093' = '\1061'
+toSimpleUpperCase '\1094' = '\1062'
+toSimpleUpperCase '\1095' = '\1063'
+toSimpleUpperCase '\1096' = '\1064'
+toSimpleUpperCase '\1097' = '\1065'
+toSimpleUpperCase '\1098' = '\1066'
+toSimpleUpperCase '\1099' = '\1067'
+toSimpleUpperCase '\1100' = '\1068'
+toSimpleUpperCase '\1101' = '\1069'
+toSimpleUpperCase '\1102' = '\1070'
+toSimpleUpperCase '\1103' = '\1071'
+toSimpleUpperCase '\1104' = '\1024'
+toSimpleUpperCase '\1105' = '\1025'
+toSimpleUpperCase '\1106' = '\1026'
+toSimpleUpperCase '\1107' = '\1027'
+toSimpleUpperCase '\1108' = '\1028'
+toSimpleUpperCase '\1109' = '\1029'
+toSimpleUpperCase '\1110' = '\1030'
+toSimpleUpperCase '\1111' = '\1031'
+toSimpleUpperCase '\1112' = '\1032'
+toSimpleUpperCase '\1113' = '\1033'
+toSimpleUpperCase '\1114' = '\1034'
+toSimpleUpperCase '\1115' = '\1035'
+toSimpleUpperCase '\1116' = '\1036'
+toSimpleUpperCase '\1117' = '\1037'
+toSimpleUpperCase '\1118' = '\1038'
+toSimpleUpperCase '\1119' = '\1039'
+toSimpleUpperCase '\1121' = '\1120'
+toSimpleUpperCase '\1123' = '\1122'
+toSimpleUpperCase '\1125' = '\1124'
+toSimpleUpperCase '\1127' = '\1126'
+toSimpleUpperCase '\1129' = '\1128'
+toSimpleUpperCase '\1131' = '\1130'
+toSimpleUpperCase '\1133' = '\1132'
+toSimpleUpperCase '\1135' = '\1134'
+toSimpleUpperCase '\1137' = '\1136'
+toSimpleUpperCase '\1139' = '\1138'
+toSimpleUpperCase '\1141' = '\1140'
+toSimpleUpperCase '\1143' = '\1142'
+toSimpleUpperCase '\1145' = '\1144'
+toSimpleUpperCase '\1147' = '\1146'
+toSimpleUpperCase '\1149' = '\1148'
+toSimpleUpperCase '\1151' = '\1150'
+toSimpleUpperCase '\1153' = '\1152'
+toSimpleUpperCase '\1163' = '\1162'
+toSimpleUpperCase '\1165' = '\1164'
+toSimpleUpperCase '\1167' = '\1166'
+toSimpleUpperCase '\1169' = '\1168'
+toSimpleUpperCase '\1171' = '\1170'
+toSimpleUpperCase '\1173' = '\1172'
+toSimpleUpperCase '\1175' = '\1174'
+toSimpleUpperCase '\1177' = '\1176'
+toSimpleUpperCase '\1179' = '\1178'
+toSimpleUpperCase '\1181' = '\1180'
+toSimpleUpperCase '\1183' = '\1182'
+toSimpleUpperCase '\1185' = '\1184'
+toSimpleUpperCase '\1187' = '\1186'
+toSimpleUpperCase '\1189' = '\1188'
+toSimpleUpperCase '\1191' = '\1190'
+toSimpleUpperCase '\1193' = '\1192'
+toSimpleUpperCase '\1195' = '\1194'
+toSimpleUpperCase '\1197' = '\1196'
+toSimpleUpperCase '\1199' = '\1198'
+toSimpleUpperCase '\1201' = '\1200'
+toSimpleUpperCase '\1203' = '\1202'
+toSimpleUpperCase '\1205' = '\1204'
+toSimpleUpperCase '\1207' = '\1206'
+toSimpleUpperCase '\1209' = '\1208'
+toSimpleUpperCase '\1211' = '\1210'
+toSimpleUpperCase '\1213' = '\1212'
+toSimpleUpperCase '\1215' = '\1214'
+toSimpleUpperCase '\1218' = '\1217'
+toSimpleUpperCase '\1220' = '\1219'
+toSimpleUpperCase '\1222' = '\1221'
+toSimpleUpperCase '\1224' = '\1223'
+toSimpleUpperCase '\1226' = '\1225'
+toSimpleUpperCase '\1228' = '\1227'
+toSimpleUpperCase '\1230' = '\1229'
+toSimpleUpperCase '\1231' = '\1216'
+toSimpleUpperCase '\1233' = '\1232'
+toSimpleUpperCase '\1235' = '\1234'
+toSimpleUpperCase '\1237' = '\1236'
+toSimpleUpperCase '\1239' = '\1238'
+toSimpleUpperCase '\1241' = '\1240'
+toSimpleUpperCase '\1243' = '\1242'
+toSimpleUpperCase '\1245' = '\1244'
+toSimpleUpperCase '\1247' = '\1246'
+toSimpleUpperCase '\1249' = '\1248'
+toSimpleUpperCase '\1251' = '\1250'
+toSimpleUpperCase '\1253' = '\1252'
+toSimpleUpperCase '\1255' = '\1254'
+toSimpleUpperCase '\1257' = '\1256'
+toSimpleUpperCase '\1259' = '\1258'
+toSimpleUpperCase '\1261' = '\1260'
+toSimpleUpperCase '\1263' = '\1262'
+toSimpleUpperCase '\1265' = '\1264'
+toSimpleUpperCase '\1267' = '\1266'
+toSimpleUpperCase '\1269' = '\1268'
+toSimpleUpperCase '\1271' = '\1270'
+toSimpleUpperCase '\1273' = '\1272'
+toSimpleUpperCase '\1275' = '\1274'
+toSimpleUpperCase '\1277' = '\1276'
+toSimpleUpperCase '\1279' = '\1278'
+toSimpleUpperCase '\1281' = '\1280'
+toSimpleUpperCase '\1283' = '\1282'
+toSimpleUpperCase '\1285' = '\1284'
+toSimpleUpperCase '\1287' = '\1286'
+toSimpleUpperCase '\1289' = '\1288'
+toSimpleUpperCase '\1291' = '\1290'
+toSimpleUpperCase '\1293' = '\1292'
+toSimpleUpperCase '\1295' = '\1294'
+toSimpleUpperCase '\1297' = '\1296'
+toSimpleUpperCase '\1299' = '\1298'
+toSimpleUpperCase '\1301' = '\1300'
+toSimpleUpperCase '\1303' = '\1302'
+toSimpleUpperCase '\1305' = '\1304'
+toSimpleUpperCase '\1307' = '\1306'
+toSimpleUpperCase '\1309' = '\1308'
+toSimpleUpperCase '\1311' = '\1310'
+toSimpleUpperCase '\1313' = '\1312'
+toSimpleUpperCase '\1315' = '\1314'
+toSimpleUpperCase '\1317' = '\1316'
+toSimpleUpperCase '\1319' = '\1318'
+toSimpleUpperCase '\1321' = '\1320'
+toSimpleUpperCase '\1323' = '\1322'
+toSimpleUpperCase '\1325' = '\1324'
+toSimpleUpperCase '\1327' = '\1326'
+toSimpleUpperCase '\1377' = '\1329'
+toSimpleUpperCase '\1378' = '\1330'
+toSimpleUpperCase '\1379' = '\1331'
+toSimpleUpperCase '\1380' = '\1332'
+toSimpleUpperCase '\1381' = '\1333'
+toSimpleUpperCase '\1382' = '\1334'
+toSimpleUpperCase '\1383' = '\1335'
+toSimpleUpperCase '\1384' = '\1336'
+toSimpleUpperCase '\1385' = '\1337'
+toSimpleUpperCase '\1386' = '\1338'
+toSimpleUpperCase '\1387' = '\1339'
+toSimpleUpperCase '\1388' = '\1340'
+toSimpleUpperCase '\1389' = '\1341'
+toSimpleUpperCase '\1390' = '\1342'
+toSimpleUpperCase '\1391' = '\1343'
+toSimpleUpperCase '\1392' = '\1344'
+toSimpleUpperCase '\1393' = '\1345'
+toSimpleUpperCase '\1394' = '\1346'
+toSimpleUpperCase '\1395' = '\1347'
+toSimpleUpperCase '\1396' = '\1348'
+toSimpleUpperCase '\1397' = '\1349'
+toSimpleUpperCase '\1398' = '\1350'
+toSimpleUpperCase '\1399' = '\1351'
+toSimpleUpperCase '\1400' = '\1352'
+toSimpleUpperCase '\1401' = '\1353'
+toSimpleUpperCase '\1402' = '\1354'
+toSimpleUpperCase '\1403' = '\1355'
+toSimpleUpperCase '\1404' = '\1356'
+toSimpleUpperCase '\1405' = '\1357'
+toSimpleUpperCase '\1406' = '\1358'
+toSimpleUpperCase '\1407' = '\1359'
+toSimpleUpperCase '\1408' = '\1360'
+toSimpleUpperCase '\1409' = '\1361'
+toSimpleUpperCase '\1410' = '\1362'
+toSimpleUpperCase '\1411' = '\1363'
+toSimpleUpperCase '\1412' = '\1364'
+toSimpleUpperCase '\1413' = '\1365'
+toSimpleUpperCase '\1414' = '\1366'
+toSimpleUpperCase '\4304' = '\7312'
+toSimpleUpperCase '\4305' = '\7313'
+toSimpleUpperCase '\4306' = '\7314'
+toSimpleUpperCase '\4307' = '\7315'
+toSimpleUpperCase '\4308' = '\7316'
+toSimpleUpperCase '\4309' = '\7317'
+toSimpleUpperCase '\4310' = '\7318'
+toSimpleUpperCase '\4311' = '\7319'
+toSimpleUpperCase '\4312' = '\7320'
+toSimpleUpperCase '\4313' = '\7321'
+toSimpleUpperCase '\4314' = '\7322'
+toSimpleUpperCase '\4315' = '\7323'
+toSimpleUpperCase '\4316' = '\7324'
+toSimpleUpperCase '\4317' = '\7325'
+toSimpleUpperCase '\4318' = '\7326'
+toSimpleUpperCase '\4319' = '\7327'
+toSimpleUpperCase '\4320' = '\7328'
+toSimpleUpperCase '\4321' = '\7329'
+toSimpleUpperCase '\4322' = '\7330'
+toSimpleUpperCase '\4323' = '\7331'
+toSimpleUpperCase '\4324' = '\7332'
+toSimpleUpperCase '\4325' = '\7333'
+toSimpleUpperCase '\4326' = '\7334'
+toSimpleUpperCase '\4327' = '\7335'
+toSimpleUpperCase '\4328' = '\7336'
+toSimpleUpperCase '\4329' = '\7337'
+toSimpleUpperCase '\4330' = '\7338'
+toSimpleUpperCase '\4331' = '\7339'
+toSimpleUpperCase '\4332' = '\7340'
+toSimpleUpperCase '\4333' = '\7341'
+toSimpleUpperCase '\4334' = '\7342'
+toSimpleUpperCase '\4335' = '\7343'
+toSimpleUpperCase '\4336' = '\7344'
+toSimpleUpperCase '\4337' = '\7345'
+toSimpleUpperCase '\4338' = '\7346'
+toSimpleUpperCase '\4339' = '\7347'
+toSimpleUpperCase '\4340' = '\7348'
+toSimpleUpperCase '\4341' = '\7349'
+toSimpleUpperCase '\4342' = '\7350'
+toSimpleUpperCase '\4343' = '\7351'
+toSimpleUpperCase '\4344' = '\7352'
+toSimpleUpperCase '\4345' = '\7353'
+toSimpleUpperCase '\4346' = '\7354'
+toSimpleUpperCase '\4349' = '\7357'
+toSimpleUpperCase '\4350' = '\7358'
+toSimpleUpperCase '\4351' = '\7359'
+toSimpleUpperCase '\5112' = '\5104'
+toSimpleUpperCase '\5113' = '\5105'
+toSimpleUpperCase '\5114' = '\5106'
+toSimpleUpperCase '\5115' = '\5107'
+toSimpleUpperCase '\5116' = '\5108'
+toSimpleUpperCase '\5117' = '\5109'
+toSimpleUpperCase '\7296' = '\1042'
+toSimpleUpperCase '\7297' = '\1044'
+toSimpleUpperCase '\7298' = '\1054'
+toSimpleUpperCase '\7299' = '\1057'
+toSimpleUpperCase '\7300' = '\1058'
+toSimpleUpperCase '\7301' = '\1058'
+toSimpleUpperCase '\7302' = '\1066'
+toSimpleUpperCase '\7303' = '\1122'
+toSimpleUpperCase '\7304' = '\42570'
+toSimpleUpperCase '\7545' = '\42877'
+toSimpleUpperCase '\7549' = '\11363'
+toSimpleUpperCase '\7566' = '\42950'
+toSimpleUpperCase '\7681' = '\7680'
+toSimpleUpperCase '\7683' = '\7682'
+toSimpleUpperCase '\7685' = '\7684'
+toSimpleUpperCase '\7687' = '\7686'
+toSimpleUpperCase '\7689' = '\7688'
+toSimpleUpperCase '\7691' = '\7690'
+toSimpleUpperCase '\7693' = '\7692'
+toSimpleUpperCase '\7695' = '\7694'
+toSimpleUpperCase '\7697' = '\7696'
+toSimpleUpperCase '\7699' = '\7698'
+toSimpleUpperCase '\7701' = '\7700'
+toSimpleUpperCase '\7703' = '\7702'
+toSimpleUpperCase '\7705' = '\7704'
+toSimpleUpperCase '\7707' = '\7706'
+toSimpleUpperCase '\7709' = '\7708'
+toSimpleUpperCase '\7711' = '\7710'
+toSimpleUpperCase '\7713' = '\7712'
+toSimpleUpperCase '\7715' = '\7714'
+toSimpleUpperCase '\7717' = '\7716'
+toSimpleUpperCase '\7719' = '\7718'
+toSimpleUpperCase '\7721' = '\7720'
+toSimpleUpperCase '\7723' = '\7722'
+toSimpleUpperCase '\7725' = '\7724'
+toSimpleUpperCase '\7727' = '\7726'
+toSimpleUpperCase '\7729' = '\7728'
+toSimpleUpperCase '\7731' = '\7730'
+toSimpleUpperCase '\7733' = '\7732'
+toSimpleUpperCase '\7735' = '\7734'
+toSimpleUpperCase '\7737' = '\7736'
+toSimpleUpperCase '\7739' = '\7738'
+toSimpleUpperCase '\7741' = '\7740'
+toSimpleUpperCase '\7743' = '\7742'
+toSimpleUpperCase '\7745' = '\7744'
+toSimpleUpperCase '\7747' = '\7746'
+toSimpleUpperCase '\7749' = '\7748'
+toSimpleUpperCase '\7751' = '\7750'
+toSimpleUpperCase '\7753' = '\7752'
+toSimpleUpperCase '\7755' = '\7754'
+toSimpleUpperCase '\7757' = '\7756'
+toSimpleUpperCase '\7759' = '\7758'
+toSimpleUpperCase '\7761' = '\7760'
+toSimpleUpperCase '\7763' = '\7762'
+toSimpleUpperCase '\7765' = '\7764'
+toSimpleUpperCase '\7767' = '\7766'
+toSimpleUpperCase '\7769' = '\7768'
+toSimpleUpperCase '\7771' = '\7770'
+toSimpleUpperCase '\7773' = '\7772'
+toSimpleUpperCase '\7775' = '\7774'
+toSimpleUpperCase '\7777' = '\7776'
+toSimpleUpperCase '\7779' = '\7778'
+toSimpleUpperCase '\7781' = '\7780'
+toSimpleUpperCase '\7783' = '\7782'
+toSimpleUpperCase '\7785' = '\7784'
+toSimpleUpperCase '\7787' = '\7786'
+toSimpleUpperCase '\7789' = '\7788'
+toSimpleUpperCase '\7791' = '\7790'
+toSimpleUpperCase '\7793' = '\7792'
+toSimpleUpperCase '\7795' = '\7794'
+toSimpleUpperCase '\7797' = '\7796'
+toSimpleUpperCase '\7799' = '\7798'
+toSimpleUpperCase '\7801' = '\7800'
+toSimpleUpperCase '\7803' = '\7802'
+toSimpleUpperCase '\7805' = '\7804'
+toSimpleUpperCase '\7807' = '\7806'
+toSimpleUpperCase '\7809' = '\7808'
+toSimpleUpperCase '\7811' = '\7810'
+toSimpleUpperCase '\7813' = '\7812'
+toSimpleUpperCase '\7815' = '\7814'
+toSimpleUpperCase '\7817' = '\7816'
+toSimpleUpperCase '\7819' = '\7818'
+toSimpleUpperCase '\7821' = '\7820'
+toSimpleUpperCase '\7823' = '\7822'
+toSimpleUpperCase '\7825' = '\7824'
+toSimpleUpperCase '\7827' = '\7826'
+toSimpleUpperCase '\7829' = '\7828'
+toSimpleUpperCase '\7835' = '\7776'
+toSimpleUpperCase '\7841' = '\7840'
+toSimpleUpperCase '\7843' = '\7842'
+toSimpleUpperCase '\7845' = '\7844'
+toSimpleUpperCase '\7847' = '\7846'
+toSimpleUpperCase '\7849' = '\7848'
+toSimpleUpperCase '\7851' = '\7850'
+toSimpleUpperCase '\7853' = '\7852'
+toSimpleUpperCase '\7855' = '\7854'
+toSimpleUpperCase '\7857' = '\7856'
+toSimpleUpperCase '\7859' = '\7858'
+toSimpleUpperCase '\7861' = '\7860'
+toSimpleUpperCase '\7863' = '\7862'
+toSimpleUpperCase '\7865' = '\7864'
+toSimpleUpperCase '\7867' = '\7866'
+toSimpleUpperCase '\7869' = '\7868'
+toSimpleUpperCase '\7871' = '\7870'
+toSimpleUpperCase '\7873' = '\7872'
+toSimpleUpperCase '\7875' = '\7874'
+toSimpleUpperCase '\7877' = '\7876'
+toSimpleUpperCase '\7879' = '\7878'
+toSimpleUpperCase '\7881' = '\7880'
+toSimpleUpperCase '\7883' = '\7882'
+toSimpleUpperCase '\7885' = '\7884'
+toSimpleUpperCase '\7887' = '\7886'
+toSimpleUpperCase '\7889' = '\7888'
+toSimpleUpperCase '\7891' = '\7890'
+toSimpleUpperCase '\7893' = '\7892'
+toSimpleUpperCase '\7895' = '\7894'
+toSimpleUpperCase '\7897' = '\7896'
+toSimpleUpperCase '\7899' = '\7898'
+toSimpleUpperCase '\7901' = '\7900'
+toSimpleUpperCase '\7903' = '\7902'
+toSimpleUpperCase '\7905' = '\7904'
+toSimpleUpperCase '\7907' = '\7906'
+toSimpleUpperCase '\7909' = '\7908'
+toSimpleUpperCase '\7911' = '\7910'
+toSimpleUpperCase '\7913' = '\7912'
+toSimpleUpperCase '\7915' = '\7914'
+toSimpleUpperCase '\7917' = '\7916'
+toSimpleUpperCase '\7919' = '\7918'
+toSimpleUpperCase '\7921' = '\7920'
+toSimpleUpperCase '\7923' = '\7922'
+toSimpleUpperCase '\7925' = '\7924'
+toSimpleUpperCase '\7927' = '\7926'
+toSimpleUpperCase '\7929' = '\7928'
+toSimpleUpperCase '\7931' = '\7930'
+toSimpleUpperCase '\7933' = '\7932'
+toSimpleUpperCase '\7935' = '\7934'
+toSimpleUpperCase '\7936' = '\7944'
+toSimpleUpperCase '\7937' = '\7945'
+toSimpleUpperCase '\7938' = '\7946'
+toSimpleUpperCase '\7939' = '\7947'
+toSimpleUpperCase '\7940' = '\7948'
+toSimpleUpperCase '\7941' = '\7949'
+toSimpleUpperCase '\7942' = '\7950'
+toSimpleUpperCase '\7943' = '\7951'
+toSimpleUpperCase '\7952' = '\7960'
+toSimpleUpperCase '\7953' = '\7961'
+toSimpleUpperCase '\7954' = '\7962'
+toSimpleUpperCase '\7955' = '\7963'
+toSimpleUpperCase '\7956' = '\7964'
+toSimpleUpperCase '\7957' = '\7965'
+toSimpleUpperCase '\7968' = '\7976'
+toSimpleUpperCase '\7969' = '\7977'
+toSimpleUpperCase '\7970' = '\7978'
+toSimpleUpperCase '\7971' = '\7979'
+toSimpleUpperCase '\7972' = '\7980'
+toSimpleUpperCase '\7973' = '\7981'
+toSimpleUpperCase '\7974' = '\7982'
+toSimpleUpperCase '\7975' = '\7983'
+toSimpleUpperCase '\7984' = '\7992'
+toSimpleUpperCase '\7985' = '\7993'
+toSimpleUpperCase '\7986' = '\7994'
+toSimpleUpperCase '\7987' = '\7995'
+toSimpleUpperCase '\7988' = '\7996'
+toSimpleUpperCase '\7989' = '\7997'
+toSimpleUpperCase '\7990' = '\7998'
+toSimpleUpperCase '\7991' = '\7999'
+toSimpleUpperCase '\8000' = '\8008'
+toSimpleUpperCase '\8001' = '\8009'
+toSimpleUpperCase '\8002' = '\8010'
+toSimpleUpperCase '\8003' = '\8011'
+toSimpleUpperCase '\8004' = '\8012'
+toSimpleUpperCase '\8005' = '\8013'
+toSimpleUpperCase '\8017' = '\8025'
+toSimpleUpperCase '\8019' = '\8027'
+toSimpleUpperCase '\8021' = '\8029'
+toSimpleUpperCase '\8023' = '\8031'
+toSimpleUpperCase '\8032' = '\8040'
+toSimpleUpperCase '\8033' = '\8041'
+toSimpleUpperCase '\8034' = '\8042'
+toSimpleUpperCase '\8035' = '\8043'
+toSimpleUpperCase '\8036' = '\8044'
+toSimpleUpperCase '\8037' = '\8045'
+toSimpleUpperCase '\8038' = '\8046'
+toSimpleUpperCase '\8039' = '\8047'
+toSimpleUpperCase '\8048' = '\8122'
+toSimpleUpperCase '\8049' = '\8123'
+toSimpleUpperCase '\8050' = '\8136'
+toSimpleUpperCase '\8051' = '\8137'
+toSimpleUpperCase '\8052' = '\8138'
+toSimpleUpperCase '\8053' = '\8139'
+toSimpleUpperCase '\8054' = '\8154'
+toSimpleUpperCase '\8055' = '\8155'
+toSimpleUpperCase '\8056' = '\8184'
+toSimpleUpperCase '\8057' = '\8185'
+toSimpleUpperCase '\8058' = '\8170'
+toSimpleUpperCase '\8059' = '\8171'
+toSimpleUpperCase '\8060' = '\8186'
+toSimpleUpperCase '\8061' = '\8187'
+toSimpleUpperCase '\8064' = '\8072'
+toSimpleUpperCase '\8065' = '\8073'
+toSimpleUpperCase '\8066' = '\8074'
+toSimpleUpperCase '\8067' = '\8075'
+toSimpleUpperCase '\8068' = '\8076'
+toSimpleUpperCase '\8069' = '\8077'
+toSimpleUpperCase '\8070' = '\8078'
+toSimpleUpperCase '\8071' = '\8079'
+toSimpleUpperCase '\8080' = '\8088'
+toSimpleUpperCase '\8081' = '\8089'
+toSimpleUpperCase '\8082' = '\8090'
+toSimpleUpperCase '\8083' = '\8091'
+toSimpleUpperCase '\8084' = '\8092'
+toSimpleUpperCase '\8085' = '\8093'
+toSimpleUpperCase '\8086' = '\8094'
+toSimpleUpperCase '\8087' = '\8095'
+toSimpleUpperCase '\8096' = '\8104'
+toSimpleUpperCase '\8097' = '\8105'
+toSimpleUpperCase '\8098' = '\8106'
+toSimpleUpperCase '\8099' = '\8107'
+toSimpleUpperCase '\8100' = '\8108'
+toSimpleUpperCase '\8101' = '\8109'
+toSimpleUpperCase '\8102' = '\8110'
+toSimpleUpperCase '\8103' = '\8111'
+toSimpleUpperCase '\8112' = '\8120'
+toSimpleUpperCase '\8113' = '\8121'
+toSimpleUpperCase '\8115' = '\8124'
+toSimpleUpperCase '\8126' = '\921'
+toSimpleUpperCase '\8131' = '\8140'
+toSimpleUpperCase '\8144' = '\8152'
+toSimpleUpperCase '\8145' = '\8153'
+toSimpleUpperCase '\8160' = '\8168'
+toSimpleUpperCase '\8161' = '\8169'
+toSimpleUpperCase '\8165' = '\8172'
+toSimpleUpperCase '\8179' = '\8188'
+toSimpleUpperCase '\8526' = '\8498'
+toSimpleUpperCase '\8560' = '\8544'
+toSimpleUpperCase '\8561' = '\8545'
+toSimpleUpperCase '\8562' = '\8546'
+toSimpleUpperCase '\8563' = '\8547'
+toSimpleUpperCase '\8564' = '\8548'
+toSimpleUpperCase '\8565' = '\8549'
+toSimpleUpperCase '\8566' = '\8550'
+toSimpleUpperCase '\8567' = '\8551'
+toSimpleUpperCase '\8568' = '\8552'
+toSimpleUpperCase '\8569' = '\8553'
+toSimpleUpperCase '\8570' = '\8554'
+toSimpleUpperCase '\8571' = '\8555'
+toSimpleUpperCase '\8572' = '\8556'
+toSimpleUpperCase '\8573' = '\8557'
+toSimpleUpperCase '\8574' = '\8558'
+toSimpleUpperCase '\8575' = '\8559'
+toSimpleUpperCase '\8580' = '\8579'
+toSimpleUpperCase '\9424' = '\9398'
+toSimpleUpperCase '\9425' = '\9399'
+toSimpleUpperCase '\9426' = '\9400'
+toSimpleUpperCase '\9427' = '\9401'
+toSimpleUpperCase '\9428' = '\9402'
+toSimpleUpperCase '\9429' = '\9403'
+toSimpleUpperCase '\9430' = '\9404'
+toSimpleUpperCase '\9431' = '\9405'
+toSimpleUpperCase '\9432' = '\9406'
+toSimpleUpperCase '\9433' = '\9407'
+toSimpleUpperCase '\9434' = '\9408'
+toSimpleUpperCase '\9435' = '\9409'
+toSimpleUpperCase '\9436' = '\9410'
+toSimpleUpperCase '\9437' = '\9411'
+toSimpleUpperCase '\9438' = '\9412'
+toSimpleUpperCase '\9439' = '\9413'
+toSimpleUpperCase '\9440' = '\9414'
+toSimpleUpperCase '\9441' = '\9415'
+toSimpleUpperCase '\9442' = '\9416'
+toSimpleUpperCase '\9443' = '\9417'
+toSimpleUpperCase '\9444' = '\9418'
+toSimpleUpperCase '\9445' = '\9419'
+toSimpleUpperCase '\9446' = '\9420'
+toSimpleUpperCase '\9447' = '\9421'
+toSimpleUpperCase '\9448' = '\9422'
+toSimpleUpperCase '\9449' = '\9423'
+toSimpleUpperCase '\11312' = '\11264'
+toSimpleUpperCase '\11313' = '\11265'
+toSimpleUpperCase '\11314' = '\11266'
+toSimpleUpperCase '\11315' = '\11267'
+toSimpleUpperCase '\11316' = '\11268'
+toSimpleUpperCase '\11317' = '\11269'
+toSimpleUpperCase '\11318' = '\11270'
+toSimpleUpperCase '\11319' = '\11271'
+toSimpleUpperCase '\11320' = '\11272'
+toSimpleUpperCase '\11321' = '\11273'
+toSimpleUpperCase '\11322' = '\11274'
+toSimpleUpperCase '\11323' = '\11275'
+toSimpleUpperCase '\11324' = '\11276'
+toSimpleUpperCase '\11325' = '\11277'
+toSimpleUpperCase '\11326' = '\11278'
+toSimpleUpperCase '\11327' = '\11279'
+toSimpleUpperCase '\11328' = '\11280'
+toSimpleUpperCase '\11329' = '\11281'
+toSimpleUpperCase '\11330' = '\11282'
+toSimpleUpperCase '\11331' = '\11283'
+toSimpleUpperCase '\11332' = '\11284'
+toSimpleUpperCase '\11333' = '\11285'
+toSimpleUpperCase '\11334' = '\11286'
+toSimpleUpperCase '\11335' = '\11287'
+toSimpleUpperCase '\11336' = '\11288'
+toSimpleUpperCase '\11337' = '\11289'
+toSimpleUpperCase '\11338' = '\11290'
+toSimpleUpperCase '\11339' = '\11291'
+toSimpleUpperCase '\11340' = '\11292'
+toSimpleUpperCase '\11341' = '\11293'
+toSimpleUpperCase '\11342' = '\11294'
+toSimpleUpperCase '\11343' = '\11295'
+toSimpleUpperCase '\11344' = '\11296'
+toSimpleUpperCase '\11345' = '\11297'
+toSimpleUpperCase '\11346' = '\11298'
+toSimpleUpperCase '\11347' = '\11299'
+toSimpleUpperCase '\11348' = '\11300'
+toSimpleUpperCase '\11349' = '\11301'
+toSimpleUpperCase '\11350' = '\11302'
+toSimpleUpperCase '\11351' = '\11303'
+toSimpleUpperCase '\11352' = '\11304'
+toSimpleUpperCase '\11353' = '\11305'
+toSimpleUpperCase '\11354' = '\11306'
+toSimpleUpperCase '\11355' = '\11307'
+toSimpleUpperCase '\11356' = '\11308'
+toSimpleUpperCase '\11357' = '\11309'
+toSimpleUpperCase '\11358' = '\11310'
+toSimpleUpperCase '\11359' = '\11311'
+toSimpleUpperCase '\11361' = '\11360'
+toSimpleUpperCase '\11365' = '\570'
+toSimpleUpperCase '\11366' = '\574'
+toSimpleUpperCase '\11368' = '\11367'
+toSimpleUpperCase '\11370' = '\11369'
+toSimpleUpperCase '\11372' = '\11371'
+toSimpleUpperCase '\11379' = '\11378'
+toSimpleUpperCase '\11382' = '\11381'
+toSimpleUpperCase '\11393' = '\11392'
+toSimpleUpperCase '\11395' = '\11394'
+toSimpleUpperCase '\11397' = '\11396'
+toSimpleUpperCase '\11399' = '\11398'
+toSimpleUpperCase '\11401' = '\11400'
+toSimpleUpperCase '\11403' = '\11402'
+toSimpleUpperCase '\11405' = '\11404'
+toSimpleUpperCase '\11407' = '\11406'
+toSimpleUpperCase '\11409' = '\11408'
+toSimpleUpperCase '\11411' = '\11410'
+toSimpleUpperCase '\11413' = '\11412'
+toSimpleUpperCase '\11415' = '\11414'
+toSimpleUpperCase '\11417' = '\11416'
+toSimpleUpperCase '\11419' = '\11418'
+toSimpleUpperCase '\11421' = '\11420'
+toSimpleUpperCase '\11423' = '\11422'
+toSimpleUpperCase '\11425' = '\11424'
+toSimpleUpperCase '\11427' = '\11426'
+toSimpleUpperCase '\11429' = '\11428'
+toSimpleUpperCase '\11431' = '\11430'
+toSimpleUpperCase '\11433' = '\11432'
+toSimpleUpperCase '\11435' = '\11434'
+toSimpleUpperCase '\11437' = '\11436'
+toSimpleUpperCase '\11439' = '\11438'
+toSimpleUpperCase '\11441' = '\11440'
+toSimpleUpperCase '\11443' = '\11442'
+toSimpleUpperCase '\11445' = '\11444'
+toSimpleUpperCase '\11447' = '\11446'
+toSimpleUpperCase '\11449' = '\11448'
+toSimpleUpperCase '\11451' = '\11450'
+toSimpleUpperCase '\11453' = '\11452'
+toSimpleUpperCase '\11455' = '\11454'
+toSimpleUpperCase '\11457' = '\11456'
+toSimpleUpperCase '\11459' = '\11458'
+toSimpleUpperCase '\11461' = '\11460'
+toSimpleUpperCase '\11463' = '\11462'
+toSimpleUpperCase '\11465' = '\11464'
+toSimpleUpperCase '\11467' = '\11466'
+toSimpleUpperCase '\11469' = '\11468'
+toSimpleUpperCase '\11471' = '\11470'
+toSimpleUpperCase '\11473' = '\11472'
+toSimpleUpperCase '\11475' = '\11474'
+toSimpleUpperCase '\11477' = '\11476'
+toSimpleUpperCase '\11479' = '\11478'
+toSimpleUpperCase '\11481' = '\11480'
+toSimpleUpperCase '\11483' = '\11482'
+toSimpleUpperCase '\11485' = '\11484'
+toSimpleUpperCase '\11487' = '\11486'
+toSimpleUpperCase '\11489' = '\11488'
+toSimpleUpperCase '\11491' = '\11490'
+toSimpleUpperCase '\11500' = '\11499'
+toSimpleUpperCase '\11502' = '\11501'
+toSimpleUpperCase '\11507' = '\11506'
+toSimpleUpperCase '\11520' = '\4256'
+toSimpleUpperCase '\11521' = '\4257'
+toSimpleUpperCase '\11522' = '\4258'
+toSimpleUpperCase '\11523' = '\4259'
+toSimpleUpperCase '\11524' = '\4260'
+toSimpleUpperCase '\11525' = '\4261'
+toSimpleUpperCase '\11526' = '\4262'
+toSimpleUpperCase '\11527' = '\4263'
+toSimpleUpperCase '\11528' = '\4264'
+toSimpleUpperCase '\11529' = '\4265'
+toSimpleUpperCase '\11530' = '\4266'
+toSimpleUpperCase '\11531' = '\4267'
+toSimpleUpperCase '\11532' = '\4268'
+toSimpleUpperCase '\11533' = '\4269'
+toSimpleUpperCase '\11534' = '\4270'
+toSimpleUpperCase '\11535' = '\4271'
+toSimpleUpperCase '\11536' = '\4272'
+toSimpleUpperCase '\11537' = '\4273'
+toSimpleUpperCase '\11538' = '\4274'
+toSimpleUpperCase '\11539' = '\4275'
+toSimpleUpperCase '\11540' = '\4276'
+toSimpleUpperCase '\11541' = '\4277'
+toSimpleUpperCase '\11542' = '\4278'
+toSimpleUpperCase '\11543' = '\4279'
+toSimpleUpperCase '\11544' = '\4280'
+toSimpleUpperCase '\11545' = '\4281'
+toSimpleUpperCase '\11546' = '\4282'
+toSimpleUpperCase '\11547' = '\4283'
+toSimpleUpperCase '\11548' = '\4284'
+toSimpleUpperCase '\11549' = '\4285'
+toSimpleUpperCase '\11550' = '\4286'
+toSimpleUpperCase '\11551' = '\4287'
+toSimpleUpperCase '\11552' = '\4288'
+toSimpleUpperCase '\11553' = '\4289'
+toSimpleUpperCase '\11554' = '\4290'
+toSimpleUpperCase '\11555' = '\4291'
+toSimpleUpperCase '\11556' = '\4292'
+toSimpleUpperCase '\11557' = '\4293'
+toSimpleUpperCase '\11559' = '\4295'
+toSimpleUpperCase '\11565' = '\4301'
+toSimpleUpperCase '\42561' = '\42560'
+toSimpleUpperCase '\42563' = '\42562'
+toSimpleUpperCase '\42565' = '\42564'
+toSimpleUpperCase '\42567' = '\42566'
+toSimpleUpperCase '\42569' = '\42568'
+toSimpleUpperCase '\42571' = '\42570'
+toSimpleUpperCase '\42573' = '\42572'
+toSimpleUpperCase '\42575' = '\42574'
+toSimpleUpperCase '\42577' = '\42576'
+toSimpleUpperCase '\42579' = '\42578'
+toSimpleUpperCase '\42581' = '\42580'
+toSimpleUpperCase '\42583' = '\42582'
+toSimpleUpperCase '\42585' = '\42584'
+toSimpleUpperCase '\42587' = '\42586'
+toSimpleUpperCase '\42589' = '\42588'
+toSimpleUpperCase '\42591' = '\42590'
+toSimpleUpperCase '\42593' = '\42592'
+toSimpleUpperCase '\42595' = '\42594'
+toSimpleUpperCase '\42597' = '\42596'
+toSimpleUpperCase '\42599' = '\42598'
+toSimpleUpperCase '\42601' = '\42600'
+toSimpleUpperCase '\42603' = '\42602'
+toSimpleUpperCase '\42605' = '\42604'
+toSimpleUpperCase '\42625' = '\42624'
+toSimpleUpperCase '\42627' = '\42626'
+toSimpleUpperCase '\42629' = '\42628'
+toSimpleUpperCase '\42631' = '\42630'
+toSimpleUpperCase '\42633' = '\42632'
+toSimpleUpperCase '\42635' = '\42634'
+toSimpleUpperCase '\42637' = '\42636'
+toSimpleUpperCase '\42639' = '\42638'
+toSimpleUpperCase '\42641' = '\42640'
+toSimpleUpperCase '\42643' = '\42642'
+toSimpleUpperCase '\42645' = '\42644'
+toSimpleUpperCase '\42647' = '\42646'
+toSimpleUpperCase '\42649' = '\42648'
+toSimpleUpperCase '\42651' = '\42650'
+toSimpleUpperCase '\42787' = '\42786'
+toSimpleUpperCase '\42789' = '\42788'
+toSimpleUpperCase '\42791' = '\42790'
+toSimpleUpperCase '\42793' = '\42792'
+toSimpleUpperCase '\42795' = '\42794'
+toSimpleUpperCase '\42797' = '\42796'
+toSimpleUpperCase '\42799' = '\42798'
+toSimpleUpperCase '\42803' = '\42802'
+toSimpleUpperCase '\42805' = '\42804'
+toSimpleUpperCase '\42807' = '\42806'
+toSimpleUpperCase '\42809' = '\42808'
+toSimpleUpperCase '\42811' = '\42810'
+toSimpleUpperCase '\42813' = '\42812'
+toSimpleUpperCase '\42815' = '\42814'
+toSimpleUpperCase '\42817' = '\42816'
+toSimpleUpperCase '\42819' = '\42818'
+toSimpleUpperCase '\42821' = '\42820'
+toSimpleUpperCase '\42823' = '\42822'
+toSimpleUpperCase '\42825' = '\42824'
+toSimpleUpperCase '\42827' = '\42826'
+toSimpleUpperCase '\42829' = '\42828'
+toSimpleUpperCase '\42831' = '\42830'
+toSimpleUpperCase '\42833' = '\42832'
+toSimpleUpperCase '\42835' = '\42834'
+toSimpleUpperCase '\42837' = '\42836'
+toSimpleUpperCase '\42839' = '\42838'
+toSimpleUpperCase '\42841' = '\42840'
+toSimpleUpperCase '\42843' = '\42842'
+toSimpleUpperCase '\42845' = '\42844'
+toSimpleUpperCase '\42847' = '\42846'
+toSimpleUpperCase '\42849' = '\42848'
+toSimpleUpperCase '\42851' = '\42850'
+toSimpleUpperCase '\42853' = '\42852'
+toSimpleUpperCase '\42855' = '\42854'
+toSimpleUpperCase '\42857' = '\42856'
+toSimpleUpperCase '\42859' = '\42858'
+toSimpleUpperCase '\42861' = '\42860'
+toSimpleUpperCase '\42863' = '\42862'
+toSimpleUpperCase '\42874' = '\42873'
+toSimpleUpperCase '\42876' = '\42875'
+toSimpleUpperCase '\42879' = '\42878'
+toSimpleUpperCase '\42881' = '\42880'
+toSimpleUpperCase '\42883' = '\42882'
+toSimpleUpperCase '\42885' = '\42884'
+toSimpleUpperCase '\42887' = '\42886'
+toSimpleUpperCase '\42892' = '\42891'
+toSimpleUpperCase '\42897' = '\42896'
+toSimpleUpperCase '\42899' = '\42898'
+toSimpleUpperCase '\42900' = '\42948'
+toSimpleUpperCase '\42903' = '\42902'
+toSimpleUpperCase '\42905' = '\42904'
+toSimpleUpperCase '\42907' = '\42906'
+toSimpleUpperCase '\42909' = '\42908'
+toSimpleUpperCase '\42911' = '\42910'
+toSimpleUpperCase '\42913' = '\42912'
+toSimpleUpperCase '\42915' = '\42914'
+toSimpleUpperCase '\42917' = '\42916'
+toSimpleUpperCase '\42919' = '\42918'
+toSimpleUpperCase '\42921' = '\42920'
+toSimpleUpperCase '\42933' = '\42932'
+toSimpleUpperCase '\42935' = '\42934'
+toSimpleUpperCase '\42937' = '\42936'
+toSimpleUpperCase '\42939' = '\42938'
+toSimpleUpperCase '\42941' = '\42940'
+toSimpleUpperCase '\42943' = '\42942'
+toSimpleUpperCase '\42945' = '\42944'
+toSimpleUpperCase '\42947' = '\42946'
+toSimpleUpperCase '\42952' = '\42951'
+toSimpleUpperCase '\42954' = '\42953'
+toSimpleUpperCase '\42961' = '\42960'
+toSimpleUpperCase '\42967' = '\42966'
+toSimpleUpperCase '\42969' = '\42968'
+toSimpleUpperCase '\42998' = '\42997'
+toSimpleUpperCase '\43859' = '\42931'
+toSimpleUpperCase '\43888' = '\5024'
+toSimpleUpperCase '\43889' = '\5025'
+toSimpleUpperCase '\43890' = '\5026'
+toSimpleUpperCase '\43891' = '\5027'
+toSimpleUpperCase '\43892' = '\5028'
+toSimpleUpperCase '\43893' = '\5029'
+toSimpleUpperCase '\43894' = '\5030'
+toSimpleUpperCase '\43895' = '\5031'
+toSimpleUpperCase '\43896' = '\5032'
+toSimpleUpperCase '\43897' = '\5033'
+toSimpleUpperCase '\43898' = '\5034'
+toSimpleUpperCase '\43899' = '\5035'
+toSimpleUpperCase '\43900' = '\5036'
+toSimpleUpperCase '\43901' = '\5037'
+toSimpleUpperCase '\43902' = '\5038'
+toSimpleUpperCase '\43903' = '\5039'
+toSimpleUpperCase '\43904' = '\5040'
+toSimpleUpperCase '\43905' = '\5041'
+toSimpleUpperCase '\43906' = '\5042'
+toSimpleUpperCase '\43907' = '\5043'
+toSimpleUpperCase '\43908' = '\5044'
+toSimpleUpperCase '\43909' = '\5045'
+toSimpleUpperCase '\43910' = '\5046'
+toSimpleUpperCase '\43911' = '\5047'
+toSimpleUpperCase '\43912' = '\5048'
+toSimpleUpperCase '\43913' = '\5049'
+toSimpleUpperCase '\43914' = '\5050'
+toSimpleUpperCase '\43915' = '\5051'
+toSimpleUpperCase '\43916' = '\5052'
+toSimpleUpperCase '\43917' = '\5053'
+toSimpleUpperCase '\43918' = '\5054'
+toSimpleUpperCase '\43919' = '\5055'
+toSimpleUpperCase '\43920' = '\5056'
+toSimpleUpperCase '\43921' = '\5057'
+toSimpleUpperCase '\43922' = '\5058'
+toSimpleUpperCase '\43923' = '\5059'
+toSimpleUpperCase '\43924' = '\5060'
+toSimpleUpperCase '\43925' = '\5061'
+toSimpleUpperCase '\43926' = '\5062'
+toSimpleUpperCase '\43927' = '\5063'
+toSimpleUpperCase '\43928' = '\5064'
+toSimpleUpperCase '\43929' = '\5065'
+toSimpleUpperCase '\43930' = '\5066'
+toSimpleUpperCase '\43931' = '\5067'
+toSimpleUpperCase '\43932' = '\5068'
+toSimpleUpperCase '\43933' = '\5069'
+toSimpleUpperCase '\43934' = '\5070'
+toSimpleUpperCase '\43935' = '\5071'
+toSimpleUpperCase '\43936' = '\5072'
+toSimpleUpperCase '\43937' = '\5073'
+toSimpleUpperCase '\43938' = '\5074'
+toSimpleUpperCase '\43939' = '\5075'
+toSimpleUpperCase '\43940' = '\5076'
+toSimpleUpperCase '\43941' = '\5077'
+toSimpleUpperCase '\43942' = '\5078'
+toSimpleUpperCase '\43943' = '\5079'
+toSimpleUpperCase '\43944' = '\5080'
+toSimpleUpperCase '\43945' = '\5081'
+toSimpleUpperCase '\43946' = '\5082'
+toSimpleUpperCase '\43947' = '\5083'
+toSimpleUpperCase '\43948' = '\5084'
+toSimpleUpperCase '\43949' = '\5085'
+toSimpleUpperCase '\43950' = '\5086'
+toSimpleUpperCase '\43951' = '\5087'
+toSimpleUpperCase '\43952' = '\5088'
+toSimpleUpperCase '\43953' = '\5089'
+toSimpleUpperCase '\43954' = '\5090'
+toSimpleUpperCase '\43955' = '\5091'
+toSimpleUpperCase '\43956' = '\5092'
+toSimpleUpperCase '\43957' = '\5093'
+toSimpleUpperCase '\43958' = '\5094'
+toSimpleUpperCase '\43959' = '\5095'
+toSimpleUpperCase '\43960' = '\5096'
+toSimpleUpperCase '\43961' = '\5097'
+toSimpleUpperCase '\43962' = '\5098'
+toSimpleUpperCase '\43963' = '\5099'
+toSimpleUpperCase '\43964' = '\5100'
+toSimpleUpperCase '\43965' = '\5101'
+toSimpleUpperCase '\43966' = '\5102'
+toSimpleUpperCase '\43967' = '\5103'
+toSimpleUpperCase '\65345' = '\65313'
+toSimpleUpperCase '\65346' = '\65314'
+toSimpleUpperCase '\65347' = '\65315'
+toSimpleUpperCase '\65348' = '\65316'
+toSimpleUpperCase '\65349' = '\65317'
+toSimpleUpperCase '\65350' = '\65318'
+toSimpleUpperCase '\65351' = '\65319'
+toSimpleUpperCase '\65352' = '\65320'
+toSimpleUpperCase '\65353' = '\65321'
+toSimpleUpperCase '\65354' = '\65322'
+toSimpleUpperCase '\65355' = '\65323'
+toSimpleUpperCase '\65356' = '\65324'
+toSimpleUpperCase '\65357' = '\65325'
+toSimpleUpperCase '\65358' = '\65326'
+toSimpleUpperCase '\65359' = '\65327'
+toSimpleUpperCase '\65360' = '\65328'
+toSimpleUpperCase '\65361' = '\65329'
+toSimpleUpperCase '\65362' = '\65330'
+toSimpleUpperCase '\65363' = '\65331'
+toSimpleUpperCase '\65364' = '\65332'
+toSimpleUpperCase '\65365' = '\65333'
+toSimpleUpperCase '\65366' = '\65334'
+toSimpleUpperCase '\65367' = '\65335'
+toSimpleUpperCase '\65368' = '\65336'
+toSimpleUpperCase '\65369' = '\65337'
+toSimpleUpperCase '\65370' = '\65338'
+toSimpleUpperCase '\66600' = '\66560'
+toSimpleUpperCase '\66601' = '\66561'
+toSimpleUpperCase '\66602' = '\66562'
+toSimpleUpperCase '\66603' = '\66563'
+toSimpleUpperCase '\66604' = '\66564'
+toSimpleUpperCase '\66605' = '\66565'
+toSimpleUpperCase '\66606' = '\66566'
+toSimpleUpperCase '\66607' = '\66567'
+toSimpleUpperCase '\66608' = '\66568'
+toSimpleUpperCase '\66609' = '\66569'
+toSimpleUpperCase '\66610' = '\66570'
+toSimpleUpperCase '\66611' = '\66571'
+toSimpleUpperCase '\66612' = '\66572'
+toSimpleUpperCase '\66613' = '\66573'
+toSimpleUpperCase '\66614' = '\66574'
+toSimpleUpperCase '\66615' = '\66575'
+toSimpleUpperCase '\66616' = '\66576'
+toSimpleUpperCase '\66617' = '\66577'
+toSimpleUpperCase '\66618' = '\66578'
+toSimpleUpperCase '\66619' = '\66579'
+toSimpleUpperCase '\66620' = '\66580'
+toSimpleUpperCase '\66621' = '\66581'
+toSimpleUpperCase '\66622' = '\66582'
+toSimpleUpperCase '\66623' = '\66583'
+toSimpleUpperCase '\66624' = '\66584'
+toSimpleUpperCase '\66625' = '\66585'
+toSimpleUpperCase '\66626' = '\66586'
+toSimpleUpperCase '\66627' = '\66587'
+toSimpleUpperCase '\66628' = '\66588'
+toSimpleUpperCase '\66629' = '\66589'
+toSimpleUpperCase '\66630' = '\66590'
+toSimpleUpperCase '\66631' = '\66591'
+toSimpleUpperCase '\66632' = '\66592'
+toSimpleUpperCase '\66633' = '\66593'
+toSimpleUpperCase '\66634' = '\66594'
+toSimpleUpperCase '\66635' = '\66595'
+toSimpleUpperCase '\66636' = '\66596'
+toSimpleUpperCase '\66637' = '\66597'
+toSimpleUpperCase '\66638' = '\66598'
+toSimpleUpperCase '\66639' = '\66599'
+toSimpleUpperCase '\66776' = '\66736'
+toSimpleUpperCase '\66777' = '\66737'
+toSimpleUpperCase '\66778' = '\66738'
+toSimpleUpperCase '\66779' = '\66739'
+toSimpleUpperCase '\66780' = '\66740'
+toSimpleUpperCase '\66781' = '\66741'
+toSimpleUpperCase '\66782' = '\66742'
+toSimpleUpperCase '\66783' = '\66743'
+toSimpleUpperCase '\66784' = '\66744'
+toSimpleUpperCase '\66785' = '\66745'
+toSimpleUpperCase '\66786' = '\66746'
+toSimpleUpperCase '\66787' = '\66747'
+toSimpleUpperCase '\66788' = '\66748'
+toSimpleUpperCase '\66789' = '\66749'
+toSimpleUpperCase '\66790' = '\66750'
+toSimpleUpperCase '\66791' = '\66751'
+toSimpleUpperCase '\66792' = '\66752'
+toSimpleUpperCase '\66793' = '\66753'
+toSimpleUpperCase '\66794' = '\66754'
+toSimpleUpperCase '\66795' = '\66755'
+toSimpleUpperCase '\66796' = '\66756'
+toSimpleUpperCase '\66797' = '\66757'
+toSimpleUpperCase '\66798' = '\66758'
+toSimpleUpperCase '\66799' = '\66759'
+toSimpleUpperCase '\66800' = '\66760'
+toSimpleUpperCase '\66801' = '\66761'
+toSimpleUpperCase '\66802' = '\66762'
+toSimpleUpperCase '\66803' = '\66763'
+toSimpleUpperCase '\66804' = '\66764'
+toSimpleUpperCase '\66805' = '\66765'
+toSimpleUpperCase '\66806' = '\66766'
+toSimpleUpperCase '\66807' = '\66767'
+toSimpleUpperCase '\66808' = '\66768'
+toSimpleUpperCase '\66809' = '\66769'
+toSimpleUpperCase '\66810' = '\66770'
+toSimpleUpperCase '\66811' = '\66771'
+toSimpleUpperCase '\66967' = '\66928'
+toSimpleUpperCase '\66968' = '\66929'
+toSimpleUpperCase '\66969' = '\66930'
+toSimpleUpperCase '\66970' = '\66931'
+toSimpleUpperCase '\66971' = '\66932'
+toSimpleUpperCase '\66972' = '\66933'
+toSimpleUpperCase '\66973' = '\66934'
+toSimpleUpperCase '\66974' = '\66935'
+toSimpleUpperCase '\66975' = '\66936'
+toSimpleUpperCase '\66976' = '\66937'
+toSimpleUpperCase '\66977' = '\66938'
+toSimpleUpperCase '\66979' = '\66940'
+toSimpleUpperCase '\66980' = '\66941'
+toSimpleUpperCase '\66981' = '\66942'
+toSimpleUpperCase '\66982' = '\66943'
+toSimpleUpperCase '\66983' = '\66944'
+toSimpleUpperCase '\66984' = '\66945'
+toSimpleUpperCase '\66985' = '\66946'
+toSimpleUpperCase '\66986' = '\66947'
+toSimpleUpperCase '\66987' = '\66948'
+toSimpleUpperCase '\66988' = '\66949'
+toSimpleUpperCase '\66989' = '\66950'
+toSimpleUpperCase '\66990' = '\66951'
+toSimpleUpperCase '\66991' = '\66952'
+toSimpleUpperCase '\66992' = '\66953'
+toSimpleUpperCase '\66993' = '\66954'
+toSimpleUpperCase '\66995' = '\66956'
+toSimpleUpperCase '\66996' = '\66957'
+toSimpleUpperCase '\66997' = '\66958'
+toSimpleUpperCase '\66998' = '\66959'
+toSimpleUpperCase '\66999' = '\66960'
+toSimpleUpperCase '\67000' = '\66961'
+toSimpleUpperCase '\67001' = '\66962'
+toSimpleUpperCase '\67003' = '\66964'
+toSimpleUpperCase '\67004' = '\66965'
+toSimpleUpperCase '\68800' = '\68736'
+toSimpleUpperCase '\68801' = '\68737'
+toSimpleUpperCase '\68802' = '\68738'
+toSimpleUpperCase '\68803' = '\68739'
+toSimpleUpperCase '\68804' = '\68740'
+toSimpleUpperCase '\68805' = '\68741'
+toSimpleUpperCase '\68806' = '\68742'
+toSimpleUpperCase '\68807' = '\68743'
+toSimpleUpperCase '\68808' = '\68744'
+toSimpleUpperCase '\68809' = '\68745'
+toSimpleUpperCase '\68810' = '\68746'
+toSimpleUpperCase '\68811' = '\68747'
+toSimpleUpperCase '\68812' = '\68748'
+toSimpleUpperCase '\68813' = '\68749'
+toSimpleUpperCase '\68814' = '\68750'
+toSimpleUpperCase '\68815' = '\68751'
+toSimpleUpperCase '\68816' = '\68752'
+toSimpleUpperCase '\68817' = '\68753'
+toSimpleUpperCase '\68818' = '\68754'
+toSimpleUpperCase '\68819' = '\68755'
+toSimpleUpperCase '\68820' = '\68756'
+toSimpleUpperCase '\68821' = '\68757'
+toSimpleUpperCase '\68822' = '\68758'
+toSimpleUpperCase '\68823' = '\68759'
+toSimpleUpperCase '\68824' = '\68760'
+toSimpleUpperCase '\68825' = '\68761'
+toSimpleUpperCase '\68826' = '\68762'
+toSimpleUpperCase '\68827' = '\68763'
+toSimpleUpperCase '\68828' = '\68764'
+toSimpleUpperCase '\68829' = '\68765'
+toSimpleUpperCase '\68830' = '\68766'
+toSimpleUpperCase '\68831' = '\68767'
+toSimpleUpperCase '\68832' = '\68768'
+toSimpleUpperCase '\68833' = '\68769'
+toSimpleUpperCase '\68834' = '\68770'
+toSimpleUpperCase '\68835' = '\68771'
+toSimpleUpperCase '\68836' = '\68772'
+toSimpleUpperCase '\68837' = '\68773'
+toSimpleUpperCase '\68838' = '\68774'
+toSimpleUpperCase '\68839' = '\68775'
+toSimpleUpperCase '\68840' = '\68776'
+toSimpleUpperCase '\68841' = '\68777'
+toSimpleUpperCase '\68842' = '\68778'
+toSimpleUpperCase '\68843' = '\68779'
+toSimpleUpperCase '\68844' = '\68780'
+toSimpleUpperCase '\68845' = '\68781'
+toSimpleUpperCase '\68846' = '\68782'
+toSimpleUpperCase '\68847' = '\68783'
+toSimpleUpperCase '\68848' = '\68784'
+toSimpleUpperCase '\68849' = '\68785'
+toSimpleUpperCase '\68850' = '\68786'
+toSimpleUpperCase '\71872' = '\71840'
+toSimpleUpperCase '\71873' = '\71841'
+toSimpleUpperCase '\71874' = '\71842'
+toSimpleUpperCase '\71875' = '\71843'
+toSimpleUpperCase '\71876' = '\71844'
+toSimpleUpperCase '\71877' = '\71845'
+toSimpleUpperCase '\71878' = '\71846'
+toSimpleUpperCase '\71879' = '\71847'
+toSimpleUpperCase '\71880' = '\71848'
+toSimpleUpperCase '\71881' = '\71849'
+toSimpleUpperCase '\71882' = '\71850'
+toSimpleUpperCase '\71883' = '\71851'
+toSimpleUpperCase '\71884' = '\71852'
+toSimpleUpperCase '\71885' = '\71853'
+toSimpleUpperCase '\71886' = '\71854'
+toSimpleUpperCase '\71887' = '\71855'
+toSimpleUpperCase '\71888' = '\71856'
+toSimpleUpperCase '\71889' = '\71857'
+toSimpleUpperCase '\71890' = '\71858'
+toSimpleUpperCase '\71891' = '\71859'
+toSimpleUpperCase '\71892' = '\71860'
+toSimpleUpperCase '\71893' = '\71861'
+toSimpleUpperCase '\71894' = '\71862'
+toSimpleUpperCase '\71895' = '\71863'
+toSimpleUpperCase '\71896' = '\71864'
+toSimpleUpperCase '\71897' = '\71865'
+toSimpleUpperCase '\71898' = '\71866'
+toSimpleUpperCase '\71899' = '\71867'
+toSimpleUpperCase '\71900' = '\71868'
+toSimpleUpperCase '\71901' = '\71869'
+toSimpleUpperCase '\71902' = '\71870'
+toSimpleUpperCase '\71903' = '\71871'
+toSimpleUpperCase '\93792' = '\93760'
+toSimpleUpperCase '\93793' = '\93761'
+toSimpleUpperCase '\93794' = '\93762'
+toSimpleUpperCase '\93795' = '\93763'
+toSimpleUpperCase '\93796' = '\93764'
+toSimpleUpperCase '\93797' = '\93765'
+toSimpleUpperCase '\93798' = '\93766'
+toSimpleUpperCase '\93799' = '\93767'
+toSimpleUpperCase '\93800' = '\93768'
+toSimpleUpperCase '\93801' = '\93769'
+toSimpleUpperCase '\93802' = '\93770'
+toSimpleUpperCase '\93803' = '\93771'
+toSimpleUpperCase '\93804' = '\93772'
+toSimpleUpperCase '\93805' = '\93773'
+toSimpleUpperCase '\93806' = '\93774'
+toSimpleUpperCase '\93807' = '\93775'
+toSimpleUpperCase '\93808' = '\93776'
+toSimpleUpperCase '\93809' = '\93777'
+toSimpleUpperCase '\93810' = '\93778'
+toSimpleUpperCase '\93811' = '\93779'
+toSimpleUpperCase '\93812' = '\93780'
+toSimpleUpperCase '\93813' = '\93781'
+toSimpleUpperCase '\93814' = '\93782'
+toSimpleUpperCase '\93815' = '\93783'
+toSimpleUpperCase '\93816' = '\93784'
+toSimpleUpperCase '\93817' = '\93785'
+toSimpleUpperCase '\93818' = '\93786'
+toSimpleUpperCase '\93819' = '\93787'
+toSimpleUpperCase '\93820' = '\93788'
+toSimpleUpperCase '\93821' = '\93789'
+toSimpleUpperCase '\93822' = '\93790'
+toSimpleUpperCase '\93823' = '\93791'
+toSimpleUpperCase '\125218' = '\125184'
+toSimpleUpperCase '\125219' = '\125185'
+toSimpleUpperCase '\125220' = '\125186'
+toSimpleUpperCase '\125221' = '\125187'
+toSimpleUpperCase '\125222' = '\125188'
+toSimpleUpperCase '\125223' = '\125189'
+toSimpleUpperCase '\125224' = '\125190'
+toSimpleUpperCase '\125225' = '\125191'
+toSimpleUpperCase '\125226' = '\125192'
+toSimpleUpperCase '\125227' = '\125193'
+toSimpleUpperCase '\125228' = '\125194'
+toSimpleUpperCase '\125229' = '\125195'
+toSimpleUpperCase '\125230' = '\125196'
+toSimpleUpperCase '\125231' = '\125197'
+toSimpleUpperCase '\125232' = '\125198'
+toSimpleUpperCase '\125233' = '\125199'
+toSimpleUpperCase '\125234' = '\125200'
+toSimpleUpperCase '\125235' = '\125201'
+toSimpleUpperCase '\125236' = '\125202'
+toSimpleUpperCase '\125237' = '\125203'
+toSimpleUpperCase '\125238' = '\125204'
+toSimpleUpperCase '\125239' = '\125205'
+toSimpleUpperCase '\125240' = '\125206'
+toSimpleUpperCase '\125241' = '\125207'
+toSimpleUpperCase '\125242' = '\125208'
+toSimpleUpperCase '\125243' = '\125209'
+toSimpleUpperCase '\125244' = '\125210'
+toSimpleUpperCase '\125245' = '\125211'
+toSimpleUpperCase '\125246' = '\125212'
+toSimpleUpperCase '\125247' = '\125213'
+toSimpleUpperCase '\125248' = '\125214'
+toSimpleUpperCase '\125249' = '\125215'
+toSimpleUpperCase '\125250' = '\125216'
+toSimpleUpperCase '\125251' = '\125217'
+toSimpleUpperCase c = c
diff --git a/test/Main.hs b/test/Main.hs
new file mode 100644
--- /dev/null
+++ b/test/Main.hs
@@ -0,0 +1,1 @@
+{-# OPTIONS_GHC -F -pgmF hspec-discover #-}
diff --git a/test/Unicode/CharSpec.hs b/test/Unicode/CharSpec.hs
new file mode 100644
--- /dev/null
+++ b/test/Unicode/CharSpec.hs
@@ -0,0 +1,88 @@
+{-# LANGUAGE BlockArguments #-}
+{-# LANGUAGE CPP #-}
+
+module Unicode.CharSpec
+  ( spec
+  ) where
+
+import qualified Data.Char as Char
+import qualified Unicode.Char as UChar
+-- [TODO] Remove the following qualified imports once isLetter and isSpace
+--        are removed from Unicode.Char.General
+import qualified Unicode.Char.General.Compat as UCharCompat
+-- [TODO] Remove the following qualified imports once isUpper and isLower
+--        are removed from Unicode.Char.Case
+import qualified Unicode.Char.Case.Compat as UCharCompat
+import Data.Foldable (traverse_)
+import Test.Hspec
+
+{- [NOTE]
+These tests may fail if the compiler’s Unicode version
+does not match the version of this package.
+
++-------------+----------------+-----------------+
+| GHC version | @base@ version | Unicode version |
++=============+================+=================+
+| 8.8         | 4.13           | 12.0            |
+| 8.10.[1-4]  | 4.14.{0,1}     | 12.0            |
+| 8.10.5+     | 4.14.2+        | 13.0            |
+| 9.0.1       | 4.15.0         | 12.1            |
+| 9.2.1       | 4.16.0         | 14.0            |
++-------------+----------------+-----------------+
+-}
+
+spec :: Spec
+spec = do
+#ifdef COMPATIBLE_GHC_UNICODE
+  let describe' = describe
+#else
+  let describe' t = before_ (pendingWith "Incompatible GHC Unicode version")
+                  . describe t
+#endif
+  describe' "Unicode general categories" do
+    it "generalCategory" do
+      -- Note: we cannot compare the categories directly, so use 'show'.
+      (show . UChar.generalCategory) `shouldBeEqualTo` (show . Char.generalCategory)
+  describe' "Character classification" do
+    it "isAlpha" do
+      UChar.isAlpha `shouldBeEqualTo` Char.isAlpha
+    it "isAlphaNum" do
+      UChar.isAlphaNum `shouldBeEqualTo` Char.isAlphaNum
+    it "isControl" do
+      UChar.isControl `shouldBeEqualTo` Char.isControl
+    it "isLetter" do
+      UCharCompat.isLetter `shouldBeEqualTo` Char.isLetter
+    it "isMark" do
+      UChar.isMark `shouldBeEqualTo` Char.isMark
+    it "isNumber" do
+      UChar.isNumber `shouldBeEqualTo` Char.isNumber
+    it "isPrint" do
+      UChar.isPrint `shouldBeEqualTo` Char.isPrint
+    it "isPunctuation" do
+      UChar.isPunctuation `shouldBeEqualTo` Char.isPunctuation
+    it "isSeparator" do
+      UChar.isSeparator `shouldBeEqualTo` Char.isSeparator
+    it "isSpace" do
+      UCharCompat.isSpace `shouldBeEqualTo` Char.isSpace
+    it "isSymbol" do
+      UChar.isSymbol `shouldBeEqualTo` Char.isSymbol
+  describe' "Case" do
+    it "isLower" do
+      UCharCompat.isLower `shouldBeEqualTo` Char.isLower
+    it "isUpper" do
+      UCharCompat.isUpper `shouldBeEqualTo` Char.isUpper
+    it "toLower" do
+      UChar.toLower `shouldBeEqualTo` Char.toLower
+    it "toUpper" do
+      UChar.toUpper `shouldBeEqualTo` Char.toUpper
+    it "toTitle" do
+      UChar.toTitle `shouldBeEqualTo` Char.toTitle
+  where
+    shouldBeEqualTo
+        :: forall a b. (Bounded a, Enum a, Show a, Eq b, Show b)
+        => (a -> b)
+        -> (a -> b)
+        -> IO ()
+    shouldBeEqualTo f g =
+        let same x = f x == g x
+        in traverse_ (`shouldSatisfy` same) [minBound..maxBound]
diff --git a/ucd.sh b/ucd.sh
--- a/ucd.sh
+++ b/ucd.sh
@@ -53,8 +53,9 @@
     done
 }
 
-# Compile and run ucd2haskell
+# Generate the Haskell files.
 run_generator() {
+    # Compile and run ucd2haskell
     cabal run --flag ucd2haskell ucd2haskell -- \
           --input ./ucd/ \
           --output ./lib/ \
@@ -68,6 +69,9 @@
           --core-prop XID_Continue \
           --core-prop Pattern_Syntax \
           --core-prop Pattern_White_Space
+    # Update unicodeVersion in Unicode.Char
+    VERSION_AS_LIST=$(echo "$VERSION" | sed "s/\./, /g")
+    sed -ri "s/^(unicodeVersion = makeVersion \[)[^]]*\]/\1$VERSION_AS_LIST\]/" "lib/Unicode/Char.hs"
 }
 
 # Print help text
diff --git a/unicode-data.cabal b/unicode-data.cabal
--- a/unicode-data.cabal
+++ b/unicode-data.cabal
@@ -1,6 +1,6 @@
 cabal-version:       2.2
 name:                unicode-data
-version:             0.2.0
+version:             0.3.0
 synopsis:            Access Unicode character database
 description:
   @unicode-data@ provides Haskell APIs to efficiently access the Unicode
@@ -20,8 +20,7 @@
 category:            Data,Text,Unicode
 stability:           Experimental
 build-type:          Simple
-tested-with:         GHC==7.10.3
-                   , GHC==8.0.2
+tested-with:         GHC==8.0.2
                    , GHC==8.2.2
                    , GHC==8.4.4
                    , GHC==8.6.5
@@ -66,6 +65,7 @@
                -fwarn-incomplete-record-updates
                -fwarn-incomplete-uni-patterns
                -fwarn-tabs
+  default-language: Haskell2010
 
 library
   import: default-extensions, compile-options
@@ -76,8 +76,11 @@
       -- https://www.unicode.org/reports/tr44/#Property_Index_Table
       Unicode.Char.Normalization
       Unicode.Char.General
+      Unicode.Char.General.Compat
       Unicode.Char.Case
+      Unicode.Char.Case.Compat
       Unicode.Char.Identifiers
+      Unicode.Char.Numeric
 
       -- Internal files
       Unicode.Internal.Bits
@@ -95,6 +98,11 @@
       Unicode.Internal.Char.UnicodeData.Decompositions
       Unicode.Internal.Char.UnicodeData.DecompositionsK
       Unicode.Internal.Char.UnicodeData.DecompositionsK2
+      Unicode.Internal.Char.UnicodeData.GeneralCategory
+      Unicode.Internal.Char.UnicodeData.SimpleLowerCaseMapping
+      Unicode.Internal.Char.UnicodeData.SimpleTitleCaseMapping
+      Unicode.Internal.Char.UnicodeData.SimpleUpperCaseMapping
+
   hs-source-dirs: lib
   ghc-options: -O2
   build-depends:
@@ -110,10 +118,43 @@
   if flag(ucd2haskell)
     buildable: True
     build-depends:
-        base             >= 4     && < 5
+        base             >= 4.7   && < 5
       , streamly         >= 0.8   && < 0.9
       , getopt-generics  >= 0.13  && < 0.14
       , containers       >= 0.5   && < 0.7
       , directory        >= 1.3.6 && < 1.3.7
   else
     buildable: False
+
+test-suite test
+  import: default-extensions, compile-options
+  type: exitcode-stdio-1.0
+  main-is: Main.hs
+  hs-source-dirs:
+      test
+  other-modules:
+      Unicode.CharSpec
+  build-depends:
+      base             >= 4.7   && < 5
+    , hspec            >= 2.0   && < 3
+    , unicode-data
+  build-tool-depends:
+      hspec-discover:hspec-discover >= 2.0 && < 3
+  -- We need to match a GHC version with the same Unicode version.
+  -- See: test/Unicode/CharSpec.hs for compatibility table.
+  if impl(ghc >= 9.2.1)
+    cpp-options: -DCOMPATIBLE_GHC_UNICODE
+  default-language: Haskell2010
+
+benchmark bench
+  import: default-extensions, compile-options
+  type: exitcode-stdio-1.0
+  hs-source-dirs: bench
+  main-is: Main.hs
+  build-depends:
+    base        >= 4.7   && < 5,
+    deepseq     >= 1.1   && < 1.5,
+    tasty-bench >= 0.2.5 && < 0.3,
+    tasty       >= 1.4.1,
+    unicode-data
+  ghc-options: -O2 -fdicts-strict -rtsopts
