Data/Text/Internal/Fusion/CaseMapping.hs

    {-# LANGUAGE Rank2Types #-}
    -- AUTOMATICALLY GENERATED - DO NOT EDIT
    -- Generated by scripts/CaseMapping.hs
    -- CaseFolding-9.0.0.txt
    -- Date: 2016-03-02, 18:54:54 GMT
    -- SpecialCasing-9.0.0.txt
    -- Date: 2016-03-02, 18:55:13 GMT

    module Data.Text.Internal.Fusion.CaseMapping where
    import Data.Char
    import Data.Text.Internal.Fusion.Types

    upperMapping :: forall s. Char -> s -> Step (CC s) Char
    {-# NOINLINE upperMapping #-}
    -- LATIN SMALL LETTER SHARP S
    upperMapping '\x00df' s = Yield '\x0053' (CC s '\x0053' '\x0000')
    -- LATIN SMALL LIGATURE FF
    upperMapping '\xfb00' s = Yield '\x0046' (CC s '\x0046' '\x0000')
    -- LATIN SMALL LIGATURE FI
    upperMapping '\xfb01' s = Yield '\x0046' (CC s '\x0049' '\x0000')
    -- LATIN SMALL LIGATURE FL
    upperMapping '\xfb02' s = Yield '\x0046' (CC s '\x004c' '\x0000')
    -- LATIN SMALL LIGATURE FFI
    upperMapping '\xfb03' s = Yield '\x0046' (CC s '\x0046' '\x0049')
    -- LATIN SMALL LIGATURE FFL
    upperMapping '\xfb04' s = Yield '\x0046' (CC s '\x0046' '\x004c')
    -- LATIN SMALL LIGATURE LONG S T
    upperMapping '\xfb05' s = Yield '\x0053' (CC s '\x0054' '\x0000')
    -- LATIN SMALL LIGATURE ST
    upperMapping '\xfb06' s = Yield '\x0053' (CC s '\x0054' '\x0000')
    -- ARMENIAN SMALL LIGATURE ECH YIWN
    upperMapping '\x0587' s = Yield '\x0535' (CC s '\x0552' '\x0000')
    -- ARMENIAN SMALL LIGATURE MEN NOW
    upperMapping '\xfb13' s = Yield '\x0544' (CC s '\x0546' '\x0000')
    -- ARMENIAN SMALL LIGATURE MEN ECH
    upperMapping '\xfb14' s = Yield '\x0544' (CC s '\x0535' '\x0000')
    -- ARMENIAN SMALL LIGATURE MEN INI
    upperMapping '\xfb15' s = Yield '\x0544' (CC s '\x053b' '\x0000')
    -- ARMENIAN SMALL LIGATURE VEW NOW
    upperMapping '\xfb16' s = Yield '\x054e' (CC s '\x0546' '\x0000')
    -- ARMENIAN SMALL LIGATURE MEN XEH
    upperMapping '\xfb17' s = Yield '\x0544' (CC s '\x053d' '\x0000')
    -- LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
    upperMapping '\x0149' s = Yield '\x02bc' (CC s '\x004e' '\x0000')
    -- GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
    upperMapping '\x0390' s = Yield '\x0399' (CC s '\x0308' '\x0301')
    -- GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
    upperMapping '\x03b0' s = Yield '\x03a5' (CC s '\x0308' '\x0301')
    -- LATIN SMALL LETTER J WITH CARON
    upperMapping '\x01f0' s = Yield '\x004a' (CC s '\x030c' '\x0000')
    -- LATIN SMALL LETTER H WITH LINE BELOW
    upperMapping '\x1e96' s = Yield '\x0048' (CC s '\x0331' '\x0000')
    -- LATIN SMALL LETTER T WITH DIAERESIS
    upperMapping '\x1e97' s = Yield '\x0054' (CC s '\x0308' '\x0000')
    -- LATIN SMALL LETTER W WITH RING ABOVE
    upperMapping '\x1e98' s = Yield '\x0057' (CC s '\x030a' '\x0000')
    -- LATIN SMALL LETTER Y WITH RING ABOVE
    upperMapping '\x1e99' s = Yield '\x0059' (CC s '\x030a' '\x0000')
    -- LATIN SMALL LETTER A WITH RIGHT HALF RING
    upperMapping '\x1e9a' s = Yield '\x0041' (CC s '\x02be' '\x0000')
    -- GREEK SMALL LETTER UPSILON WITH PSILI
    upperMapping '\x1f50' s = Yield '\x03a5' (CC s '\x0313' '\x0000')
    -- GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA
    upperMapping '\x1f52' s = Yield '\x03a5' (CC s '\x0313' '\x0300')
    -- GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA
    upperMapping '\x1f54' s = Yield '\x03a5' (CC s '\x0313' '\x0301')
    -- GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI
    upperMapping '\x1f56' s = Yield '\x03a5' (CC s '\x0313' '\x0342')
    -- GREEK SMALL LETTER ALPHA WITH PERISPOMENI
    upperMapping '\x1fb6' s = Yield '\x0391' (CC s '\x0342' '\x0000')
    -- GREEK SMALL LETTER ETA WITH PERISPOMENI
    upperMapping '\x1fc6' s = Yield '\x0397' (CC s '\x0342' '\x0000')
    -- GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA
    upperMapping '\x1fd2' s = Yield '\x0399' (CC s '\x0308' '\x0300')
    -- GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA
    upperMapping '\x1fd3' s = Yield '\x0399' (CC s '\x0308' '\x0301')
    -- GREEK SMALL LETTER IOTA WITH PERISPOMENI
    upperMapping '\x1fd6' s = Yield '\x0399' (CC s '\x0342' '\x0000')
    -- GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI
    upperMapping '\x1fd7' s = Yield '\x0399' (CC s '\x0308' '\x0342')
    -- GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA
    upperMapping '\x1fe2' s = Yield '\x03a5' (CC s '\x0308' '\x0300')
    -- GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA
    upperMapping '\x1fe3' s = Yield '\x03a5' (CC s '\x0308' '\x0301')
    -- GREEK SMALL LETTER RHO WITH PSILI
    upperMapping '\x1fe4' s = Yield '\x03a1' (CC s '\x0313' '\x0000')
    -- GREEK SMALL LETTER UPSILON WITH PERISPOMENI
    upperMapping '\x1fe6' s = Yield '\x03a5' (CC s '\x0342' '\x0000')
    -- GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI
    upperMapping '\x1fe7' s = Yield '\x03a5' (CC s '\x0308' '\x0342')
    -- GREEK SMALL LETTER OMEGA WITH PERISPOMENI
    upperMapping '\x1ff6' s = Yield '\x03a9' (CC s '\x0342' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI
    upperMapping '\x1f80' s = Yield '\x1f08' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI
    upperMapping '\x1f81' s = Yield '\x1f09' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI
    upperMapping '\x1f82' s = Yield '\x1f0a' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI
    upperMapping '\x1f83' s = Yield '\x1f0b' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI
    upperMapping '\x1f84' s = Yield '\x1f0c' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI
    upperMapping '\x1f85' s = Yield '\x1f0d' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
    upperMapping '\x1f86' s = Yield '\x1f0e' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
    upperMapping '\x1f87' s = Yield '\x1f0f' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI
    upperMapping '\x1f88' s = Yield '\x1f08' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH DASIA AND PROSGEGRAMMENI
    upperMapping '\x1f89' s = Yield '\x1f09' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI
    upperMapping '\x1f8a' s = Yield '\x1f0a' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI
    upperMapping '\x1f8b' s = Yield '\x1f0b' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI
    upperMapping '\x1f8c' s = Yield '\x1f0c' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI
    upperMapping '\x1f8d' s = Yield '\x1f0d' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
    upperMapping '\x1f8e' s = Yield '\x1f0e' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
    upperMapping '\x1f8f' s = Yield '\x1f0f' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI
    upperMapping '\x1f90' s = Yield '\x1f28' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ETA WITH DASIA AND YPOGEGRAMMENI
    upperMapping '\x1f91' s = Yield '\x1f29' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI
    upperMapping '\x1f92' s = Yield '\x1f2a' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI
    upperMapping '\x1f93' s = Yield '\x1f2b' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI
    upperMapping '\x1f94' s = Yield '\x1f2c' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI
    upperMapping '\x1f95' s = Yield '\x1f2d' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
    upperMapping '\x1f96' s = Yield '\x1f2e' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
    upperMapping '\x1f97' s = Yield '\x1f2f' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI
    upperMapping '\x1f98' s = Yield '\x1f28' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH DASIA AND PROSGEGRAMMENI
    upperMapping '\x1f99' s = Yield '\x1f29' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI
    upperMapping '\x1f9a' s = Yield '\x1f2a' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI
    upperMapping '\x1f9b' s = Yield '\x1f2b' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI
    upperMapping '\x1f9c' s = Yield '\x1f2c' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI
    upperMapping '\x1f9d' s = Yield '\x1f2d' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
    upperMapping '\x1f9e' s = Yield '\x1f2e' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
    upperMapping '\x1f9f' s = Yield '\x1f2f' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI
    upperMapping '\x1fa0' s = Yield '\x1f68' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH DASIA AND YPOGEGRAMMENI
    upperMapping '\x1fa1' s = Yield '\x1f69' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI
    upperMapping '\x1fa2' s = Yield '\x1f6a' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI
    upperMapping '\x1fa3' s = Yield '\x1f6b' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI
    upperMapping '\x1fa4' s = Yield '\x1f6c' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI
    upperMapping '\x1fa5' s = Yield '\x1f6d' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
    upperMapping '\x1fa6' s = Yield '\x1f6e' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
    upperMapping '\x1fa7' s = Yield '\x1f6f' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI
    upperMapping '\x1fa8' s = Yield '\x1f68' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH DASIA AND PROSGEGRAMMENI
    upperMapping '\x1fa9' s = Yield '\x1f69' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI
    upperMapping '\x1faa' s = Yield '\x1f6a' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI
    upperMapping '\x1fab' s = Yield '\x1f6b' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI
    upperMapping '\x1fac' s = Yield '\x1f6c' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI
    upperMapping '\x1fad' s = Yield '\x1f6d' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
    upperMapping '\x1fae' s = Yield '\x1f6e' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
    upperMapping '\x1faf' s = Yield '\x1f6f' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI
    upperMapping '\x1fb3' s = Yield '\x0391' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI
    upperMapping '\x1fbc' s = Yield '\x0391' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI
    upperMapping '\x1fc3' s = Yield '\x0397' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI
    upperMapping '\x1fcc' s = Yield '\x0397' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI
    upperMapping '\x1ff3' s = Yield '\x03a9' (CC s '\x0399' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI
    upperMapping '\x1ffc' s = Yield '\x03a9' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI
    upperMapping '\x1fb2' s = Yield '\x1fba' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI
    upperMapping '\x1fb4' s = Yield '\x0386' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI
    upperMapping '\x1fc2' s = Yield '\x1fca' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI
    upperMapping '\x1fc4' s = Yield '\x0389' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI
    upperMapping '\x1ff2' s = Yield '\x1ffa' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI
    upperMapping '\x1ff4' s = Yield '\x038f' (CC s '\x0399' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI
    upperMapping '\x1fb7' s = Yield '\x0391' (CC s '\x0342' '\x0399')
    -- GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI
    upperMapping '\x1fc7' s = Yield '\x0397' (CC s '\x0342' '\x0399')
    -- GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI
    upperMapping '\x1ff7' s = Yield '\x03a9' (CC s '\x0342' '\x0399')
    upperMapping c s = Yield (toUpper c) (CC s '\0' '\0')
    lowerMapping :: forall s. Char -> s -> Step (CC s) Char
    {-# NOINLINE lowerMapping #-}
    -- LATIN CAPITAL LETTER I WITH DOT ABOVE
    lowerMapping '\x0130' s = Yield '\x0069' (CC s '\x0307' '\x0000')
    lowerMapping c s = Yield (toLower c) (CC s '\0' '\0')
    titleMapping :: forall s. Char -> s -> Step (CC s) Char
    {-# NOINLINE titleMapping #-}
    -- LATIN SMALL LETTER SHARP S
    titleMapping '\x00df' s = Yield '\x0053' (CC s '\x0073' '\x0000')
    -- LATIN SMALL LIGATURE FF
    titleMapping '\xfb00' s = Yield '\x0046' (CC s '\x0066' '\x0000')
    -- LATIN SMALL LIGATURE FI
    titleMapping '\xfb01' s = Yield '\x0046' (CC s '\x0069' '\x0000')
    -- LATIN SMALL LIGATURE FL
    titleMapping '\xfb02' s = Yield '\x0046' (CC s '\x006c' '\x0000')
    -- LATIN SMALL LIGATURE FFI
    titleMapping '\xfb03' s = Yield '\x0046' (CC s '\x0066' '\x0069')
    -- LATIN SMALL LIGATURE FFL
    titleMapping '\xfb04' s = Yield '\x0046' (CC s '\x0066' '\x006c')
    -- LATIN SMALL LIGATURE LONG S T
    titleMapping '\xfb05' s = Yield '\x0053' (CC s '\x0074' '\x0000')
    -- LATIN SMALL LIGATURE ST
    titleMapping '\xfb06' s = Yield '\x0053' (CC s '\x0074' '\x0000')
    -- ARMENIAN SMALL LIGATURE ECH YIWN
    titleMapping '\x0587' s = Yield '\x0535' (CC s '\x0582' '\x0000')
    -- ARMENIAN SMALL LIGATURE MEN NOW
    titleMapping '\xfb13' s = Yield '\x0544' (CC s '\x0576' '\x0000')
    -- ARMENIAN SMALL LIGATURE MEN ECH
    titleMapping '\xfb14' s = Yield '\x0544' (CC s '\x0565' '\x0000')
    -- ARMENIAN SMALL LIGATURE MEN INI
    titleMapping '\xfb15' s = Yield '\x0544' (CC s '\x056b' '\x0000')
    -- ARMENIAN SMALL LIGATURE VEW NOW
    titleMapping '\xfb16' s = Yield '\x054e' (CC s '\x0576' '\x0000')
    -- ARMENIAN SMALL LIGATURE MEN XEH
    titleMapping '\xfb17' s = Yield '\x0544' (CC s '\x056d' '\x0000')
    -- LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
    titleMapping '\x0149' s = Yield '\x02bc' (CC s '\x004e' '\x0000')
    -- GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
    titleMapping '\x0390' s = Yield '\x0399' (CC s '\x0308' '\x0301')
    -- GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
    titleMapping '\x03b0' s = Yield '\x03a5' (CC s '\x0308' '\x0301')
    -- LATIN SMALL LETTER J WITH CARON
    titleMapping '\x01f0' s = Yield '\x004a' (CC s '\x030c' '\x0000')
    -- LATIN SMALL LETTER H WITH LINE BELOW
    titleMapping '\x1e96' s = Yield '\x0048' (CC s '\x0331' '\x0000')
    -- LATIN SMALL LETTER T WITH DIAERESIS
    titleMapping '\x1e97' s = Yield '\x0054' (CC s '\x0308' '\x0000')
    -- LATIN SMALL LETTER W WITH RING ABOVE
    titleMapping '\x1e98' s = Yield '\x0057' (CC s '\x030a' '\x0000')
    -- LATIN SMALL LETTER Y WITH RING ABOVE
    titleMapping '\x1e99' s = Yield '\x0059' (CC s '\x030a' '\x0000')
    -- LATIN SMALL LETTER A WITH RIGHT HALF RING
    titleMapping '\x1e9a' s = Yield '\x0041' (CC s '\x02be' '\x0000')
    -- GREEK SMALL LETTER UPSILON WITH PSILI
    titleMapping '\x1f50' s = Yield '\x03a5' (CC s '\x0313' '\x0000')
    -- GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA
    titleMapping '\x1f52' s = Yield '\x03a5' (CC s '\x0313' '\x0300')
    -- GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA
    titleMapping '\x1f54' s = Yield '\x03a5' (CC s '\x0313' '\x0301')
    -- GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI
    titleMapping '\x1f56' s = Yield '\x03a5' (CC s '\x0313' '\x0342')
    -- GREEK SMALL LETTER ALPHA WITH PERISPOMENI
    titleMapping '\x1fb6' s = Yield '\x0391' (CC s '\x0342' '\x0000')
    -- GREEK SMALL LETTER ETA WITH PERISPOMENI
    titleMapping '\x1fc6' s = Yield '\x0397' (CC s '\x0342' '\x0000')
    -- GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA
    titleMapping '\x1fd2' s = Yield '\x0399' (CC s '\x0308' '\x0300')
    -- GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA
    titleMapping '\x1fd3' s = Yield '\x0399' (CC s '\x0308' '\x0301')
    -- GREEK SMALL LETTER IOTA WITH PERISPOMENI
    titleMapping '\x1fd6' s = Yield '\x0399' (CC s '\x0342' '\x0000')
    -- GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI
    titleMapping '\x1fd7' s = Yield '\x0399' (CC s '\x0308' '\x0342')
    -- GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA
    titleMapping '\x1fe2' s = Yield '\x03a5' (CC s '\x0308' '\x0300')
    -- GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA
    titleMapping '\x1fe3' s = Yield '\x03a5' (CC s '\x0308' '\x0301')
    -- GREEK SMALL LETTER RHO WITH PSILI
    titleMapping '\x1fe4' s = Yield '\x03a1' (CC s '\x0313' '\x0000')
    -- GREEK SMALL LETTER UPSILON WITH PERISPOMENI
    titleMapping '\x1fe6' s = Yield '\x03a5' (CC s '\x0342' '\x0000')
    -- GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI
    titleMapping '\x1fe7' s = Yield '\x03a5' (CC s '\x0308' '\x0342')
    -- GREEK SMALL LETTER OMEGA WITH PERISPOMENI
    titleMapping '\x1ff6' s = Yield '\x03a9' (CC s '\x0342' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI
    titleMapping '\x1fb2' s = Yield '\x1fba' (CC s '\x0345' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI
    titleMapping '\x1fb4' s = Yield '\x0386' (CC s '\x0345' '\x0000')
    -- GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI
    titleMapping '\x1fc2' s = Yield '\x1fca' (CC s '\x0345' '\x0000')
    -- GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI
    titleMapping '\x1fc4' s = Yield '\x0389' (CC s '\x0345' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI
    titleMapping '\x1ff2' s = Yield '\x1ffa' (CC s '\x0345' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI
    titleMapping '\x1ff4' s = Yield '\x038f' (CC s '\x0345' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI
    titleMapping '\x1fb7' s = Yield '\x0391' (CC s '\x0342' '\x0345')
    -- GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI
    titleMapping '\x1fc7' s = Yield '\x0397' (CC s '\x0342' '\x0345')
    -- GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI
    titleMapping '\x1ff7' s = Yield '\x03a9' (CC s '\x0342' '\x0345')
    titleMapping c s = Yield (toTitle c) (CC s '\0' '\0')
    foldMapping :: forall s. Char -> s -> Step (CC s) Char
    {-# NOINLINE foldMapping #-}
    -- MICRO SIGN
    foldMapping '\x00b5' s = Yield '\x03bc' (CC s '\x0000' '\x0000')
    -- LATIN SMALL LETTER SHARP S
    foldMapping '\x00df' s = Yield '\x0073' (CC s '\x0073' '\x0000')
    -- LATIN CAPITAL LETTER I WITH DOT ABOVE
    foldMapping '\x0130' s = Yield '\x0069' (CC s '\x0307' '\x0000')
    -- LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
    foldMapping '\x0149' s = Yield '\x02bc' (CC s '\x006e' '\x0000')
    -- LATIN SMALL LETTER LONG S
    foldMapping '\x017f' s = Yield '\x0073' (CC s '\x0000' '\x0000')
    -- LATIN SMALL LETTER J WITH CARON
    foldMapping '\x01f0' s = Yield '\x006a' (CC s '\x030c' '\x0000')
    -- COMBINING GREEK YPOGEGRAMMENI
    foldMapping '\x0345' s = Yield '\x03b9' (CC s '\x0000' '\x0000')
    -- GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
    foldMapping '\x0390' s = Yield '\x03b9' (CC s '\x0308' '\x0301')
    -- GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
    foldMapping '\x03b0' s = Yield '\x03c5' (CC s '\x0308' '\x0301')
    -- GREEK SMALL LETTER FINAL SIGMA
    foldMapping '\x03c2' s = Yield '\x03c3' (CC s '\x0000' '\x0000')
    -- GREEK BETA SYMBOL
    foldMapping '\x03d0' s = Yield '\x03b2' (CC s '\x0000' '\x0000')
    -- GREEK THETA SYMBOL
    foldMapping '\x03d1' s = Yield '\x03b8' (CC s '\x0000' '\x0000')
    -- GREEK PHI SYMBOL
    foldMapping '\x03d5' s = Yield '\x03c6' (CC s '\x0000' '\x0000')
    -- GREEK PI SYMBOL
    foldMapping '\x03d6' s = Yield '\x03c0' (CC s '\x0000' '\x0000')
    -- GREEK KAPPA SYMBOL
    foldMapping '\x03f0' s = Yield '\x03ba' (CC s '\x0000' '\x0000')
    -- GREEK RHO SYMBOL
    foldMapping '\x03f1' s = Yield '\x03c1' (CC s '\x0000' '\x0000')
    -- GREEK LUNATE EPSILON SYMBOL
    foldMapping '\x03f5' s = Yield '\x03b5' (CC s '\x0000' '\x0000')
    -- ARMENIAN SMALL LIGATURE ECH YIWN
    foldMapping '\x0587' s = Yield '\x0565' (CC s '\x0582' '\x0000')
    -- CHEROKEE SMALL LETTER YE
    foldMapping '\x13f8' s = Yield '\x13f0' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER YI
    foldMapping '\x13f9' s = Yield '\x13f1' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER YO
    foldMapping '\x13fa' s = Yield '\x13f2' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER YU
    foldMapping '\x13fb' s = Yield '\x13f3' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER YV
    foldMapping '\x13fc' s = Yield '\x13f4' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER MV
    foldMapping '\x13fd' s = Yield '\x13f5' (CC s '\x0000' '\x0000')
    -- CYRILLIC SMALL LETTER ROUNDED VE
    foldMapping '\x1c80' s = Yield '\x0432' (CC s '\x0000' '\x0000')
    -- CYRILLIC SMALL LETTER LONG-LEGGED DE
    foldMapping '\x1c81' s = Yield '\x0434' (CC s '\x0000' '\x0000')
    -- CYRILLIC SMALL LETTER NARROW O
    foldMapping '\x1c82' s = Yield '\x043e' (CC s '\x0000' '\x0000')
    -- CYRILLIC SMALL LETTER WIDE ES
    foldMapping '\x1c83' s = Yield '\x0441' (CC s '\x0000' '\x0000')
    -- CYRILLIC SMALL LETTER TALL TE
    foldMapping '\x1c84' s = Yield '\x0442' (CC s '\x0000' '\x0000')
    -- CYRILLIC SMALL LETTER THREE-LEGGED TE
    foldMapping '\x1c85' s = Yield '\x0442' (CC s '\x0000' '\x0000')
    -- CYRILLIC SMALL LETTER TALL HARD SIGN
    foldMapping '\x1c86' s = Yield '\x044a' (CC s '\x0000' '\x0000')
    -- CYRILLIC SMALL LETTER TALL YAT
    foldMapping '\x1c87' s = Yield '\x0463' (CC s '\x0000' '\x0000')
    -- CYRILLIC SMALL LETTER UNBLENDED UK
    foldMapping '\x1c88' s = Yield '\xa64b' (CC s '\x0000' '\x0000')
    -- LATIN SMALL LETTER H WITH LINE BELOW
    foldMapping '\x1e96' s = Yield '\x0068' (CC s '\x0331' '\x0000')
    -- LATIN SMALL LETTER T WITH DIAERESIS
    foldMapping '\x1e97' s = Yield '\x0074' (CC s '\x0308' '\x0000')
    -- LATIN SMALL LETTER W WITH RING ABOVE
    foldMapping '\x1e98' s = Yield '\x0077' (CC s '\x030a' '\x0000')
    -- LATIN SMALL LETTER Y WITH RING ABOVE
    foldMapping '\x1e99' s = Yield '\x0079' (CC s '\x030a' '\x0000')
    -- LATIN SMALL LETTER A WITH RIGHT HALF RING
    foldMapping '\x1e9a' s = Yield '\x0061' (CC s '\x02be' '\x0000')
    -- LATIN SMALL LETTER LONG S WITH DOT ABOVE
    foldMapping '\x1e9b' s = Yield '\x1e61' (CC s '\x0000' '\x0000')
    -- LATIN CAPITAL LETTER SHARP S
    foldMapping '\x1e9e' s = Yield '\x0073' (CC s '\x0073' '\x0000')
    -- GREEK SMALL LETTER UPSILON WITH PSILI
    foldMapping '\x1f50' s = Yield '\x03c5' (CC s '\x0313' '\x0000')
    -- GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA
    foldMapping '\x1f52' s = Yield '\x03c5' (CC s '\x0313' '\x0300')
    -- GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA
    foldMapping '\x1f54' s = Yield '\x03c5' (CC s '\x0313' '\x0301')
    -- GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI
    foldMapping '\x1f56' s = Yield '\x03c5' (CC s '\x0313' '\x0342')
    -- GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI
    foldMapping '\x1f80' s = Yield '\x1f00' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI
    foldMapping '\x1f81' s = Yield '\x1f01' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI
    foldMapping '\x1f82' s = Yield '\x1f02' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI
    foldMapping '\x1f83' s = Yield '\x1f03' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI
    foldMapping '\x1f84' s = Yield '\x1f04' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI
    foldMapping '\x1f85' s = Yield '\x1f05' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
    foldMapping '\x1f86' s = Yield '\x1f06' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
    foldMapping '\x1f87' s = Yield '\x1f07' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI
    foldMapping '\x1f88' s = Yield '\x1f00' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH DASIA AND PROSGEGRAMMENI
    foldMapping '\x1f89' s = Yield '\x1f01' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI
    foldMapping '\x1f8a' s = Yield '\x1f02' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI
    foldMapping '\x1f8b' s = Yield '\x1f03' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI
    foldMapping '\x1f8c' s = Yield '\x1f04' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI
    foldMapping '\x1f8d' s = Yield '\x1f05' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
    foldMapping '\x1f8e' s = Yield '\x1f06' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
    foldMapping '\x1f8f' s = Yield '\x1f07' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI
    foldMapping '\x1f90' s = Yield '\x1f20' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ETA WITH DASIA AND YPOGEGRAMMENI
    foldMapping '\x1f91' s = Yield '\x1f21' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI
    foldMapping '\x1f92' s = Yield '\x1f22' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI
    foldMapping '\x1f93' s = Yield '\x1f23' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI
    foldMapping '\x1f94' s = Yield '\x1f24' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI
    foldMapping '\x1f95' s = Yield '\x1f25' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
    foldMapping '\x1f96' s = Yield '\x1f26' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
    foldMapping '\x1f97' s = Yield '\x1f27' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI
    foldMapping '\x1f98' s = Yield '\x1f20' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH DASIA AND PROSGEGRAMMENI
    foldMapping '\x1f99' s = Yield '\x1f21' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI
    foldMapping '\x1f9a' s = Yield '\x1f22' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI
    foldMapping '\x1f9b' s = Yield '\x1f23' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI
    foldMapping '\x1f9c' s = Yield '\x1f24' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI
    foldMapping '\x1f9d' s = Yield '\x1f25' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
    foldMapping '\x1f9e' s = Yield '\x1f26' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
    foldMapping '\x1f9f' s = Yield '\x1f27' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI
    foldMapping '\x1fa0' s = Yield '\x1f60' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH DASIA AND YPOGEGRAMMENI
    foldMapping '\x1fa1' s = Yield '\x1f61' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI
    foldMapping '\x1fa2' s = Yield '\x1f62' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI
    foldMapping '\x1fa3' s = Yield '\x1f63' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI
    foldMapping '\x1fa4' s = Yield '\x1f64' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI
    foldMapping '\x1fa5' s = Yield '\x1f65' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
    foldMapping '\x1fa6' s = Yield '\x1f66' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
    foldMapping '\x1fa7' s = Yield '\x1f67' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI
    foldMapping '\x1fa8' s = Yield '\x1f60' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH DASIA AND PROSGEGRAMMENI
    foldMapping '\x1fa9' s = Yield '\x1f61' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI
    foldMapping '\x1faa' s = Yield '\x1f62' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI
    foldMapping '\x1fab' s = Yield '\x1f63' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI
    foldMapping '\x1fac' s = Yield '\x1f64' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI
    foldMapping '\x1fad' s = Yield '\x1f65' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
    foldMapping '\x1fae' s = Yield '\x1f66' (CC s '\x03b9' '\x0000')
    -- GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
    foldMapping '\x1faf' s = Yield '\x1f67' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI
    foldMapping '\x1fb2' s = Yield '\x1f70' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI
    foldMapping '\x1fb3' s = Yield '\x03b1' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI
    foldMapping '\x1fb4' s = Yield '\x03ac' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH PERISPOMENI
    foldMapping '\x1fb6' s = Yield '\x03b1' (CC s '\x0342' '\x0000')
    -- GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI
    foldMapping '\x1fb7' s = Yield '\x03b1' (CC s '\x0342' '\x03b9')
    -- GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI
    foldMapping '\x1fbc' s = Yield '\x03b1' (CC s '\x03b9' '\x0000')
    -- GREEK PROSGEGRAMMENI
    foldMapping '\x1fbe' s = Yield '\x03b9' (CC s '\x0000' '\x0000')
    -- GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI
    foldMapping '\x1fc2' s = Yield '\x1f74' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI
    foldMapping '\x1fc3' s = Yield '\x03b7' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI
    foldMapping '\x1fc4' s = Yield '\x03ae' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER ETA WITH PERISPOMENI
    foldMapping '\x1fc6' s = Yield '\x03b7' (CC s '\x0342' '\x0000')
    -- GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI
    foldMapping '\x1fc7' s = Yield '\x03b7' (CC s '\x0342' '\x03b9')
    -- GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI
    foldMapping '\x1fcc' s = Yield '\x03b7' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA
    foldMapping '\x1fd2' s = Yield '\x03b9' (CC s '\x0308' '\x0300')
    -- GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA
    foldMapping '\x1fd3' s = Yield '\x03b9' (CC s '\x0308' '\x0301')
    -- GREEK SMALL LETTER IOTA WITH PERISPOMENI
    foldMapping '\x1fd6' s = Yield '\x03b9' (CC s '\x0342' '\x0000')
    -- GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI
    foldMapping '\x1fd7' s = Yield '\x03b9' (CC s '\x0308' '\x0342')
    -- GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA
    foldMapping '\x1fe2' s = Yield '\x03c5' (CC s '\x0308' '\x0300')
    -- GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA
    foldMapping '\x1fe3' s = Yield '\x03c5' (CC s '\x0308' '\x0301')
    -- GREEK SMALL LETTER RHO WITH PSILI
    foldMapping '\x1fe4' s = Yield '\x03c1' (CC s '\x0313' '\x0000')
    -- GREEK SMALL LETTER UPSILON WITH PERISPOMENI
    foldMapping '\x1fe6' s = Yield '\x03c5' (CC s '\x0342' '\x0000')
    -- GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI
    foldMapping '\x1fe7' s = Yield '\x03c5' (CC s '\x0308' '\x0342')
    -- GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI
    foldMapping '\x1ff2' s = Yield '\x1f7c' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI
    foldMapping '\x1ff3' s = Yield '\x03c9' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI
    foldMapping '\x1ff4' s = Yield '\x03ce' (CC s '\x03b9' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH PERISPOMENI
    foldMapping '\x1ff6' s = Yield '\x03c9' (CC s '\x0342' '\x0000')
    -- GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI
    foldMapping '\x1ff7' s = Yield '\x03c9' (CC s '\x0342' '\x03b9')
    -- GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI
    foldMapping '\x1ffc' s = Yield '\x03c9' (CC s '\x03b9' '\x0000')
    -- LATIN CAPITAL LETTER SMALL CAPITAL I
    foldMapping '\xa7ae' s = Yield '\x026a' (CC s '\x0000' '\x0000')
    -- LATIN CAPITAL LETTER J WITH CROSSED-TAIL
    foldMapping '\xa7b2' s = Yield '\x029d' (CC s '\x0000' '\x0000')
    -- LATIN CAPITAL LETTER CHI
    foldMapping '\xa7b3' s = Yield '\xab53' (CC s '\x0000' '\x0000')
    -- LATIN CAPITAL LETTER BETA
    foldMapping '\xa7b4' s = Yield '\xa7b5' (CC s '\x0000' '\x0000')
    -- LATIN CAPITAL LETTER OMEGA
    foldMapping '\xa7b6' s = Yield '\xa7b7' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER A
    foldMapping '\xab70' s = Yield '\x13a0' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER E
    foldMapping '\xab71' s = Yield '\x13a1' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER I
    foldMapping '\xab72' s = Yield '\x13a2' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER O
    foldMapping '\xab73' s = Yield '\x13a3' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER U
    foldMapping '\xab74' s = Yield '\x13a4' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER V
    foldMapping '\xab75' s = Yield '\x13a5' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER GA
    foldMapping '\xab76' s = Yield '\x13a6' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER KA
    foldMapping '\xab77' s = Yield '\x13a7' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER GE
    foldMapping '\xab78' s = Yield '\x13a8' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER GI
    foldMapping '\xab79' s = Yield '\x13a9' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER GO
    foldMapping '\xab7a' s = Yield '\x13aa' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER GU
    foldMapping '\xab7b' s = Yield '\x13ab' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER GV
    foldMapping '\xab7c' s = Yield '\x13ac' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER HA
    foldMapping '\xab7d' s = Yield '\x13ad' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER HE
    foldMapping '\xab7e' s = Yield '\x13ae' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER HI
    foldMapping '\xab7f' s = Yield '\x13af' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER HO
    foldMapping '\xab80' s = Yield '\x13b0' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER HU
    foldMapping '\xab81' s = Yield '\x13b1' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER HV
    foldMapping '\xab82' s = Yield '\x13b2' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER LA
    foldMapping '\xab83' s = Yield '\x13b3' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER LE
    foldMapping '\xab84' s = Yield '\x13b4' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER LI
    foldMapping '\xab85' s = Yield '\x13b5' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER LO
    foldMapping '\xab86' s = Yield '\x13b6' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER LU
    foldMapping '\xab87' s = Yield '\x13b7' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER LV
    foldMapping '\xab88' s = Yield '\x13b8' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER MA
    foldMapping '\xab89' s = Yield '\x13b9' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER ME
    foldMapping '\xab8a' s = Yield '\x13ba' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER MI
    foldMapping '\xab8b' s = Yield '\x13bb' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER MO
    foldMapping '\xab8c' s = Yield '\x13bc' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER MU
    foldMapping '\xab8d' s = Yield '\x13bd' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER NA
    foldMapping '\xab8e' s = Yield '\x13be' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER HNA
    foldMapping '\xab8f' s = Yield '\x13bf' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER NAH
    foldMapping '\xab90' s = Yield '\x13c0' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER NE
    foldMapping '\xab91' s = Yield '\x13c1' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER NI
    foldMapping '\xab92' s = Yield '\x13c2' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER NO
    foldMapping '\xab93' s = Yield '\x13c3' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER NU
    foldMapping '\xab94' s = Yield '\x13c4' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER NV
    foldMapping '\xab95' s = Yield '\x13c5' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER QUA
    foldMapping '\xab96' s = Yield '\x13c6' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER QUE
    foldMapping '\xab97' s = Yield '\x13c7' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER QUI
    foldMapping '\xab98' s = Yield '\x13c8' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER QUO
    foldMapping '\xab99' s = Yield '\x13c9' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER QUU
    foldMapping '\xab9a' s = Yield '\x13ca' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER QUV
    foldMapping '\xab9b' s = Yield '\x13cb' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER SA
    foldMapping '\xab9c' s = Yield '\x13cc' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER S
    foldMapping '\xab9d' s = Yield '\x13cd' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER SE
    foldMapping '\xab9e' s = Yield '\x13ce' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER SI
    foldMapping '\xab9f' s = Yield '\x13cf' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER SO
    foldMapping '\xaba0' s = Yield '\x13d0' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER SU
    foldMapping '\xaba1' s = Yield '\x13d1' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER SV
    foldMapping '\xaba2' s = Yield '\x13d2' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER DA
    foldMapping '\xaba3' s = Yield '\x13d3' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER TA
    foldMapping '\xaba4' s = Yield '\x13d4' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER DE
    foldMapping '\xaba5' s = Yield '\x13d5' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER TE
    foldMapping '\xaba6' s = Yield '\x13d6' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER DI
    foldMapping '\xaba7' s = Yield '\x13d7' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER TI
    foldMapping '\xaba8' s = Yield '\x13d8' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER DO
    foldMapping '\xaba9' s = Yield '\x13d9' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER DU
    foldMapping '\xabaa' s = Yield '\x13da' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER DV
    foldMapping '\xabab' s = Yield '\x13db' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER DLA
    foldMapping '\xabac' s = Yield '\x13dc' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER TLA
    foldMapping '\xabad' s = Yield '\x13dd' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER TLE
    foldMapping '\xabae' s = Yield '\x13de' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER TLI
    foldMapping '\xabaf' s = Yield '\x13df' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER TLO
    foldMapping '\xabb0' s = Yield '\x13e0' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER TLU
    foldMapping '\xabb1' s = Yield '\x13e1' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER TLV
    foldMapping '\xabb2' s = Yield '\x13e2' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER TSA
    foldMapping '\xabb3' s = Yield '\x13e3' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER TSE
    foldMapping '\xabb4' s = Yield '\x13e4' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER TSI
    foldMapping '\xabb5' s = Yield '\x13e5' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER TSO
    foldMapping '\xabb6' s = Yield '\x13e6' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER TSU
    foldMapping '\xabb7' s = Yield '\x13e7' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER TSV
    foldMapping '\xabb8' s = Yield '\x13e8' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER WA
    foldMapping '\xabb9' s = Yield '\x13e9' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER WE
    foldMapping '\xabba' s = Yield '\x13ea' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER WI
    foldMapping '\xabbb' s = Yield '\x13eb' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER WO
    foldMapping '\xabbc' s = Yield '\x13ec' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER WU
    foldMapping '\xabbd' s = Yield '\x13ed' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER WV
    foldMapping '\xabbe' s = Yield '\x13ee' (CC s '\x0000' '\x0000')
    -- CHEROKEE SMALL LETTER YA
    foldMapping '\xabbf' s = Yield '\x13ef' (CC s '\x0000' '\x0000')
    -- LATIN SMALL LIGATURE FF
    foldMapping '\xfb00' s = Yield '\x0066' (CC s '\x0066' '\x0000')
    -- LATIN SMALL LIGATURE FI
    foldMapping '\xfb01' s = Yield '\x0066' (CC s '\x0069' '\x0000')
    -- LATIN SMALL LIGATURE FL
    foldMapping '\xfb02' s = Yield '\x0066' (CC s '\x006c' '\x0000')
    -- LATIN SMALL LIGATURE FFI
    foldMapping '\xfb03' s = Yield '\x0066' (CC s '\x0066' '\x0069')
    -- LATIN SMALL LIGATURE FFL
    foldMapping '\xfb04' s = Yield '\x0066' (CC s '\x0066' '\x006c')
    -- LATIN SMALL LIGATURE LONG S T
    foldMapping '\xfb05' s = Yield '\x0073' (CC s '\x0074' '\x0000')
    -- LATIN SMALL LIGATURE ST
    foldMapping '\xfb06' s = Yield '\x0073' (CC s '\x0074' '\x0000')
    -- ARMENIAN SMALL LIGATURE MEN NOW
    foldMapping '\xfb13' s = Yield '\x0574' (CC s '\x0576' '\x0000')
    -- ARMENIAN SMALL LIGATURE MEN ECH
    foldMapping '\xfb14' s = Yield '\x0574' (CC s '\x0565' '\x0000')
    -- ARMENIAN SMALL LIGATURE MEN INI
    foldMapping '\xfb15' s = Yield '\x0574' (CC s '\x056b' '\x0000')
    -- ARMENIAN SMALL LIGATURE VEW NOW
    foldMapping '\xfb16' s = Yield '\x057e' (CC s '\x0576' '\x0000')
    -- ARMENIAN SMALL LIGATURE MEN XEH
    foldMapping '\xfb17' s = Yield '\x0574' (CC s '\x056d' '\x0000')
    -- OSAGE CAPITAL LETTER A
    foldMapping '\x104b0' s = Yield '\x104d8' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER AI
    foldMapping '\x104b1' s = Yield '\x104d9' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER AIN
    foldMapping '\x104b2' s = Yield '\x104da' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER AH
    foldMapping '\x104b3' s = Yield '\x104db' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER BRA
    foldMapping '\x104b4' s = Yield '\x104dc' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER CHA
    foldMapping '\x104b5' s = Yield '\x104dd' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER EHCHA
    foldMapping '\x104b6' s = Yield '\x104de' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER E
    foldMapping '\x104b7' s = Yield '\x104df' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER EIN
    foldMapping '\x104b8' s = Yield '\x104e0' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER HA
    foldMapping '\x104b9' s = Yield '\x104e1' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER HYA
    foldMapping '\x104ba' s = Yield '\x104e2' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER I
    foldMapping '\x104bb' s = Yield '\x104e3' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER KA
    foldMapping '\x104bc' s = Yield '\x104e4' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER EHKA
    foldMapping '\x104bd' s = Yield '\x104e5' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER KYA
    foldMapping '\x104be' s = Yield '\x104e6' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER LA
    foldMapping '\x104bf' s = Yield '\x104e7' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER MA
    foldMapping '\x104c0' s = Yield '\x104e8' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER NA
    foldMapping '\x104c1' s = Yield '\x104e9' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER O
    foldMapping '\x104c2' s = Yield '\x104ea' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER OIN
    foldMapping '\x104c3' s = Yield '\x104eb' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER PA
    foldMapping '\x104c4' s = Yield '\x104ec' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER EHPA
    foldMapping '\x104c5' s = Yield '\x104ed' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER SA
    foldMapping '\x104c6' s = Yield '\x104ee' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER SHA
    foldMapping '\x104c7' s = Yield '\x104ef' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER TA
    foldMapping '\x104c8' s = Yield '\x104f0' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER EHTA
    foldMapping '\x104c9' s = Yield '\x104f1' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER TSA
    foldMapping '\x104ca' s = Yield '\x104f2' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER EHTSA
    foldMapping '\x104cb' s = Yield '\x104f3' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER TSHA
    foldMapping '\x104cc' s = Yield '\x104f4' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER DHA
    foldMapping '\x104cd' s = Yield '\x104f5' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER U
    foldMapping '\x104ce' s = Yield '\x104f6' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER WA
    foldMapping '\x104cf' s = Yield '\x104f7' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER KHA
    foldMapping '\x104d0' s = Yield '\x104f8' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER GHA
    foldMapping '\x104d1' s = Yield '\x104f9' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER ZA
    foldMapping '\x104d2' s = Yield '\x104fa' (CC s '\x0000' '\x0000')
    -- OSAGE CAPITAL LETTER ZHA
    foldMapping '\x104d3' s = Yield '\x104fb' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER A
    foldMapping '\x10c80' s = Yield '\x10cc0' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER AA
    foldMapping '\x10c81' s = Yield '\x10cc1' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EB
    foldMapping '\x10c82' s = Yield '\x10cc2' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER AMB
    foldMapping '\x10c83' s = Yield '\x10cc3' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EC
    foldMapping '\x10c84' s = Yield '\x10cc4' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER ENC
    foldMapping '\x10c85' s = Yield '\x10cc5' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER ECS
    foldMapping '\x10c86' s = Yield '\x10cc6' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER ED
    foldMapping '\x10c87' s = Yield '\x10cc7' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER AND
    foldMapping '\x10c88' s = Yield '\x10cc8' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER E
    foldMapping '\x10c89' s = Yield '\x10cc9' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER CLOSE E
    foldMapping '\x10c8a' s = Yield '\x10cca' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EE
    foldMapping '\x10c8b' s = Yield '\x10ccb' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EF
    foldMapping '\x10c8c' s = Yield '\x10ccc' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EG
    foldMapping '\x10c8d' s = Yield '\x10ccd' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EGY
    foldMapping '\x10c8e' s = Yield '\x10cce' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EH
    foldMapping '\x10c8f' s = Yield '\x10ccf' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER I
    foldMapping '\x10c90' s = Yield '\x10cd0' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER II
    foldMapping '\x10c91' s = Yield '\x10cd1' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EJ
    foldMapping '\x10c92' s = Yield '\x10cd2' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EK
    foldMapping '\x10c93' s = Yield '\x10cd3' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER AK
    foldMapping '\x10c94' s = Yield '\x10cd4' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER UNK
    foldMapping '\x10c95' s = Yield '\x10cd5' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EL
    foldMapping '\x10c96' s = Yield '\x10cd6' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER ELY
    foldMapping '\x10c97' s = Yield '\x10cd7' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EM
    foldMapping '\x10c98' s = Yield '\x10cd8' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EN
    foldMapping '\x10c99' s = Yield '\x10cd9' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER ENY
    foldMapping '\x10c9a' s = Yield '\x10cda' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER O
    foldMapping '\x10c9b' s = Yield '\x10cdb' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER OO
    foldMapping '\x10c9c' s = Yield '\x10cdc' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER NIKOLSBURG OE
    foldMapping '\x10c9d' s = Yield '\x10cdd' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER RUDIMENTA OE
    foldMapping '\x10c9e' s = Yield '\x10cde' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER OEE
    foldMapping '\x10c9f' s = Yield '\x10cdf' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EP
    foldMapping '\x10ca0' s = Yield '\x10ce0' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EMP
    foldMapping '\x10ca1' s = Yield '\x10ce1' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER ER
    foldMapping '\x10ca2' s = Yield '\x10ce2' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER SHORT ER
    foldMapping '\x10ca3' s = Yield '\x10ce3' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER ES
    foldMapping '\x10ca4' s = Yield '\x10ce4' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER ESZ
    foldMapping '\x10ca5' s = Yield '\x10ce5' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER ET
    foldMapping '\x10ca6' s = Yield '\x10ce6' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER ENT
    foldMapping '\x10ca7' s = Yield '\x10ce7' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER ETY
    foldMapping '\x10ca8' s = Yield '\x10ce8' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER ECH
    foldMapping '\x10ca9' s = Yield '\x10ce9' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER U
    foldMapping '\x10caa' s = Yield '\x10cea' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER UU
    foldMapping '\x10cab' s = Yield '\x10ceb' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER NIKOLSBURG UE
    foldMapping '\x10cac' s = Yield '\x10cec' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER RUDIMENTA UE
    foldMapping '\x10cad' s = Yield '\x10ced' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EV
    foldMapping '\x10cae' s = Yield '\x10cee' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EZ
    foldMapping '\x10caf' s = Yield '\x10cef' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER EZS
    foldMapping '\x10cb0' s = Yield '\x10cf0' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER ENT-SHAPED SIGN
    foldMapping '\x10cb1' s = Yield '\x10cf1' (CC s '\x0000' '\x0000')
    -- OLD HUNGARIAN CAPITAL LETTER US
    foldMapping '\x10cb2' s = Yield '\x10cf2' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER ALIF
    foldMapping '\x1e900' s = Yield '\x1e922' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER DAALI
    foldMapping '\x1e901' s = Yield '\x1e923' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER LAAM
    foldMapping '\x1e902' s = Yield '\x1e924' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER MIIM
    foldMapping '\x1e903' s = Yield '\x1e925' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER BA
    foldMapping '\x1e904' s = Yield '\x1e926' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER SINNYIIYHE
    foldMapping '\x1e905' s = Yield '\x1e927' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER PE
    foldMapping '\x1e906' s = Yield '\x1e928' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER BHE
    foldMapping '\x1e907' s = Yield '\x1e929' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER RA
    foldMapping '\x1e908' s = Yield '\x1e92a' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER E
    foldMapping '\x1e909' s = Yield '\x1e92b' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER FA
    foldMapping '\x1e90a' s = Yield '\x1e92c' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER I
    foldMapping '\x1e90b' s = Yield '\x1e92d' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER O
    foldMapping '\x1e90c' s = Yield '\x1e92e' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER DHA
    foldMapping '\x1e90d' s = Yield '\x1e92f' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER YHE
    foldMapping '\x1e90e' s = Yield '\x1e930' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER WAW
    foldMapping '\x1e90f' s = Yield '\x1e931' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER NUN
    foldMapping '\x1e910' s = Yield '\x1e932' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER KAF
    foldMapping '\x1e911' s = Yield '\x1e933' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER YA
    foldMapping '\x1e912' s = Yield '\x1e934' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER U
    foldMapping '\x1e913' s = Yield '\x1e935' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER JIIM
    foldMapping '\x1e914' s = Yield '\x1e936' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER CHI
    foldMapping '\x1e915' s = Yield '\x1e937' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER HA
    foldMapping '\x1e916' s = Yield '\x1e938' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER QAAF
    foldMapping '\x1e917' s = Yield '\x1e939' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER GA
    foldMapping '\x1e918' s = Yield '\x1e93a' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER NYA
    foldMapping '\x1e919' s = Yield '\x1e93b' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER TU
    foldMapping '\x1e91a' s = Yield '\x1e93c' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER NHA
    foldMapping '\x1e91b' s = Yield '\x1e93d' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER VA
    foldMapping '\x1e91c' s = Yield '\x1e93e' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER KHA
    foldMapping '\x1e91d' s = Yield '\x1e93f' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER GBE
    foldMapping '\x1e91e' s = Yield '\x1e940' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER ZAL
    foldMapping '\x1e91f' s = Yield '\x1e941' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER KPO
    foldMapping '\x1e920' s = Yield '\x1e942' (CC s '\x0000' '\x0000')
    -- ADLAM CAPITAL LETTER SHA
    foldMapping '\x1e921' s = Yield '\x1e943' (CC s '\x0000' '\x0000')
    foldMapping c s = Yield (toLower c) (CC s '\0' '\0')