You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@unomi.apache.org by sh...@apache.org on 2017/01/09 16:22:03 UTC

[29/50] [abbrv] incubator-unomi git commit: - Introduce a new save method that supports batching - Use new save method batching to import Geonames (a lot) faster - Replace slow running ASCIIFoldingFilter call with faster MappingCharFilter call. See https

http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/ac2c9ba5/persistence-elasticsearch/core/src/main/resources/mapping-FoldToASCII.txt
----------------------------------------------------------------------
diff --git a/persistence-elasticsearch/core/src/main/resources/mapping-FoldToASCII.txt b/persistence-elasticsearch/core/src/main/resources/mapping-FoldToASCII.txt
new file mode 100644
index 0000000..9a84b6e
--- /dev/null
+++ b/persistence-elasticsearch/core/src/main/resources/mapping-FoldToASCII.txt
@@ -0,0 +1,3813 @@
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+# This map converts alphabetic, numeric, and symbolic Unicode characters
+# which are not in the first 127 ASCII characters (the "Basic Latin" Unicode
+# block) into their ASCII equivalents, if one exists.
+#
+# Characters from the following Unicode blocks are converted; however, only
+# those characters with reasonable ASCII alternatives are converted:
+#
+# - C1 Controls and Latin-1 Supplement: http://www.unicode.org/charts/PDF/U0080.pdf
+# - Latin Extended-A: http://www.unicode.org/charts/PDF/U0100.pdf
+# - Latin Extended-B: http://www.unicode.org/charts/PDF/U0180.pdf
+# - Latin Extended Additional: http://www.unicode.org/charts/PDF/U1E00.pdf
+# - Latin Extended-C: http://www.unicode.org/charts/PDF/U2C60.pdf
+# - Latin Extended-D: http://www.unicode.org/charts/PDF/UA720.pdf
+# - IPA Extensions: http://www.unicode.org/charts/PDF/U0250.pdf
+# - Phonetic Extensions: http://www.unicode.org/charts/PDF/U1D00.pdf
+# - Phonetic Extensions Supplement: http://www.unicode.org/charts/PDF/U1D80.pdf
+# - General Punctuation: http://www.unicode.org/charts/PDF/U2000.pdf
+# - Superscripts and Subscripts: http://www.unicode.org/charts/PDF/U2070.pdf
+# - Enclosed Alphanumerics: http://www.unicode.org/charts/PDF/U2460.pdf
+# - Dingbats: http://www.unicode.org/charts/PDF/U2700.pdf
+# - Supplemental Punctuation: http://www.unicode.org/charts/PDF/U2E00.pdf
+# - Alphabetic Presentation Forms: http://www.unicode.org/charts/PDF/UFB00.pdf
+# - Halfwidth and Fullwidth Forms: http://www.unicode.org/charts/PDF/UFF00.pdf
+#  
+# See: http://en.wikipedia.org/wiki/Latin_characters_in_Unicode
+#
+# The set of character conversions supported by this map is a superset of
+# those supported by the map represented by mapping-ISOLatin1Accent.txt.
+#
+# See the bottom of this file for the Perl script used to generate the contents
+# of this file (without this header) from ASCIIFoldingFilter.java.
+
+
+# Syntax:
+#   "source" => "target"
+#     "source".length() > 0 (source cannot be empty.)
+#     "target".length() >= 0 (target can be empty.)
+
+
+# �  [LATIN CAPITAL LETTER A WITH GRAVE]
+"\u00C0" => "A"
+
+# �  [LATIN CAPITAL LETTER A WITH ACUTE]
+"\u00C1" => "A"
+
+# �  [LATIN CAPITAL LETTER A WITH CIRCUMFLEX]
+"\u00C2" => "A"
+
+# �  [LATIN CAPITAL LETTER A WITH TILDE]
+"\u00C3" => "A"
+
+# �  [LATIN CAPITAL LETTER A WITH DIAERESIS]
+"\u00C4" => "A"
+
+# �  [LATIN CAPITAL LETTER A WITH RING ABOVE]
+"\u00C5" => "A"
+
+# \u0100  [LATIN CAPITAL LETTER A WITH MACRON]
+"\u0100" => "A"
+
+# \u0102  [LATIN CAPITAL LETTER A WITH BREVE]
+"\u0102" => "A"
+
+# \u0104  [LATIN CAPITAL LETTER A WITH OGONEK]
+"\u0104" => "A"
+
+# \u018f  http://en.wikipedia.org/wiki/Schwa  [LATIN CAPITAL LETTER SCHWA]
+"\u018F" => "A"
+
+# \u01cd  [LATIN CAPITAL LETTER A WITH CARON]
+"\u01CD" => "A"
+
+# \u01de  [LATIN CAPITAL LETTER A WITH DIAERESIS AND MACRON]
+"\u01DE" => "A"
+
+# \u01e0  [LATIN CAPITAL LETTER A WITH DOT ABOVE AND MACRON]
+"\u01E0" => "A"
+
+# \u01fa  [LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE]
+"\u01FA" => "A"
+
+# \u0200  [LATIN CAPITAL LETTER A WITH DOUBLE GRAVE]
+"\u0200" => "A"
+
+# \u0202  [LATIN CAPITAL LETTER A WITH INVERTED BREVE]
+"\u0202" => "A"
+
+# \u0226  [LATIN CAPITAL LETTER A WITH DOT ABOVE]
+"\u0226" => "A"
+
+# \u023a  [LATIN CAPITAL LETTER A WITH STROKE]
+"\u023A" => "A"
+
+# \u1d00  [LATIN LETTER SMALL CAPITAL A]
+"\u1D00" => "A"
+
+# \u1e00  [LATIN CAPITAL LETTER A WITH RING BELOW]
+"\u1E00" => "A"
+
+# \u1ea0  [LATIN CAPITAL LETTER A WITH DOT BELOW]
+"\u1EA0" => "A"
+
+# \u1ea2  [LATIN CAPITAL LETTER A WITH HOOK ABOVE]
+"\u1EA2" => "A"
+
+# \u1ea4  [LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE]
+"\u1EA4" => "A"
+
+# \u1ea6  [LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE]
+"\u1EA6" => "A"
+
+# \u1ea8  [LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE]
+"\u1EA8" => "A"
+
+# \u1eaa  [LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE]
+"\u1EAA" => "A"
+
+# \u1eac  [LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW]
+"\u1EAC" => "A"
+
+# \u1eae  [LATIN CAPITAL LETTER A WITH BREVE AND ACUTE]
+"\u1EAE" => "A"
+
+# \u1eb0  [LATIN CAPITAL LETTER A WITH BREVE AND GRAVE]
+"\u1EB0" => "A"
+
+# \u1eb2  [LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE]
+"\u1EB2" => "A"
+
+# \u1eb4  [LATIN CAPITAL LETTER A WITH BREVE AND TILDE]
+"\u1EB4" => "A"
+
+# \u1eb6  [LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW]
+"\u1EB6" => "A"
+
+# \u24b6  [CIRCLED LATIN CAPITAL LETTER A]
+"\u24B6" => "A"
+
+# \uff21  [FULLWIDTH LATIN CAPITAL LETTER A]
+"\uFF21" => "A"
+
+# �  [LATIN SMALL LETTER A WITH GRAVE]
+"\u00E0" => "a"
+
+# �  [LATIN SMALL LETTER A WITH ACUTE]
+"\u00E1" => "a"
+
+# �  [LATIN SMALL LETTER A WITH CIRCUMFLEX]
+"\u00E2" => "a"
+
+# �  [LATIN SMALL LETTER A WITH TILDE]
+"\u00E3" => "a"
+
+# �  [LATIN SMALL LETTER A WITH DIAERESIS]
+"\u00E4" => "a"
+
+# �  [LATIN SMALL LETTER A WITH RING ABOVE]
+"\u00E5" => "a"
+
+# \u0101  [LATIN SMALL LETTER A WITH MACRON]
+"\u0101" => "a"
+
+# \u0103  [LATIN SMALL LETTER A WITH BREVE]
+"\u0103" => "a"
+
+# \u0105  [LATIN SMALL LETTER A WITH OGONEK]
+"\u0105" => "a"
+
+# \u01ce  [LATIN SMALL LETTER A WITH CARON]
+"\u01CE" => "a"
+
+# \u01df  [LATIN SMALL LETTER A WITH DIAERESIS AND MACRON]
+"\u01DF" => "a"
+
+# \u01e1  [LATIN SMALL LETTER A WITH DOT ABOVE AND MACRON]
+"\u01E1" => "a"
+
+# \u01fb  [LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE]
+"\u01FB" => "a"
+
+# \u0201  [LATIN SMALL LETTER A WITH DOUBLE GRAVE]
+"\u0201" => "a"
+
+# \u0203  [LATIN SMALL LETTER A WITH INVERTED BREVE]
+"\u0203" => "a"
+
+# \u0227  [LATIN SMALL LETTER A WITH DOT ABOVE]
+"\u0227" => "a"
+
+# \u0250  [LATIN SMALL LETTER TURNED A]
+"\u0250" => "a"
+
+# \u0259  [LATIN SMALL LETTER SCHWA]
+"\u0259" => "a"
+
+# \u025a  [LATIN SMALL LETTER SCHWA WITH HOOK]
+"\u025A" => "a"
+
+# \u1d8f  [LATIN SMALL LETTER A WITH RETROFLEX HOOK]
+"\u1D8F" => "a"
+
+# \u1d95  [LATIN SMALL LETTER SCHWA WITH RETROFLEX HOOK]
+"\u1D95" => "a"
+
+# \u1ea1  [LATIN SMALL LETTER A WITH RING BELOW]
+"\u1E01" => "a"
+
+# \u1ea3  [LATIN SMALL LETTER A WITH RIGHT HALF RING]
+"\u1E9A" => "a"
+
+# \u1ea1  [LATIN SMALL LETTER A WITH DOT BELOW]
+"\u1EA1" => "a"
+
+# \u1ea3  [LATIN SMALL LETTER A WITH HOOK ABOVE]
+"\u1EA3" => "a"
+
+# \u1ea5  [LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE]
+"\u1EA5" => "a"
+
+# \u1ea7  [LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE]
+"\u1EA7" => "a"
+
+# \u1ea9  [LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE]
+"\u1EA9" => "a"
+
+# \u1eab  [LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE]
+"\u1EAB" => "a"
+
+# \u1ead  [LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW]
+"\u1EAD" => "a"
+
+# \u1eaf  [LATIN SMALL LETTER A WITH BREVE AND ACUTE]
+"\u1EAF" => "a"
+
+# \u1eb1  [LATIN SMALL LETTER A WITH BREVE AND GRAVE]
+"\u1EB1" => "a"
+
+# \u1eb3  [LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE]
+"\u1EB3" => "a"
+
+# \u1eb5  [LATIN SMALL LETTER A WITH BREVE AND TILDE]
+"\u1EB5" => "a"
+
+# \u1eb7  [LATIN SMALL LETTER A WITH BREVE AND DOT BELOW]
+"\u1EB7" => "a"
+
+# \u2090  [LATIN SUBSCRIPT SMALL LETTER A]
+"\u2090" => "a"
+
+# \u2094  [LATIN SUBSCRIPT SMALL LETTER SCHWA]
+"\u2094" => "a"
+
+# \u24d0  [CIRCLED LATIN SMALL LETTER A]
+"\u24D0" => "a"
+
+# \u2c65  [LATIN SMALL LETTER A WITH STROKE]
+"\u2C65" => "a"
+
+# \u2c6f  [LATIN CAPITAL LETTER TURNED A]
+"\u2C6F" => "a"
+
+# \uff41  [FULLWIDTH LATIN SMALL LETTER A]
+"\uFF41" => "a"
+
+# \ua732  [LATIN CAPITAL LETTER AA]
+"\uA732" => "AA"
+
+# �  [LATIN CAPITAL LETTER AE]
+"\u00C6" => "AE"
+
+# \u01e2  [LATIN CAPITAL LETTER AE WITH MACRON]
+"\u01E2" => "AE"
+
+# \u01fc  [LATIN CAPITAL LETTER AE WITH ACUTE]
+"\u01FC" => "AE"
+
+# \u1d01  [LATIN LETTER SMALL CAPITAL AE]
+"\u1D01" => "AE"
+
+# \ua734  [LATIN CAPITAL LETTER AO]
+"\uA734" => "AO"
+
+# \ua736  [LATIN CAPITAL LETTER AU]
+"\uA736" => "AU"
+
+# \ua738  [LATIN CAPITAL LETTER AV]
+"\uA738" => "AV"
+
+# \ua73a  [LATIN CAPITAL LETTER AV WITH HORIZONTAL BAR]
+"\uA73A" => "AV"
+
+# \ua73c  [LATIN CAPITAL LETTER AY]
+"\uA73C" => "AY"
+
+# \u249c  [PARENTHESIZED LATIN SMALL LETTER A]
+"\u249C" => "(a)"
+
+# \ua733  [LATIN SMALL LETTER AA]
+"\uA733" => "aa"
+
+# �  [LATIN SMALL LETTER AE]
+"\u00E6" => "ae"
+
+# \u01e3  [LATIN SMALL LETTER AE WITH MACRON]
+"\u01E3" => "ae"
+
+# \u01fd  [LATIN SMALL LETTER AE WITH ACUTE]
+"\u01FD" => "ae"
+
+# \u1d02  [LATIN SMALL LETTER TURNED AE]
+"\u1D02" => "ae"
+
+# \ua735  [LATIN SMALL LETTER AO]
+"\uA735" => "ao"
+
+# \ua737  [LATIN SMALL LETTER AU]
+"\uA737" => "au"
+
+# \ua739  [LATIN SMALL LETTER AV]
+"\uA739" => "av"
+
+# \ua73b  [LATIN SMALL LETTER AV WITH HORIZONTAL BAR]
+"\uA73B" => "av"
+
+# \ua73d  [LATIN SMALL LETTER AY]
+"\uA73D" => "ay"
+
+# \u0181  [LATIN CAPITAL LETTER B WITH HOOK]
+"\u0181" => "B"
+
+# \u0182  [LATIN CAPITAL LETTER B WITH TOPBAR]
+"\u0182" => "B"
+
+# \u0243  [LATIN CAPITAL LETTER B WITH STROKE]
+"\u0243" => "B"
+
+# \u0299  [LATIN LETTER SMALL CAPITAL B]
+"\u0299" => "B"
+
+# \u1d03  [LATIN LETTER SMALL CAPITAL BARRED B]
+"\u1D03" => "B"
+
+# \u1e02  [LATIN CAPITAL LETTER B WITH DOT ABOVE]
+"\u1E02" => "B"
+
+# \u1e04  [LATIN CAPITAL LETTER B WITH DOT BELOW]
+"\u1E04" => "B"
+
+# \u1e06  [LATIN CAPITAL LETTER B WITH LINE BELOW]
+"\u1E06" => "B"
+
+# \u24b7  [CIRCLED LATIN CAPITAL LETTER B]
+"\u24B7" => "B"
+
+# \uff22  [FULLWIDTH LATIN CAPITAL LETTER B]
+"\uFF22" => "B"
+
+# \u0180  [LATIN SMALL LETTER B WITH STROKE]
+"\u0180" => "b"
+
+# \u0183  [LATIN SMALL LETTER B WITH TOPBAR]
+"\u0183" => "b"
+
+# \u0253  [LATIN SMALL LETTER B WITH HOOK]
+"\u0253" => "b"
+
+# \u1d6c  [LATIN SMALL LETTER B WITH MIDDLE TILDE]
+"\u1D6C" => "b"
+
+# \u1d80  [LATIN SMALL LETTER B WITH PALATAL HOOK]
+"\u1D80" => "b"
+
+# \u1e03  [LATIN SMALL LETTER B WITH DOT ABOVE]
+"\u1E03" => "b"
+
+# \u1e05  [LATIN SMALL LETTER B WITH DOT BELOW]
+"\u1E05" => "b"
+
+# \u1e07  [LATIN SMALL LETTER B WITH LINE BELOW]
+"\u1E07" => "b"
+
+# \u24d1  [CIRCLED LATIN SMALL LETTER B]
+"\u24D1" => "b"
+
+# \uff42  [FULLWIDTH LATIN SMALL LETTER B]
+"\uFF42" => "b"
+
+# \u249d  [PARENTHESIZED LATIN SMALL LETTER B]
+"\u249D" => "(b)"
+
+# �  [LATIN CAPITAL LETTER C WITH CEDILLA]
+"\u00C7" => "C"
+
+# \u0106  [LATIN CAPITAL LETTER C WITH ACUTE]
+"\u0106" => "C"
+
+# \u0108  [LATIN CAPITAL LETTER C WITH CIRCUMFLEX]
+"\u0108" => "C"
+
+# \u010a  [LATIN CAPITAL LETTER C WITH DOT ABOVE]
+"\u010A" => "C"
+
+# \u010c  [LATIN CAPITAL LETTER C WITH CARON]
+"\u010C" => "C"
+
+# \u0187  [LATIN CAPITAL LETTER C WITH HOOK]
+"\u0187" => "C"
+
+# \u023b  [LATIN CAPITAL LETTER C WITH STROKE]
+"\u023B" => "C"
+
+# \u0297  [LATIN LETTER STRETCHED C]
+"\u0297" => "C"
+
+# \u1d04  [LATIN LETTER SMALL CAPITAL C]
+"\u1D04" => "C"
+
+# \u1e08  [LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE]
+"\u1E08" => "C"
+
+# \u24b8  [CIRCLED LATIN CAPITAL LETTER C]
+"\u24B8" => "C"
+
+# \uff23  [FULLWIDTH LATIN CAPITAL LETTER C]
+"\uFF23" => "C"
+
+# �  [LATIN SMALL LETTER C WITH CEDILLA]
+"\u00E7" => "c"
+
+# \u0107  [LATIN SMALL LETTER C WITH ACUTE]
+"\u0107" => "c"
+
+# \u0109  [LATIN SMALL LETTER C WITH CIRCUMFLEX]
+"\u0109" => "c"
+
+# \u010b  [LATIN SMALL LETTER C WITH DOT ABOVE]
+"\u010B" => "c"
+
+# \u010d  [LATIN SMALL LETTER C WITH CARON]
+"\u010D" => "c"
+
+# \u0188  [LATIN SMALL LETTER C WITH HOOK]
+"\u0188" => "c"
+
+# \u023c  [LATIN SMALL LETTER C WITH STROKE]
+"\u023C" => "c"
+
+# \u0255  [LATIN SMALL LETTER C WITH CURL]
+"\u0255" => "c"
+
+# \u1e09  [LATIN SMALL LETTER C WITH CEDILLA AND ACUTE]
+"\u1E09" => "c"
+
+# \u2184  [LATIN SMALL LETTER REVERSED C]
+"\u2184" => "c"
+
+# \u24d2  [CIRCLED LATIN SMALL LETTER C]
+"\u24D2" => "c"
+
+# \ua73e  [LATIN CAPITAL LETTER REVERSED C WITH DOT]
+"\uA73E" => "c"
+
+# \ua73f  [LATIN SMALL LETTER REVERSED C WITH DOT]
+"\uA73F" => "c"
+
+# \uff43  [FULLWIDTH LATIN SMALL LETTER C]
+"\uFF43" => "c"
+
+# \u249e  [PARENTHESIZED LATIN SMALL LETTER C]
+"\u249E" => "(c)"
+
+# �  [LATIN CAPITAL LETTER ETH]
+"\u00D0" => "D"
+
+# \u010e  [LATIN CAPITAL LETTER D WITH CARON]
+"\u010E" => "D"
+
+# \u0110  [LATIN CAPITAL LETTER D WITH STROKE]
+"\u0110" => "D"
+
+# \u0189  [LATIN CAPITAL LETTER AFRICAN D]
+"\u0189" => "D"
+
+# \u018a  [LATIN CAPITAL LETTER D WITH HOOK]
+"\u018A" => "D"
+
+# \u018b  [LATIN CAPITAL LETTER D WITH TOPBAR]
+"\u018B" => "D"
+
+# \u1d05  [LATIN LETTER SMALL CAPITAL D]
+"\u1D05" => "D"
+
+# \u1d06  [LATIN LETTER SMALL CAPITAL ETH]
+"\u1D06" => "D"
+
+# \u1e0a  [LATIN CAPITAL LETTER D WITH DOT ABOVE]
+"\u1E0A" => "D"
+
+# \u1e0c  [LATIN CAPITAL LETTER D WITH DOT BELOW]
+"\u1E0C" => "D"
+
+# \u1e0e  [LATIN CAPITAL LETTER D WITH LINE BELOW]
+"\u1E0E" => "D"
+
+# \u1e10  [LATIN CAPITAL LETTER D WITH CEDILLA]
+"\u1E10" => "D"
+
+# \u1e12  [LATIN CAPITAL LETTER D WITH CIRCUMFLEX BELOW]
+"\u1E12" => "D"
+
+# \u24b9  [CIRCLED LATIN CAPITAL LETTER D]
+"\u24B9" => "D"
+
+# \ua779  [LATIN CAPITAL LETTER INSULAR D]
+"\uA779" => "D"
+
+# \uff24  [FULLWIDTH LATIN CAPITAL LETTER D]
+"\uFF24" => "D"
+
+# �  [LATIN SMALL LETTER ETH]
+"\u00F0" => "d"
+
+# \u010f  [LATIN SMALL LETTER D WITH CARON]
+"\u010F" => "d"
+
+# \u0111  [LATIN SMALL LETTER D WITH STROKE]
+"\u0111" => "d"
+
+# \u018c  [LATIN SMALL LETTER D WITH TOPBAR]
+"\u018C" => "d"
+
+# \u0221  [LATIN SMALL LETTER D WITH CURL]
+"\u0221" => "d"
+
+# \u0256  [LATIN SMALL LETTER D WITH TAIL]
+"\u0256" => "d"
+
+# \u0257  [LATIN SMALL LETTER D WITH HOOK]
+"\u0257" => "d"
+
+# \u1d6d  [LATIN SMALL LETTER D WITH MIDDLE TILDE]
+"\u1D6D" => "d"
+
+# \u1d81  [LATIN SMALL LETTER D WITH PALATAL HOOK]
+"\u1D81" => "d"
+
+# \u1d91  [LATIN SMALL LETTER D WITH HOOK AND TAIL]
+"\u1D91" => "d"
+
+# \u1e0b  [LATIN SMALL LETTER D WITH DOT ABOVE]
+"\u1E0B" => "d"
+
+# \u1e0d  [LATIN SMALL LETTER D WITH DOT BELOW]
+"\u1E0D" => "d"
+
+# \u1e0f  [LATIN SMALL LETTER D WITH LINE BELOW]
+"\u1E0F" => "d"
+
+# \u1e11  [LATIN SMALL LETTER D WITH CEDILLA]
+"\u1E11" => "d"
+
+# \u1e13  [LATIN SMALL LETTER D WITH CIRCUMFLEX BELOW]
+"\u1E13" => "d"
+
+# \u24d3  [CIRCLED LATIN SMALL LETTER D]
+"\u24D3" => "d"
+
+# \ua77a  [LATIN SMALL LETTER INSULAR D]
+"\uA77A" => "d"
+
+# \uff44  [FULLWIDTH LATIN SMALL LETTER D]
+"\uFF44" => "d"
+
+# \u01c4  [LATIN CAPITAL LETTER DZ WITH CARON]
+"\u01C4" => "DZ"
+
+# \u01f1  [LATIN CAPITAL LETTER DZ]
+"\u01F1" => "DZ"
+
+# \u01c5  [LATIN CAPITAL LETTER D WITH SMALL LETTER Z WITH CARON]
+"\u01C5" => "Dz"
+
+# \u01f2  [LATIN CAPITAL LETTER D WITH SMALL LETTER Z]
+"\u01F2" => "Dz"
+
+# \u249f  [PARENTHESIZED LATIN SMALL LETTER D]
+"\u249F" => "(d)"
+
+# \u0238  [LATIN SMALL LETTER DB DIGRAPH]
+"\u0238" => "db"
+
+# \u01c6  [LATIN SMALL LETTER DZ WITH CARON]
+"\u01C6" => "dz"
+
+# \u01f3  [LATIN SMALL LETTER DZ]
+"\u01F3" => "dz"
+
+# \u02a3  [LATIN SMALL LETTER DZ DIGRAPH]
+"\u02A3" => "dz"
+
+# \u02a5  [LATIN SMALL LETTER DZ DIGRAPH WITH CURL]
+"\u02A5" => "dz"
+
+# �  [LATIN CAPITAL LETTER E WITH GRAVE]
+"\u00C8" => "E"
+
+# �  [LATIN CAPITAL LETTER E WITH ACUTE]
+"\u00C9" => "E"
+
+# �  [LATIN CAPITAL LETTER E WITH CIRCUMFLEX]
+"\u00CA" => "E"
+
+# �  [LATIN CAPITAL LETTER E WITH DIAERESIS]
+"\u00CB" => "E"
+
+# \u0112  [LATIN CAPITAL LETTER E WITH MACRON]
+"\u0112" => "E"
+
+# \u0114  [LATIN CAPITAL LETTER E WITH BREVE]
+"\u0114" => "E"
+
+# \u0116  [LATIN CAPITAL LETTER E WITH DOT ABOVE]
+"\u0116" => "E"
+
+# \u0118  [LATIN CAPITAL LETTER E WITH OGONEK]
+"\u0118" => "E"
+
+# \u011a  [LATIN CAPITAL LETTER E WITH CARON]
+"\u011A" => "E"
+
+# \u018e  [LATIN CAPITAL LETTER REVERSED E]
+"\u018E" => "E"
+
+# \u0190  [LATIN CAPITAL LETTER OPEN E]
+"\u0190" => "E"
+
+# \u0204  [LATIN CAPITAL LETTER E WITH DOUBLE GRAVE]
+"\u0204" => "E"
+
+# \u0206  [LATIN CAPITAL LETTER E WITH INVERTED BREVE]
+"\u0206" => "E"
+
+# \u0228  [LATIN CAPITAL LETTER E WITH CEDILLA]
+"\u0228" => "E"
+
+# \u0246  [LATIN CAPITAL LETTER E WITH STROKE]
+"\u0246" => "E"
+
+# \u1d07  [LATIN LETTER SMALL CAPITAL E]
+"\u1D07" => "E"
+
+# \u1e14  [LATIN CAPITAL LETTER E WITH MACRON AND GRAVE]
+"\u1E14" => "E"
+
+# \u1e16  [LATIN CAPITAL LETTER E WITH MACRON AND ACUTE]
+"\u1E16" => "E"
+
+# \u1e18  [LATIN CAPITAL LETTER E WITH CIRCUMFLEX BELOW]
+"\u1E18" => "E"
+
+# \u1e1a  [LATIN CAPITAL LETTER E WITH TILDE BELOW]
+"\u1E1A" => "E"
+
+# \u1e1c  [LATIN CAPITAL LETTER E WITH CEDILLA AND BREVE]
+"\u1E1C" => "E"
+
+# \u1eb8  [LATIN CAPITAL LETTER E WITH DOT BELOW]
+"\u1EB8" => "E"
+
+# \u1eba  [LATIN CAPITAL LETTER E WITH HOOK ABOVE]
+"\u1EBA" => "E"
+
+# \u1ebc  [LATIN CAPITAL LETTER E WITH TILDE]
+"\u1EBC" => "E"
+
+# \u1ebe  [LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE]
+"\u1EBE" => "E"
+
+# \u1ec0  [LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE]
+"\u1EC0" => "E"
+
+# \u1ec2  [LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE]
+"\u1EC2" => "E"
+
+# \u1ec4  [LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE]
+"\u1EC4" => "E"
+
+# \u1ec6  [LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW]
+"\u1EC6" => "E"
+
+# \u24ba  [CIRCLED LATIN CAPITAL LETTER E]
+"\u24BA" => "E"
+
+# \u2c7b  [LATIN LETTER SMALL CAPITAL TURNED E]
+"\u2C7B" => "E"
+
+# \uff25  [FULLWIDTH LATIN CAPITAL LETTER E]
+"\uFF25" => "E"
+
+# �  [LATIN SMALL LETTER E WITH GRAVE]
+"\u00E8" => "e"
+
+# �  [LATIN SMALL LETTER E WITH ACUTE]
+"\u00E9" => "e"
+
+# �  [LATIN SMALL LETTER E WITH CIRCUMFLEX]
+"\u00EA" => "e"
+
+# �  [LATIN SMALL LETTER E WITH DIAERESIS]
+"\u00EB" => "e"
+
+# \u0113  [LATIN SMALL LETTER E WITH MACRON]
+"\u0113" => "e"
+
+# \u0115  [LATIN SMALL LETTER E WITH BREVE]
+"\u0115" => "e"
+
+# \u0117  [LATIN SMALL LETTER E WITH DOT ABOVE]
+"\u0117" => "e"
+
+# \u0119  [LATIN SMALL LETTER E WITH OGONEK]
+"\u0119" => "e"
+
+# \u011b  [LATIN SMALL LETTER E WITH CARON]
+"\u011B" => "e"
+
+# \u01dd  [LATIN SMALL LETTER TURNED E]
+"\u01DD" => "e"
+
+# \u0205  [LATIN SMALL LETTER E WITH DOUBLE GRAVE]
+"\u0205" => "e"
+
+# \u0207  [LATIN SMALL LETTER E WITH INVERTED BREVE]
+"\u0207" => "e"
+
+# \u0229  [LATIN SMALL LETTER E WITH CEDILLA]
+"\u0229" => "e"
+
+# \u0247  [LATIN SMALL LETTER E WITH STROKE]
+"\u0247" => "e"
+
+# \u0258  [LATIN SMALL LETTER REVERSED E]
+"\u0258" => "e"
+
+# \u025b  [LATIN SMALL LETTER OPEN E]
+"\u025B" => "e"
+
+# \u025c  [LATIN SMALL LETTER REVERSED OPEN E]
+"\u025C" => "e"
+
+# \u025d  [LATIN SMALL LETTER REVERSED OPEN E WITH HOOK]
+"\u025D" => "e"
+
+# \u025e  [LATIN SMALL LETTER CLOSED REVERSED OPEN E]
+"\u025E" => "e"
+
+# \u029a  [LATIN SMALL LETTER CLOSED OPEN E]
+"\u029A" => "e"
+
+# \u1d08  [LATIN SMALL LETTER TURNED OPEN E]
+"\u1D08" => "e"
+
+# \u1d92  [LATIN SMALL LETTER E WITH RETROFLEX HOOK]
+"\u1D92" => "e"
+
+# \u1d93  [LATIN SMALL LETTER OPEN E WITH RETROFLEX HOOK]
+"\u1D93" => "e"
+
+# \u1d94  [LATIN SMALL LETTER REVERSED OPEN E WITH RETROFLEX HOOK]
+"\u1D94" => "e"
+
+# \u1e15  [LATIN SMALL LETTER E WITH MACRON AND GRAVE]
+"\u1E15" => "e"
+
+# \u1e17  [LATIN SMALL LETTER E WITH MACRON AND ACUTE]
+"\u1E17" => "e"
+
+# \u1e19  [LATIN SMALL LETTER E WITH CIRCUMFLEX BELOW]
+"\u1E19" => "e"
+
+# \u1e1b  [LATIN SMALL LETTER E WITH TILDE BELOW]
+"\u1E1B" => "e"
+
+# \u1e1d  [LATIN SMALL LETTER E WITH CEDILLA AND BREVE]
+"\u1E1D" => "e"
+
+# \u1eb9  [LATIN SMALL LETTER E WITH DOT BELOW]
+"\u1EB9" => "e"
+
+# \u1ebb  [LATIN SMALL LETTER E WITH HOOK ABOVE]
+"\u1EBB" => "e"
+
+# \u1ebd  [LATIN SMALL LETTER E WITH TILDE]
+"\u1EBD" => "e"
+
+# \u1ebf  [LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE]
+"\u1EBF" => "e"
+
+# \u1ec1  [LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE]
+"\u1EC1" => "e"
+
+# \u1ec3  [LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE]
+"\u1EC3" => "e"
+
+# \u1ec5  [LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE]
+"\u1EC5" => "e"
+
+# \u1ec7  [LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW]
+"\u1EC7" => "e"
+
+# \u2091  [LATIN SUBSCRIPT SMALL LETTER E]
+"\u2091" => "e"
+
+# \u24d4  [CIRCLED LATIN SMALL LETTER E]
+"\u24D4" => "e"
+
+# \u2c78  [LATIN SMALL LETTER E WITH NOTCH]
+"\u2C78" => "e"
+
+# \uff45  [FULLWIDTH LATIN SMALL LETTER E]
+"\uFF45" => "e"
+
+# \u24a0  [PARENTHESIZED LATIN SMALL LETTER E]
+"\u24A0" => "(e)"
+
+# \u0191  [LATIN CAPITAL LETTER F WITH HOOK]
+"\u0191" => "F"
+
+# \u1e1e  [LATIN CAPITAL LETTER F WITH DOT ABOVE]
+"\u1E1E" => "F"
+
+# \u24bb  [CIRCLED LATIN CAPITAL LETTER F]
+"\u24BB" => "F"
+
+# \ua730  [LATIN LETTER SMALL CAPITAL F]
+"\uA730" => "F"
+
+# \ua77b  [LATIN CAPITAL LETTER INSULAR F]
+"\uA77B" => "F"
+
+# \ua7fb  [LATIN EPIGRAPHIC LETTER REVERSED F]
+"\uA7FB" => "F"
+
+# \uff26  [FULLWIDTH LATIN CAPITAL LETTER F]
+"\uFF26" => "F"
+
+# \u0192  [LATIN SMALL LETTER F WITH HOOK]
+"\u0192" => "f"
+
+# \u1d6e  [LATIN SMALL LETTER F WITH MIDDLE TILDE]
+"\u1D6E" => "f"
+
+# \u1d82  [LATIN SMALL LETTER F WITH PALATAL HOOK]
+"\u1D82" => "f"
+
+# \u1e1f  [LATIN SMALL LETTER F WITH DOT ABOVE]
+"\u1E1F" => "f"
+
+# \u1e9b  [LATIN SMALL LETTER LONG S WITH DOT ABOVE]
+"\u1E9B" => "f"
+
+# \u24d5  [CIRCLED LATIN SMALL LETTER F]
+"\u24D5" => "f"
+
+# \ua77c  [LATIN SMALL LETTER INSULAR F]
+"\uA77C" => "f"
+
+# \uff46  [FULLWIDTH LATIN SMALL LETTER F]
+"\uFF46" => "f"
+
+# \u24a1  [PARENTHESIZED LATIN SMALL LETTER F]
+"\u24A1" => "(f)"
+
+# \ufb00  [LATIN SMALL LIGATURE FF]
+"\uFB00" => "ff"
+
+# \ufb03  [LATIN SMALL LIGATURE FFI]
+"\uFB03" => "ffi"
+
+# \ufb04  [LATIN SMALL LIGATURE FFL]
+"\uFB04" => "ffl"
+
+# \ufb01  [LATIN SMALL LIGATURE FI]
+"\uFB01" => "fi"
+
+# \ufb02  [LATIN SMALL LIGATURE FL]
+"\uFB02" => "fl"
+
+# \u011c  [LATIN CAPITAL LETTER G WITH CIRCUMFLEX]
+"\u011C" => "G"
+
+# \u011e  [LATIN CAPITAL LETTER G WITH BREVE]
+"\u011E" => "G"
+
+# \u0120  [LATIN CAPITAL LETTER G WITH DOT ABOVE]
+"\u0120" => "G"
+
+# \u0122  [LATIN CAPITAL LETTER G WITH CEDILLA]
+"\u0122" => "G"
+
+# \u0193  [LATIN CAPITAL LETTER G WITH HOOK]
+"\u0193" => "G"
+
+# \u01e4  [LATIN CAPITAL LETTER G WITH STROKE]
+"\u01E4" => "G"
+
+# \u01e5  [LATIN SMALL LETTER G WITH STROKE]
+"\u01E5" => "G"
+
+# \u01e6  [LATIN CAPITAL LETTER G WITH CARON]
+"\u01E6" => "G"
+
+# \u01e7  [LATIN SMALL LETTER G WITH CARON]
+"\u01E7" => "G"
+
+# \u01f4  [LATIN CAPITAL LETTER G WITH ACUTE]
+"\u01F4" => "G"
+
+# \u0262  [LATIN LETTER SMALL CAPITAL G]
+"\u0262" => "G"
+
+# \u029b  [LATIN LETTER SMALL CAPITAL G WITH HOOK]
+"\u029B" => "G"
+
+# \u1e20  [LATIN CAPITAL LETTER G WITH MACRON]
+"\u1E20" => "G"
+
+# \u24bc  [CIRCLED LATIN CAPITAL LETTER G]
+"\u24BC" => "G"
+
+# \ua77d  [LATIN CAPITAL LETTER INSULAR G]
+"\uA77D" => "G"
+
+# \ua77e  [LATIN CAPITAL LETTER TURNED INSULAR G]
+"\uA77E" => "G"
+
+# \uff27  [FULLWIDTH LATIN CAPITAL LETTER G]
+"\uFF27" => "G"
+
+# \u011d  [LATIN SMALL LETTER G WITH CIRCUMFLEX]
+"\u011D" => "g"
+
+# \u011f  [LATIN SMALL LETTER G WITH BREVE]
+"\u011F" => "g"
+
+# \u0121  [LATIN SMALL LETTER G WITH DOT ABOVE]
+"\u0121" => "g"
+
+# \u0123  [LATIN SMALL LETTER G WITH CEDILLA]
+"\u0123" => "g"
+
+# \u01f5  [LATIN SMALL LETTER G WITH ACUTE]
+"\u01F5" => "g"
+
+# \u0260  [LATIN SMALL LETTER G WITH HOOK]
+"\u0260" => "g"
+
+# \u0261  [LATIN SMALL LETTER SCRIPT G]
+"\u0261" => "g"
+
+# \u1d77  [LATIN SMALL LETTER TURNED G]
+"\u1D77" => "g"
+
+# \u1d79  [LATIN SMALL LETTER INSULAR G]
+"\u1D79" => "g"
+
+# \u1d83  [LATIN SMALL LETTER G WITH PALATAL HOOK]
+"\u1D83" => "g"
+
+# \u1e21  [LATIN SMALL LETTER G WITH MACRON]
+"\u1E21" => "g"
+
+# \u24d6  [CIRCLED LATIN SMALL LETTER G]
+"\u24D6" => "g"
+
+# \ua77f  [LATIN SMALL LETTER TURNED INSULAR G]
+"\uA77F" => "g"
+
+# \uff47  [FULLWIDTH LATIN SMALL LETTER G]
+"\uFF47" => "g"
+
+# \u24a2  [PARENTHESIZED LATIN SMALL LETTER G]
+"\u24A2" => "(g)"
+
+# \u0124  [LATIN CAPITAL LETTER H WITH CIRCUMFLEX]
+"\u0124" => "H"
+
+# \u0126  [LATIN CAPITAL LETTER H WITH STROKE]
+"\u0126" => "H"
+
+# \u021e  [LATIN CAPITAL LETTER H WITH CARON]
+"\u021E" => "H"
+
+# \u029c  [LATIN LETTER SMALL CAPITAL H]
+"\u029C" => "H"
+
+# \u1e22  [LATIN CAPITAL LETTER H WITH DOT ABOVE]
+"\u1E22" => "H"
+
+# \u1e24  [LATIN CAPITAL LETTER H WITH DOT BELOW]
+"\u1E24" => "H"
+
+# \u1e26  [LATIN CAPITAL LETTER H WITH DIAERESIS]
+"\u1E26" => "H"
+
+# \u1e28  [LATIN CAPITAL LETTER H WITH CEDILLA]
+"\u1E28" => "H"
+
+# \u1e2a  [LATIN CAPITAL LETTER H WITH BREVE BELOW]
+"\u1E2A" => "H"
+
+# \u24bd  [CIRCLED LATIN CAPITAL LETTER H]
+"\u24BD" => "H"
+
+# \u2c67  [LATIN CAPITAL LETTER H WITH DESCENDER]
+"\u2C67" => "H"
+
+# \u2c75  [LATIN CAPITAL LETTER HALF H]
+"\u2C75" => "H"
+
+# \uff28  [FULLWIDTH LATIN CAPITAL LETTER H]
+"\uFF28" => "H"
+
+# \u0125  [LATIN SMALL LETTER H WITH CIRCUMFLEX]
+"\u0125" => "h"
+
+# \u0127  [LATIN SMALL LETTER H WITH STROKE]
+"\u0127" => "h"
+
+# \u021f  [LATIN SMALL LETTER H WITH CARON]
+"\u021F" => "h"
+
+# \u0265  [LATIN SMALL LETTER TURNED H]
+"\u0265" => "h"
+
+# \u0266  [LATIN SMALL LETTER H WITH HOOK]
+"\u0266" => "h"
+
+# \u02ae  [LATIN SMALL LETTER TURNED H WITH FISHHOOK]
+"\u02AE" => "h"
+
+# \u02af  [LATIN SMALL LETTER TURNED H WITH FISHHOOK AND TAIL]
+"\u02AF" => "h"
+
+# \u1e23  [LATIN SMALL LETTER H WITH DOT ABOVE]
+"\u1E23" => "h"
+
+# \u1e25  [LATIN SMALL LETTER H WITH DOT BELOW]
+"\u1E25" => "h"
+
+# \u1e27  [LATIN SMALL LETTER H WITH DIAERESIS]
+"\u1E27" => "h"
+
+# \u1e29  [LATIN SMALL LETTER H WITH CEDILLA]
+"\u1E29" => "h"
+
+# \u1e2b  [LATIN SMALL LETTER H WITH BREVE BELOW]
+"\u1E2B" => "h"
+
+# \u1e96  [LATIN SMALL LETTER H WITH LINE BELOW]
+"\u1E96" => "h"
+
+# \u24d7  [CIRCLED LATIN SMALL LETTER H]
+"\u24D7" => "h"
+
+# \u2c68  [LATIN SMALL LETTER H WITH DESCENDER]
+"\u2C68" => "h"
+
+# \u2c76  [LATIN SMALL LETTER HALF H]
+"\u2C76" => "h"
+
+# \uff48  [FULLWIDTH LATIN SMALL LETTER H]
+"\uFF48" => "h"
+
+# \u01f6  http://en.wikipedia.org/wiki/Hwair  [LATIN CAPITAL LETTER HWAIR]
+"\u01F6" => "HV"
+
+# \u24a3  [PARENTHESIZED LATIN SMALL LETTER H]
+"\u24A3" => "(h)"
+
+# \u0195  [LATIN SMALL LETTER HV]
+"\u0195" => "hv"
+
+# �  [LATIN CAPITAL LETTER I WITH GRAVE]
+"\u00CC" => "I"
+
+# �  [LATIN CAPITAL LETTER I WITH ACUTE]
+"\u00CD" => "I"
+
+# �  [LATIN CAPITAL LETTER I WITH CIRCUMFLEX]
+"\u00CE" => "I"
+
+# �  [LATIN CAPITAL LETTER I WITH DIAERESIS]
+"\u00CF" => "I"
+
+# \u0128  [LATIN CAPITAL LETTER I WITH TILDE]
+"\u0128" => "I"
+
+# \u012a  [LATIN CAPITAL LETTER I WITH MACRON]
+"\u012A" => "I"
+
+# \u012c  [LATIN CAPITAL LETTER I WITH BREVE]
+"\u012C" => "I"
+
+# \u012e  [LATIN CAPITAL LETTER I WITH OGONEK]
+"\u012E" => "I"
+
+# \u0130  [LATIN CAPITAL LETTER I WITH DOT ABOVE]
+"\u0130" => "I"
+
+# \u0196  [LATIN CAPITAL LETTER IOTA]
+"\u0196" => "I"
+
+# \u0197  [LATIN CAPITAL LETTER I WITH STROKE]
+"\u0197" => "I"
+
+# \u01cf  [LATIN CAPITAL LETTER I WITH CARON]
+"\u01CF" => "I"
+
+# \u0208  [LATIN CAPITAL LETTER I WITH DOUBLE GRAVE]
+"\u0208" => "I"
+
+# \u020a  [LATIN CAPITAL LETTER I WITH INVERTED BREVE]
+"\u020A" => "I"
+
+# \u026a  [LATIN LETTER SMALL CAPITAL I]
+"\u026A" => "I"
+
+# \u1d7b  [LATIN SMALL CAPITAL LETTER I WITH STROKE]
+"\u1D7B" => "I"
+
+# \u1e2c  [LATIN CAPITAL LETTER I WITH TILDE BELOW]
+"\u1E2C" => "I"
+
+# \u1e2e  [LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE]
+"\u1E2E" => "I"
+
+# \u1ec8  [LATIN CAPITAL LETTER I WITH HOOK ABOVE]
+"\u1EC8" => "I"
+
+# \u1eca  [LATIN CAPITAL LETTER I WITH DOT BELOW]
+"\u1ECA" => "I"
+
+# \u24be  [CIRCLED LATIN CAPITAL LETTER I]
+"\u24BE" => "I"
+
+# \ua7fe  [LATIN EPIGRAPHIC LETTER I LONGA]
+"\uA7FE" => "I"
+
+# \uff29  [FULLWIDTH LATIN CAPITAL LETTER I]
+"\uFF29" => "I"
+
+# �  [LATIN SMALL LETTER I WITH GRAVE]
+"\u00EC" => "i"
+
+# �  [LATIN SMALL LETTER I WITH ACUTE]
+"\u00ED" => "i"
+
+# �  [LATIN SMALL LETTER I WITH CIRCUMFLEX]
+"\u00EE" => "i"
+
+# �  [LATIN SMALL LETTER I WITH DIAERESIS]
+"\u00EF" => "i"
+
+# \u0129  [LATIN SMALL LETTER I WITH TILDE]
+"\u0129" => "i"
+
+# \u012b  [LATIN SMALL LETTER I WITH MACRON]
+"\u012B" => "i"
+
+# \u012d  [LATIN SMALL LETTER I WITH BREVE]
+"\u012D" => "i"
+
+# \u012f  [LATIN SMALL LETTER I WITH OGONEK]
+"\u012F" => "i"
+
+# \u0131  [LATIN SMALL LETTER DOTLESS I]
+"\u0131" => "i"
+
+# \u01d0  [LATIN SMALL LETTER I WITH CARON]
+"\u01D0" => "i"
+
+# \u0209  [LATIN SMALL LETTER I WITH DOUBLE GRAVE]
+"\u0209" => "i"
+
+# \u020b  [LATIN SMALL LETTER I WITH INVERTED BREVE]
+"\u020B" => "i"
+
+# \u0268  [LATIN SMALL LETTER I WITH STROKE]
+"\u0268" => "i"
+
+# \u1d09  [LATIN SMALL LETTER TURNED I]
+"\u1D09" => "i"
+
+# \u1d62  [LATIN SUBSCRIPT SMALL LETTER I]
+"\u1D62" => "i"
+
+# \u1d7c  [LATIN SMALL LETTER IOTA WITH STROKE]
+"\u1D7C" => "i"
+
+# \u1d96  [LATIN SMALL LETTER I WITH RETROFLEX HOOK]
+"\u1D96" => "i"
+
+# \u1e2d  [LATIN SMALL LETTER I WITH TILDE BELOW]
+"\u1E2D" => "i"
+
+# \u1e2f  [LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE]
+"\u1E2F" => "i"
+
+# \u1ec9  [LATIN SMALL LETTER I WITH HOOK ABOVE]
+"\u1EC9" => "i"
+
+# \u1ecb  [LATIN SMALL LETTER I WITH DOT BELOW]
+"\u1ECB" => "i"
+
+# \u2071  [SUPERSCRIPT LATIN SMALL LETTER I]
+"\u2071" => "i"
+
+# \u24d8  [CIRCLED LATIN SMALL LETTER I]
+"\u24D8" => "i"
+
+# \uff49  [FULLWIDTH LATIN SMALL LETTER I]
+"\uFF49" => "i"
+
+# \u0132  [LATIN CAPITAL LIGATURE IJ]
+"\u0132" => "IJ"
+
+# \u24a4  [PARENTHESIZED LATIN SMALL LETTER I]
+"\u24A4" => "(i)"
+
+# \u0133  [LATIN SMALL LIGATURE IJ]
+"\u0133" => "ij"
+
+# \u0134  [LATIN CAPITAL LETTER J WITH CIRCUMFLEX]
+"\u0134" => "J"
+
+# \u0248  [LATIN CAPITAL LETTER J WITH STROKE]
+"\u0248" => "J"
+
+# \u1d0a  [LATIN LETTER SMALL CAPITAL J]
+"\u1D0A" => "J"
+
+# \u24bf  [CIRCLED LATIN CAPITAL LETTER J]
+"\u24BF" => "J"
+
+# \uff2a  [FULLWIDTH LATIN CAPITAL LETTER J]
+"\uFF2A" => "J"
+
+# \u0135  [LATIN SMALL LETTER J WITH CIRCUMFLEX]
+"\u0135" => "j"
+
+# \u01f0  [LATIN SMALL LETTER J WITH CARON]
+"\u01F0" => "j"
+
+# \u0237  [LATIN SMALL LETTER DOTLESS J]
+"\u0237" => "j"
+
+# \u0249  [LATIN SMALL LETTER J WITH STROKE]
+"\u0249" => "j"
+
+# \u025f  [LATIN SMALL LETTER DOTLESS J WITH STROKE]
+"\u025F" => "j"
+
+# \u0284  [LATIN SMALL LETTER DOTLESS J WITH STROKE AND HOOK]
+"\u0284" => "j"
+
+# \u029d  [LATIN SMALL LETTER J WITH CROSSED-TAIL]
+"\u029D" => "j"
+
+# \u24d9  [CIRCLED LATIN SMALL LETTER J]
+"\u24D9" => "j"
+
+# \u2c7c  [LATIN SUBSCRIPT SMALL LETTER J]
+"\u2C7C" => "j"
+
+# \uff4a  [FULLWIDTH LATIN SMALL LETTER J]
+"\uFF4A" => "j"
+
+# \u24a5  [PARENTHESIZED LATIN SMALL LETTER J]
+"\u24A5" => "(j)"
+
+# \u0136  [LATIN CAPITAL LETTER K WITH CEDILLA]
+"\u0136" => "K"
+
+# \u0198  [LATIN CAPITAL LETTER K WITH HOOK]
+"\u0198" => "K"
+
+# \u01e8  [LATIN CAPITAL LETTER K WITH CARON]
+"\u01E8" => "K"
+
+# \u1d0b  [LATIN LETTER SMALL CAPITAL K]
+"\u1D0B" => "K"
+
+# \u1e30  [LATIN CAPITAL LETTER K WITH ACUTE]
+"\u1E30" => "K"
+
+# \u1e32  [LATIN CAPITAL LETTER K WITH DOT BELOW]
+"\u1E32" => "K"
+
+# \u1e34  [LATIN CAPITAL LETTER K WITH LINE BELOW]
+"\u1E34" => "K"
+
+# \u24c0  [CIRCLED LATIN CAPITAL LETTER K]
+"\u24C0" => "K"
+
+# \u2c69  [LATIN CAPITAL LETTER K WITH DESCENDER]
+"\u2C69" => "K"
+
+# \ua740  [LATIN CAPITAL LETTER K WITH STROKE]
+"\uA740" => "K"
+
+# \ua742  [LATIN CAPITAL LETTER K WITH DIAGONAL STROKE]
+"\uA742" => "K"
+
+# \ua744  [LATIN CAPITAL LETTER K WITH STROKE AND DIAGONAL STROKE]
+"\uA744" => "K"
+
+# \uff2b  [FULLWIDTH LATIN CAPITAL LETTER K]
+"\uFF2B" => "K"
+
+# \u0137  [LATIN SMALL LETTER K WITH CEDILLA]
+"\u0137" => "k"
+
+# \u0199  [LATIN SMALL LETTER K WITH HOOK]
+"\u0199" => "k"
+
+# \u01e9  [LATIN SMALL LETTER K WITH CARON]
+"\u01E9" => "k"
+
+# \u029e  [LATIN SMALL LETTER TURNED K]
+"\u029E" => "k"
+
+# \u1d84  [LATIN SMALL LETTER K WITH PALATAL HOOK]
+"\u1D84" => "k"
+
+# \u1e31  [LATIN SMALL LETTER K WITH ACUTE]
+"\u1E31" => "k"
+
+# \u1e33  [LATIN SMALL LETTER K WITH DOT BELOW]
+"\u1E33" => "k"
+
+# \u1e35  [LATIN SMALL LETTER K WITH LINE BELOW]
+"\u1E35" => "k"
+
+# \u24da  [CIRCLED LATIN SMALL LETTER K]
+"\u24DA" => "k"
+
+# \u2c6a  [LATIN SMALL LETTER K WITH DESCENDER]
+"\u2C6A" => "k"
+
+# \ua741  [LATIN SMALL LETTER K WITH STROKE]
+"\uA741" => "k"
+
+# \ua743  [LATIN SMALL LETTER K WITH DIAGONAL STROKE]
+"\uA743" => "k"
+
+# \ua745  [LATIN SMALL LETTER K WITH STROKE AND DIAGONAL STROKE]
+"\uA745" => "k"
+
+# \uff4b  [FULLWIDTH LATIN SMALL LETTER K]
+"\uFF4B" => "k"
+
+# \u24a6  [PARENTHESIZED LATIN SMALL LETTER K]
+"\u24A6" => "(k)"
+
+# \u0139  [LATIN CAPITAL LETTER L WITH ACUTE]
+"\u0139" => "L"
+
+# \u013b  [LATIN CAPITAL LETTER L WITH CEDILLA]
+"\u013B" => "L"
+
+# \u013d  [LATIN CAPITAL LETTER L WITH CARON]
+"\u013D" => "L"
+
+# \u013f  [LATIN CAPITAL LETTER L WITH MIDDLE DOT]
+"\u013F" => "L"
+
+# \u0141  [LATIN CAPITAL LETTER L WITH STROKE]
+"\u0141" => "L"
+
+# \u023d  [LATIN CAPITAL LETTER L WITH BAR]
+"\u023D" => "L"
+
+# \u029f  [LATIN LETTER SMALL CAPITAL L]
+"\u029F" => "L"
+
+# \u1d0c  [LATIN LETTER SMALL CAPITAL L WITH STROKE]
+"\u1D0C" => "L"
+
+# \u1e36  [LATIN CAPITAL LETTER L WITH DOT BELOW]
+"\u1E36" => "L"
+
+# \u1e38  [LATIN CAPITAL LETTER L WITH DOT BELOW AND MACRON]
+"\u1E38" => "L"
+
+# \u1e3a  [LATIN CAPITAL LETTER L WITH LINE BELOW]
+"\u1E3A" => "L"
+
+# \u1e3c  [LATIN CAPITAL LETTER L WITH CIRCUMFLEX BELOW]
+"\u1E3C" => "L"
+
+# \u24c1  [CIRCLED LATIN CAPITAL LETTER L]
+"\u24C1" => "L"
+
+# \u2c60  [LATIN CAPITAL LETTER L WITH DOUBLE BAR]
+"\u2C60" => "L"
+
+# \u2c62  [LATIN CAPITAL LETTER L WITH MIDDLE TILDE]
+"\u2C62" => "L"
+
+# \ua746  [LATIN CAPITAL LETTER BROKEN L]
+"\uA746" => "L"
+
+# \ua748  [LATIN CAPITAL LETTER L WITH HIGH STROKE]
+"\uA748" => "L"
+
+# \ua780  [LATIN CAPITAL LETTER TURNED L]
+"\uA780" => "L"
+
+# \uff2c  [FULLWIDTH LATIN CAPITAL LETTER L]
+"\uFF2C" => "L"
+
+# \u013a  [LATIN SMALL LETTER L WITH ACUTE]
+"\u013A" => "l"
+
+# \u013c  [LATIN SMALL LETTER L WITH CEDILLA]
+"\u013C" => "l"
+
+# \u013e  [LATIN SMALL LETTER L WITH CARON]
+"\u013E" => "l"
+
+# \u0140  [LATIN SMALL LETTER L WITH MIDDLE DOT]
+"\u0140" => "l"
+
+# \u0142  [LATIN SMALL LETTER L WITH STROKE]
+"\u0142" => "l"
+
+# \u019a  [LATIN SMALL LETTER L WITH BAR]
+"\u019A" => "l"
+
+# \u0234  [LATIN SMALL LETTER L WITH CURL]
+"\u0234" => "l"
+
+# \u026b  [LATIN SMALL LETTER L WITH MIDDLE TILDE]
+"\u026B" => "l"
+
+# \u026c  [LATIN SMALL LETTER L WITH BELT]
+"\u026C" => "l"
+
+# \u026d  [LATIN SMALL LETTER L WITH RETROFLEX HOOK]
+"\u026D" => "l"
+
+# \u1d85  [LATIN SMALL LETTER L WITH PALATAL HOOK]
+"\u1D85" => "l"
+
+# \u1e37  [LATIN SMALL LETTER L WITH DOT BELOW]
+"\u1E37" => "l"
+
+# \u1e39  [LATIN SMALL LETTER L WITH DOT BELOW AND MACRON]
+"\u1E39" => "l"
+
+# \u1e3b  [LATIN SMALL LETTER L WITH LINE BELOW]
+"\u1E3B" => "l"
+
+# \u1e3d  [LATIN SMALL LETTER L WITH CIRCUMFLEX BELOW]
+"\u1E3D" => "l"
+
+# \u24db  [CIRCLED LATIN SMALL LETTER L]
+"\u24DB" => "l"
+
+# \u2c61  [LATIN SMALL LETTER L WITH DOUBLE BAR]
+"\u2C61" => "l"
+
+# \ua747  [LATIN SMALL LETTER BROKEN L]
+"\uA747" => "l"
+
+# \ua749  [LATIN SMALL LETTER L WITH HIGH STROKE]
+"\uA749" => "l"
+
+# \ua781  [LATIN SMALL LETTER TURNED L]
+"\uA781" => "l"
+
+# \uff4c  [FULLWIDTH LATIN SMALL LETTER L]
+"\uFF4C" => "l"
+
+# \u01c7  [LATIN CAPITAL LETTER LJ]
+"\u01C7" => "LJ"
+
+# \u1efa  [LATIN CAPITAL LETTER MIDDLE-WELSH LL]
+"\u1EFA" => "LL"
+
+# \u01c8  [LATIN CAPITAL LETTER L WITH SMALL LETTER J]
+"\u01C8" => "Lj"
+
+# \u24a7  [PARENTHESIZED LATIN SMALL LETTER L]
+"\u24A7" => "(l)"
+
+# \u01c9  [LATIN SMALL LETTER LJ]
+"\u01C9" => "lj"
+
+# \u1efb  [LATIN SMALL LETTER MIDDLE-WELSH LL]
+"\u1EFB" => "ll"
+
+# \u02aa  [LATIN SMALL LETTER LS DIGRAPH]
+"\u02AA" => "ls"
+
+# \u02ab  [LATIN SMALL LETTER LZ DIGRAPH]
+"\u02AB" => "lz"
+
+# \u019c  [LATIN CAPITAL LETTER TURNED M]
+"\u019C" => "M"
+
+# \u1d0d  [LATIN LETTER SMALL CAPITAL M]
+"\u1D0D" => "M"
+
+# \u1e3e  [LATIN CAPITAL LETTER M WITH ACUTE]
+"\u1E3E" => "M"
+
+# \u1e40  [LATIN CAPITAL LETTER M WITH DOT ABOVE]
+"\u1E40" => "M"
+
+# \u1e42  [LATIN CAPITAL LETTER M WITH DOT BELOW]
+"\u1E42" => "M"
+
+# \u24c2  [CIRCLED LATIN CAPITAL LETTER M]
+"\u24C2" => "M"
+
+# \u2c6e  [LATIN CAPITAL LETTER M WITH HOOK]
+"\u2C6E" => "M"
+
+# \ua7fd  [LATIN EPIGRAPHIC LETTER INVERTED M]
+"\uA7FD" => "M"
+
+# \ua7ff  [LATIN EPIGRAPHIC LETTER ARCHAIC M]
+"\uA7FF" => "M"
+
+# \uff2d  [FULLWIDTH LATIN CAPITAL LETTER M]
+"\uFF2D" => "M"
+
+# \u026f  [LATIN SMALL LETTER TURNED M]
+"\u026F" => "m"
+
+# \u0270  [LATIN SMALL LETTER TURNED M WITH LONG LEG]
+"\u0270" => "m"
+
+# \u0271  [LATIN SMALL LETTER M WITH HOOK]
+"\u0271" => "m"
+
+# \u1d6f  [LATIN SMALL LETTER M WITH MIDDLE TILDE]
+"\u1D6F" => "m"
+
+# \u1d86  [LATIN SMALL LETTER M WITH PALATAL HOOK]
+"\u1D86" => "m"
+
+# \u1e3f  [LATIN SMALL LETTER M WITH ACUTE]
+"\u1E3F" => "m"
+
+# \u1e41  [LATIN SMALL LETTER M WITH DOT ABOVE]
+"\u1E41" => "m"
+
+# \u1e43  [LATIN SMALL LETTER M WITH DOT BELOW]
+"\u1E43" => "m"
+
+# \u24dc  [CIRCLED LATIN SMALL LETTER M]
+"\u24DC" => "m"
+
+# \uff4d  [FULLWIDTH LATIN SMALL LETTER M]
+"\uFF4D" => "m"
+
+# \u24a8  [PARENTHESIZED LATIN SMALL LETTER M]
+"\u24A8" => "(m)"
+
+# �  [LATIN CAPITAL LETTER N WITH TILDE]
+"\u00D1" => "N"
+
+# \u0143  [LATIN CAPITAL LETTER N WITH ACUTE]
+"\u0143" => "N"
+
+# \u0145  [LATIN CAPITAL LETTER N WITH CEDILLA]
+"\u0145" => "N"
+
+# \u0147  [LATIN CAPITAL LETTER N WITH CARON]
+"\u0147" => "N"
+
+# \u014a  http://en.wikipedia.org/wiki/Eng_(letter)  [LATIN CAPITAL LETTER ENG]
+"\u014A" => "N"
+
+# \u019d  [LATIN CAPITAL LETTER N WITH LEFT HOOK]
+"\u019D" => "N"
+
+# \u01f8  [LATIN CAPITAL LETTER N WITH GRAVE]
+"\u01F8" => "N"
+
+# \u0220  [LATIN CAPITAL LETTER N WITH LONG RIGHT LEG]
+"\u0220" => "N"
+
+# \u0274  [LATIN LETTER SMALL CAPITAL N]
+"\u0274" => "N"
+
+# \u1d0e  [LATIN LETTER SMALL CAPITAL REVERSED N]
+"\u1D0E" => "N"
+
+# \u1e44  [LATIN CAPITAL LETTER N WITH DOT ABOVE]
+"\u1E44" => "N"
+
+# \u1e46  [LATIN CAPITAL LETTER N WITH DOT BELOW]
+"\u1E46" => "N"
+
+# \u1e48  [LATIN CAPITAL LETTER N WITH LINE BELOW]
+"\u1E48" => "N"
+
+# \u1e4a  [LATIN CAPITAL LETTER N WITH CIRCUMFLEX BELOW]
+"\u1E4A" => "N"
+
+# \u24c3  [CIRCLED LATIN CAPITAL LETTER N]
+"\u24C3" => "N"
+
+# \uff2e  [FULLWIDTH LATIN CAPITAL LETTER N]
+"\uFF2E" => "N"
+
+# �  [LATIN SMALL LETTER N WITH TILDE]
+"\u00F1" => "n"
+
+# \u0144  [LATIN SMALL LETTER N WITH ACUTE]
+"\u0144" => "n"
+
+# \u0146  [LATIN SMALL LETTER N WITH CEDILLA]
+"\u0146" => "n"
+
+# \u0148  [LATIN SMALL LETTER N WITH CARON]
+"\u0148" => "n"
+
+# \u0149  [LATIN SMALL LETTER N PRECEDED BY APOSTROPHE]
+"\u0149" => "n"
+
+# \u014b  http://en.wikipedia.org/wiki/Eng_(letter)  [LATIN SMALL LETTER ENG]
+"\u014B" => "n"
+
+# \u019e  [LATIN SMALL LETTER N WITH LONG RIGHT LEG]
+"\u019E" => "n"
+
+# \u01f9  [LATIN SMALL LETTER N WITH GRAVE]
+"\u01F9" => "n"
+
+# \u0235  [LATIN SMALL LETTER N WITH CURL]
+"\u0235" => "n"
+
+# \u0272  [LATIN SMALL LETTER N WITH LEFT HOOK]
+"\u0272" => "n"
+
+# \u0273  [LATIN SMALL LETTER N WITH RETROFLEX HOOK]
+"\u0273" => "n"
+
+# \u1d70  [LATIN SMALL LETTER N WITH MIDDLE TILDE]
+"\u1D70" => "n"
+
+# \u1d87  [LATIN SMALL LETTER N WITH PALATAL HOOK]
+"\u1D87" => "n"
+
+# \u1e45  [LATIN SMALL LETTER N WITH DOT ABOVE]
+"\u1E45" => "n"
+
+# \u1e47  [LATIN SMALL LETTER N WITH DOT BELOW]
+"\u1E47" => "n"
+
+# \u1e49  [LATIN SMALL LETTER N WITH LINE BELOW]
+"\u1E49" => "n"
+
+# \u1e4b  [LATIN SMALL LETTER N WITH CIRCUMFLEX BELOW]
+"\u1E4B" => "n"
+
+# \u207f  [SUPERSCRIPT LATIN SMALL LETTER N]
+"\u207F" => "n"
+
+# \u24dd  [CIRCLED LATIN SMALL LETTER N]
+"\u24DD" => "n"
+
+# \uff4e  [FULLWIDTH LATIN SMALL LETTER N]
+"\uFF4E" => "n"
+
+# \u01ca  [LATIN CAPITAL LETTER NJ]
+"\u01CA" => "NJ"
+
+# \u01cb  [LATIN CAPITAL LETTER N WITH SMALL LETTER J]
+"\u01CB" => "Nj"
+
+# \u24a9  [PARENTHESIZED LATIN SMALL LETTER N]
+"\u24A9" => "(n)"
+
+# \u01cc  [LATIN SMALL LETTER NJ]
+"\u01CC" => "nj"
+
+# �  [LATIN CAPITAL LETTER O WITH GRAVE]
+"\u00D2" => "O"
+
+# �  [LATIN CAPITAL LETTER O WITH ACUTE]
+"\u00D3" => "O"
+
+# �  [LATIN CAPITAL LETTER O WITH CIRCUMFLEX]
+"\u00D4" => "O"
+
+# �  [LATIN CAPITAL LETTER O WITH TILDE]
+"\u00D5" => "O"
+
+# �  [LATIN CAPITAL LETTER O WITH DIAERESIS]
+"\u00D6" => "O"
+
+# �  [LATIN CAPITAL LETTER O WITH STROKE]
+"\u00D8" => "O"
+
+# \u014c  [LATIN CAPITAL LETTER O WITH MACRON]
+"\u014C" => "O"
+
+# \u014e  [LATIN CAPITAL LETTER O WITH BREVE]
+"\u014E" => "O"
+
+# \u0150  [LATIN CAPITAL LETTER O WITH DOUBLE ACUTE]
+"\u0150" => "O"
+
+# \u0186  [LATIN CAPITAL LETTER OPEN O]
+"\u0186" => "O"
+
+# \u019f  [LATIN CAPITAL LETTER O WITH MIDDLE TILDE]
+"\u019F" => "O"
+
+# \u01a0  [LATIN CAPITAL LETTER O WITH HORN]
+"\u01A0" => "O"
+
+# \u01d1  [LATIN CAPITAL LETTER O WITH CARON]
+"\u01D1" => "O"
+
+# \u01ea  [LATIN CAPITAL LETTER O WITH OGONEK]
+"\u01EA" => "O"
+
+# \u01ec  [LATIN CAPITAL LETTER O WITH OGONEK AND MACRON]
+"\u01EC" => "O"
+
+# \u01fe  [LATIN CAPITAL LETTER O WITH STROKE AND ACUTE]
+"\u01FE" => "O"
+
+# \u020c  [LATIN CAPITAL LETTER O WITH DOUBLE GRAVE]
+"\u020C" => "O"
+
+# \u020e  [LATIN CAPITAL LETTER O WITH INVERTED BREVE]
+"\u020E" => "O"
+
+# \u022a  [LATIN CAPITAL LETTER O WITH DIAERESIS AND MACRON]
+"\u022A" => "O"
+
+# \u022c  [LATIN CAPITAL LETTER O WITH TILDE AND MACRON]
+"\u022C" => "O"
+
+# \u022e  [LATIN CAPITAL LETTER O WITH DOT ABOVE]
+"\u022E" => "O"
+
+# \u0230  [LATIN CAPITAL LETTER O WITH DOT ABOVE AND MACRON]
+"\u0230" => "O"
+
+# \u1d0f  [LATIN LETTER SMALL CAPITAL O]
+"\u1D0F" => "O"
+
+# \u1d10  [LATIN LETTER SMALL CAPITAL OPEN O]
+"\u1D10" => "O"
+
+# \u1e4c  [LATIN CAPITAL LETTER O WITH TILDE AND ACUTE]
+"\u1E4C" => "O"
+
+# \u1e4e  [LATIN CAPITAL LETTER O WITH TILDE AND DIAERESIS]
+"\u1E4E" => "O"
+
+# \u1e50  [LATIN CAPITAL LETTER O WITH MACRON AND GRAVE]
+"\u1E50" => "O"
+
+# \u1e52  [LATIN CAPITAL LETTER O WITH MACRON AND ACUTE]
+"\u1E52" => "O"
+
+# \u1ecc  [LATIN CAPITAL LETTER O WITH DOT BELOW]
+"\u1ECC" => "O"
+
+# \u1ece  [LATIN CAPITAL LETTER O WITH HOOK ABOVE]
+"\u1ECE" => "O"
+
+# \u1ed0  [LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE]
+"\u1ED0" => "O"
+
+# \u1ed2  [LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE]
+"\u1ED2" => "O"
+
+# \u1ed4  [LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE]
+"\u1ED4" => "O"
+
+# \u1ed6  [LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE]
+"\u1ED6" => "O"
+
+# \u1ed8  [LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW]
+"\u1ED8" => "O"
+
+# \u1eda  [LATIN CAPITAL LETTER O WITH HORN AND ACUTE]
+"\u1EDA" => "O"
+
+# \u1edc  [LATIN CAPITAL LETTER O WITH HORN AND GRAVE]
+"\u1EDC" => "O"
+
+# \u1ede  [LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE]
+"\u1EDE" => "O"
+
+# \u1ee0  [LATIN CAPITAL LETTER O WITH HORN AND TILDE]
+"\u1EE0" => "O"
+
+# \u1ee2  [LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW]
+"\u1EE2" => "O"
+
+# \u24c4  [CIRCLED LATIN CAPITAL LETTER O]
+"\u24C4" => "O"
+
+# \ua74a  [LATIN CAPITAL LETTER O WITH LONG STROKE OVERLAY]
+"\uA74A" => "O"
+
+# \ua74c  [LATIN CAPITAL LETTER O WITH LOOP]
+"\uA74C" => "O"
+
+# \uff2f  [FULLWIDTH LATIN CAPITAL LETTER O]
+"\uFF2F" => "O"
+
+# �  [LATIN SMALL LETTER O WITH GRAVE]
+"\u00F2" => "o"
+
+# �  [LATIN SMALL LETTER O WITH ACUTE]
+"\u00F3" => "o"
+
+# �  [LATIN SMALL LETTER O WITH CIRCUMFLEX]
+"\u00F4" => "o"
+
+# �  [LATIN SMALL LETTER O WITH TILDE]
+"\u00F5" => "o"
+
+# �  [LATIN SMALL LETTER O WITH DIAERESIS]
+"\u00F6" => "o"
+
+# �  [LATIN SMALL LETTER O WITH STROKE]
+"\u00F8" => "o"
+
+# \u014d  [LATIN SMALL LETTER O WITH MACRON]
+"\u014D" => "o"
+
+# \u014f  [LATIN SMALL LETTER O WITH BREVE]
+"\u014F" => "o"
+
+# \u0151  [LATIN SMALL LETTER O WITH DOUBLE ACUTE]
+"\u0151" => "o"
+
+# \u01a1  [LATIN SMALL LETTER O WITH HORN]
+"\u01A1" => "o"
+
+# \u01d2  [LATIN SMALL LETTER O WITH CARON]
+"\u01D2" => "o"
+
+# \u01eb  [LATIN SMALL LETTER O WITH OGONEK]
+"\u01EB" => "o"
+
+# \u01ed  [LATIN SMALL LETTER O WITH OGONEK AND MACRON]
+"\u01ED" => "o"
+
+# \u01ff  [LATIN SMALL LETTER O WITH STROKE AND ACUTE]
+"\u01FF" => "o"
+
+# \u020d  [LATIN SMALL LETTER O WITH DOUBLE GRAVE]
+"\u020D" => "o"
+
+# \u020f  [LATIN SMALL LETTER O WITH INVERTED BREVE]
+"\u020F" => "o"
+
+# \u022b  [LATIN SMALL LETTER O WITH DIAERESIS AND MACRON]
+"\u022B" => "o"
+
+# \u022d  [LATIN SMALL LETTER O WITH TILDE AND MACRON]
+"\u022D" => "o"
+
+# \u022f  [LATIN SMALL LETTER O WITH DOT ABOVE]
+"\u022F" => "o"
+
+# \u0231  [LATIN SMALL LETTER O WITH DOT ABOVE AND MACRON]
+"\u0231" => "o"
+
+# \u0254  [LATIN SMALL LETTER OPEN O]
+"\u0254" => "o"
+
+# \u0275  [LATIN SMALL LETTER BARRED O]
+"\u0275" => "o"
+
+# \u1d16  [LATIN SMALL LETTER TOP HALF O]
+"\u1D16" => "o"
+
+# \u1d17  [LATIN SMALL LETTER BOTTOM HALF O]
+"\u1D17" => "o"
+
+# \u1d97  [LATIN SMALL LETTER OPEN O WITH RETROFLEX HOOK]
+"\u1D97" => "o"
+
+# \u1e4d  [LATIN SMALL LETTER O WITH TILDE AND ACUTE]
+"\u1E4D" => "o"
+
+# \u1e4f  [LATIN SMALL LETTER O WITH TILDE AND DIAERESIS]
+"\u1E4F" => "o"
+
+# \u1e51  [LATIN SMALL LETTER O WITH MACRON AND GRAVE]
+"\u1E51" => "o"
+
+# \u1e53  [LATIN SMALL LETTER O WITH MACRON AND ACUTE]
+"\u1E53" => "o"
+
+# \u1ecd  [LATIN SMALL LETTER O WITH DOT BELOW]
+"\u1ECD" => "o"
+
+# \u1ecf  [LATIN SMALL LETTER O WITH HOOK ABOVE]
+"\u1ECF" => "o"
+
+# \u1ed1  [LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE]
+"\u1ED1" => "o"
+
+# \u1ed3  [LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE]
+"\u1ED3" => "o"
+
+# \u1ed5  [LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE]
+"\u1ED5" => "o"
+
+# \u1ed7  [LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE]
+"\u1ED7" => "o"
+
+# \u1ed9  [LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW]
+"\u1ED9" => "o"
+
+# \u1edb  [LATIN SMALL LETTER O WITH HORN AND ACUTE]
+"\u1EDB" => "o"
+
+# \u1edd  [LATIN SMALL LETTER O WITH HORN AND GRAVE]
+"\u1EDD" => "o"
+
+# \u1edf  [LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE]
+"\u1EDF" => "o"
+
+# \u1ee1  [LATIN SMALL LETTER O WITH HORN AND TILDE]
+"\u1EE1" => "o"
+
+# \u1ee3  [LATIN SMALL LETTER O WITH HORN AND DOT BELOW]
+"\u1EE3" => "o"
+
+# \u2092  [LATIN SUBSCRIPT SMALL LETTER O]
+"\u2092" => "o"
+
+# \u24de  [CIRCLED LATIN SMALL LETTER O]
+"\u24DE" => "o"
+
+# \u2c7a  [LATIN SMALL LETTER O WITH LOW RING INSIDE]
+"\u2C7A" => "o"
+
+# \ua74b  [LATIN SMALL LETTER O WITH LONG STROKE OVERLAY]
+"\uA74B" => "o"
+
+# \ua74d  [LATIN SMALL LETTER O WITH LOOP]
+"\uA74D" => "o"
+
+# \uff4f  [FULLWIDTH LATIN SMALL LETTER O]
+"\uFF4F" => "o"
+
+# \u0152  [LATIN CAPITAL LIGATURE OE]
+"\u0152" => "OE"
+
+# \u0276  [LATIN LETTER SMALL CAPITAL OE]
+"\u0276" => "OE"
+
+# \ua74e  [LATIN CAPITAL LETTER OO]
+"\uA74E" => "OO"
+
+# \u0222  http://en.wikipedia.org/wiki/OU  [LATIN CAPITAL LETTER OU]
+"\u0222" => "OU"
+
+# \u1d15  [LATIN LETTER SMALL CAPITAL OU]
+"\u1D15" => "OU"
+
+# \u24aa  [PARENTHESIZED LATIN SMALL LETTER O]
+"\u24AA" => "(o)"
+
+# \u0153  [LATIN SMALL LIGATURE OE]
+"\u0153" => "oe"
+
+# \u1d14  [LATIN SMALL LETTER TURNED OE]
+"\u1D14" => "oe"
+
+# \ua74f  [LATIN SMALL LETTER OO]
+"\uA74F" => "oo"
+
+# \u0223  http://en.wikipedia.org/wiki/OU  [LATIN SMALL LETTER OU]
+"\u0223" => "ou"
+
+# \u01a4  [LATIN CAPITAL LETTER P WITH HOOK]
+"\u01A4" => "P"
+
+# \u1d18  [LATIN LETTER SMALL CAPITAL P]
+"\u1D18" => "P"
+
+# \u1e54  [LATIN CAPITAL LETTER P WITH ACUTE]
+"\u1E54" => "P"
+
+# \u1e56  [LATIN CAPITAL LETTER P WITH DOT ABOVE]
+"\u1E56" => "P"
+
+# \u24c5  [CIRCLED LATIN CAPITAL LETTER P]
+"\u24C5" => "P"
+
+# \u2c63  [LATIN CAPITAL LETTER P WITH STROKE]
+"\u2C63" => "P"
+
+# \ua750  [LATIN CAPITAL LETTER P WITH STROKE THROUGH DESCENDER]
+"\uA750" => "P"
+
+# \ua752  [LATIN CAPITAL LETTER P WITH FLOURISH]
+"\uA752" => "P"
+
+# \ua754  [LATIN CAPITAL LETTER P WITH SQUIRREL TAIL]
+"\uA754" => "P"
+
+# \uff30  [FULLWIDTH LATIN CAPITAL LETTER P]
+"\uFF30" => "P"
+
+# \u01a5  [LATIN SMALL LETTER P WITH HOOK]
+"\u01A5" => "p"
+
+# \u1d71  [LATIN SMALL LETTER P WITH MIDDLE TILDE]
+"\u1D71" => "p"
+
+# \u1d7d  [LATIN SMALL LETTER P WITH STROKE]
+"\u1D7D" => "p"
+
+# \u1d88  [LATIN SMALL LETTER P WITH PALATAL HOOK]
+"\u1D88" => "p"
+
+# \u1e55  [LATIN SMALL LETTER P WITH ACUTE]
+"\u1E55" => "p"
+
+# \u1e57  [LATIN SMALL LETTER P WITH DOT ABOVE]
+"\u1E57" => "p"
+
+# \u24df  [CIRCLED LATIN SMALL LETTER P]
+"\u24DF" => "p"
+
+# \ua751  [LATIN SMALL LETTER P WITH STROKE THROUGH DESCENDER]
+"\uA751" => "p"
+
+# \ua753  [LATIN SMALL LETTER P WITH FLOURISH]
+"\uA753" => "p"
+
+# \ua755  [LATIN SMALL LETTER P WITH SQUIRREL TAIL]
+"\uA755" => "p"
+
+# \ua7fc  [LATIN EPIGRAPHIC LETTER REVERSED P]
+"\uA7FC" => "p"
+
+# \uff50  [FULLWIDTH LATIN SMALL LETTER P]
+"\uFF50" => "p"
+
+# \u24ab  [PARENTHESIZED LATIN SMALL LETTER P]
+"\u24AB" => "(p)"
+
+# \u024a  [LATIN CAPITAL LETTER SMALL Q WITH HOOK TAIL]
+"\u024A" => "Q"
+
+# \u24c6  [CIRCLED LATIN CAPITAL LETTER Q]
+"\u24C6" => "Q"
+
+# \ua756  [LATIN CAPITAL LETTER Q WITH STROKE THROUGH DESCENDER]
+"\uA756" => "Q"
+
+# \ua758  [LATIN CAPITAL LETTER Q WITH DIAGONAL STROKE]
+"\uA758" => "Q"
+
+# \uff31  [FULLWIDTH LATIN CAPITAL LETTER Q]
+"\uFF31" => "Q"
+
+# \u0138  http://en.wikipedia.org/wiki/Kra_(letter)  [LATIN SMALL LETTER KRA]
+"\u0138" => "q"
+
+# \u024b  [LATIN SMALL LETTER Q WITH HOOK TAIL]
+"\u024B" => "q"
+
+# \u02a0  [LATIN SMALL LETTER Q WITH HOOK]
+"\u02A0" => "q"
+
+# \u24e0  [CIRCLED LATIN SMALL LETTER Q]
+"\u24E0" => "q"
+
+# \ua757  [LATIN SMALL LETTER Q WITH STROKE THROUGH DESCENDER]
+"\uA757" => "q"
+
+# \ua759  [LATIN SMALL LETTER Q WITH DIAGONAL STROKE]
+"\uA759" => "q"
+
+# \uff51  [FULLWIDTH LATIN SMALL LETTER Q]
+"\uFF51" => "q"
+
+# \u24ac  [PARENTHESIZED LATIN SMALL LETTER Q]
+"\u24AC" => "(q)"
+
+# \u0239  [LATIN SMALL LETTER QP DIGRAPH]
+"\u0239" => "qp"
+
+# \u0154  [LATIN CAPITAL LETTER R WITH ACUTE]
+"\u0154" => "R"
+
+# \u0156  [LATIN CAPITAL LETTER R WITH CEDILLA]
+"\u0156" => "R"
+
+# \u0158  [LATIN CAPITAL LETTER R WITH CARON]
+"\u0158" => "R"
+
+# \u0212  [LATIN CAPITAL LETTER R WITH DOUBLE GRAVE]
+"\u0210" => "R"
+
+# \u0212  [LATIN CAPITAL LETTER R WITH INVERTED BREVE]
+"\u0212" => "R"
+
+# \u024c  [LATIN CAPITAL LETTER R WITH STROKE]
+"\u024C" => "R"
+
+# \u0280  [LATIN LETTER SMALL CAPITAL R]
+"\u0280" => "R"
+
+# \u0281  [LATIN LETTER SMALL CAPITAL INVERTED R]
+"\u0281" => "R"
+
+# \u1d19  [LATIN LETTER SMALL CAPITAL REVERSED R]
+"\u1D19" => "R"
+
+# \u1d1a  [LATIN LETTER SMALL CAPITAL TURNED R]
+"\u1D1A" => "R"
+
+# \u1e58  [LATIN CAPITAL LETTER R WITH DOT ABOVE]
+"\u1E58" => "R"
+
+# \u1e5a  [LATIN CAPITAL LETTER R WITH DOT BELOW]
+"\u1E5A" => "R"
+
+# \u1e5c  [LATIN CAPITAL LETTER R WITH DOT BELOW AND MACRON]
+"\u1E5C" => "R"
+
+# \u1e5e  [LATIN CAPITAL LETTER R WITH LINE BELOW]
+"\u1E5E" => "R"
+
+# \u24c7  [CIRCLED LATIN CAPITAL LETTER R]
+"\u24C7" => "R"
+
+# \u2c64  [LATIN CAPITAL LETTER R WITH TAIL]
+"\u2C64" => "R"
+
+# \ua75a  [LATIN CAPITAL LETTER R ROTUNDA]
+"\uA75A" => "R"
+
+# \ua782  [LATIN CAPITAL LETTER INSULAR R]
+"\uA782" => "R"
+
+# \uff32  [FULLWIDTH LATIN CAPITAL LETTER R]
+"\uFF32" => "R"
+
+# \u0155  [LATIN SMALL LETTER R WITH ACUTE]
+"\u0155" => "r"
+
+# \u0157  [LATIN SMALL LETTER R WITH CEDILLA]
+"\u0157" => "r"
+
+# \u0159  [LATIN SMALL LETTER R WITH CARON]
+"\u0159" => "r"
+
+# \u0211  [LATIN SMALL LETTER R WITH DOUBLE GRAVE]
+"\u0211" => "r"
+
+# \u0213  [LATIN SMALL LETTER R WITH INVERTED BREVE]
+"\u0213" => "r"
+
+# \u024d  [LATIN SMALL LETTER R WITH STROKE]
+"\u024D" => "r"
+
+# \u027c  [LATIN SMALL LETTER R WITH LONG LEG]
+"\u027C" => "r"
+
+# \u027d  [LATIN SMALL LETTER R WITH TAIL]
+"\u027D" => "r"
+
+# \u027e  [LATIN SMALL LETTER R WITH FISHHOOK]
+"\u027E" => "r"
+
+# \u027f  [LATIN SMALL LETTER REVERSED R WITH FISHHOOK]
+"\u027F" => "r"
+
+# \u1d63  [LATIN SUBSCRIPT SMALL LETTER R]
+"\u1D63" => "r"
+
+# \u1d72  [LATIN SMALL LETTER R WITH MIDDLE TILDE]
+"\u1D72" => "r"
+
+# \u1d73  [LATIN SMALL LETTER R WITH FISHHOOK AND MIDDLE TILDE]
+"\u1D73" => "r"
+
+# \u1d89  [LATIN SMALL LETTER R WITH PALATAL HOOK]
+"\u1D89" => "r"
+
+# \u1e59  [LATIN SMALL LETTER R WITH DOT ABOVE]
+"\u1E59" => "r"
+
+# \u1e5b  [LATIN SMALL LETTER R WITH DOT BELOW]
+"\u1E5B" => "r"
+
+# \u1e5d  [LATIN SMALL LETTER R WITH DOT BELOW AND MACRON]
+"\u1E5D" => "r"
+
+# \u1e5f  [LATIN SMALL LETTER R WITH LINE BELOW]
+"\u1E5F" => "r"
+
+# \u24e1  [CIRCLED LATIN SMALL LETTER R]
+"\u24E1" => "r"
+
+# \ua75b  [LATIN SMALL LETTER R ROTUNDA]
+"\uA75B" => "r"
+
+# \ua783  [LATIN SMALL LETTER INSULAR R]
+"\uA783" => "r"
+
+# \uff52  [FULLWIDTH LATIN SMALL LETTER R]
+"\uFF52" => "r"
+
+# \u24ad  [PARENTHESIZED LATIN SMALL LETTER R]
+"\u24AD" => "(r)"
+
+# \u015a  [LATIN CAPITAL LETTER S WITH ACUTE]
+"\u015A" => "S"
+
+# \u015c  [LATIN CAPITAL LETTER S WITH CIRCUMFLEX]
+"\u015C" => "S"
+
+# \u015e  [LATIN CAPITAL LETTER S WITH CEDILLA]
+"\u015E" => "S"
+
+# \u0160  [LATIN CAPITAL LETTER S WITH CARON]
+"\u0160" => "S"
+
+# \u0218  [LATIN CAPITAL LETTER S WITH COMMA BELOW]
+"\u0218" => "S"
+
+# \u1e60  [LATIN CAPITAL LETTER S WITH DOT ABOVE]
+"\u1E60" => "S"
+
+# \u1e62  [LATIN CAPITAL LETTER S WITH DOT BELOW]
+"\u1E62" => "S"
+
+# \u1e64  [LATIN CAPITAL LETTER S WITH ACUTE AND DOT ABOVE]
+"\u1E64" => "S"
+
+# \u1e66  [LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE]
+"\u1E66" => "S"
+
+# \u1e68  [LATIN CAPITAL LETTER S WITH DOT BELOW AND DOT ABOVE]
+"\u1E68" => "S"
+
+# \u24c8  [CIRCLED LATIN CAPITAL LETTER S]
+"\u24C8" => "S"
+
+# \ua731  [LATIN LETTER SMALL CAPITAL S]
+"\uA731" => "S"
+
+# \ua785  [LATIN SMALL LETTER INSULAR S]
+"\uA785" => "S"
+
+# \uff33  [FULLWIDTH LATIN CAPITAL LETTER S]
+"\uFF33" => "S"
+
+# \u015b  [LATIN SMALL LETTER S WITH ACUTE]
+"\u015B" => "s"
+
+# \u015d  [LATIN SMALL LETTER S WITH CIRCUMFLEX]
+"\u015D" => "s"
+
+# \u015f  [LATIN SMALL LETTER S WITH CEDILLA]
+"\u015F" => "s"
+
+# \u0161  [LATIN SMALL LETTER S WITH CARON]
+"\u0161" => "s"
+
+# \u017f  http://en.wikipedia.org/wiki/Long_S  [LATIN SMALL LETTER LONG S]
+"\u017F" => "s"
+
+# \u0219  [LATIN SMALL LETTER S WITH COMMA BELOW]
+"\u0219" => "s"
+
+# \u023f  [LATIN SMALL LETTER S WITH SWASH TAIL]
+"\u023F" => "s"
+
+# \u0282  [LATIN SMALL LETTER S WITH HOOK]
+"\u0282" => "s"
+
+# \u1d74  [LATIN SMALL LETTER S WITH MIDDLE TILDE]
+"\u1D74" => "s"
+
+# \u1d8a  [LATIN SMALL LETTER S WITH PALATAL HOOK]
+"\u1D8A" => "s"
+
+# \u1e61  [LATIN SMALL LETTER S WITH DOT ABOVE]
+"\u1E61" => "s"
+
+# \u1e63  [LATIN SMALL LETTER S WITH DOT BELOW]
+"\u1E63" => "s"
+
+# \u1e65  [LATIN SMALL LETTER S WITH ACUTE AND DOT ABOVE]
+"\u1E65" => "s"
+
+# \u1e67  [LATIN SMALL LETTER S WITH CARON AND DOT ABOVE]
+"\u1E67" => "s"
+
+# \u1e69  [LATIN SMALL LETTER S WITH DOT BELOW AND DOT ABOVE]
+"\u1E69" => "s"
+
+# \u1e9c  [LATIN SMALL LETTER LONG S WITH DIAGONAL STROKE]
+"\u1E9C" => "s"
+
+# \u1e9d  [LATIN SMALL LETTER LONG S WITH HIGH STROKE]
+"\u1E9D" => "s"
+
+# \u24e2  [CIRCLED LATIN SMALL LETTER S]
+"\u24E2" => "s"
+
+# \ua784  [LATIN CAPITAL LETTER INSULAR S]
+"\uA784" => "s"
+
+# \uff53  [FULLWIDTH LATIN SMALL LETTER S]
+"\uFF53" => "s"
+
+# \u1e9e  [LATIN CAPITAL LETTER SHARP S]
+"\u1E9E" => "SS"
+
+# \u24ae  [PARENTHESIZED LATIN SMALL LETTER S]
+"\u24AE" => "(s)"
+
+# �  [LATIN SMALL LETTER SHARP S]
+"\u00DF" => "ss"
+
+# \ufb06  [LATIN SMALL LIGATURE ST]
+"\uFB06" => "st"
+
+# \u0162  [LATIN CAPITAL LETTER T WITH CEDILLA]
+"\u0162" => "T"
+
+# \u0164  [LATIN CAPITAL LETTER T WITH CARON]
+"\u0164" => "T"
+
+# \u0166  [LATIN CAPITAL LETTER T WITH STROKE]
+"\u0166" => "T"
+
+# \u01ac  [LATIN CAPITAL LETTER T WITH HOOK]
+"\u01AC" => "T"
+
+# \u01ae  [LATIN CAPITAL LETTER T WITH RETROFLEX HOOK]
+"\u01AE" => "T"
+
+# \u021a  [LATIN CAPITAL LETTER T WITH COMMA BELOW]
+"\u021A" => "T"
+
+# \u023e  [LATIN CAPITAL LETTER T WITH DIAGONAL STROKE]
+"\u023E" => "T"
+
+# \u1d1b  [LATIN LETTER SMALL CAPITAL T]
+"\u1D1B" => "T"
+
+# \u1e6a  [LATIN CAPITAL LETTER T WITH DOT ABOVE]
+"\u1E6A" => "T"
+
+# \u1e6c  [LATIN CAPITAL LETTER T WITH DOT BELOW]
+"\u1E6C" => "T"
+
+# \u1e6e  [LATIN CAPITAL LETTER T WITH LINE BELOW]
+"\u1E6E" => "T"
+
+# \u1e70  [LATIN CAPITAL LETTER T WITH CIRCUMFLEX BELOW]
+"\u1E70" => "T"
+
+# \u24c9  [CIRCLED LATIN CAPITAL LETTER T]
+"\u24C9" => "T"
+
+# \ua786  [LATIN CAPITAL LETTER INSULAR T]
+"\uA786" => "T"
+
+# \uff34  [FULLWIDTH LATIN CAPITAL LETTER T]
+"\uFF34" => "T"
+
+# \u0163  [LATIN SMALL LETTER T WITH CEDILLA]
+"\u0163" => "t"
+
+# \u0165  [LATIN SMALL LETTER T WITH CARON]
+"\u0165" => "t"
+
+# \u0167  [LATIN SMALL LETTER T WITH STROKE]
+"\u0167" => "t"
+
+# \u01ab  [LATIN SMALL LETTER T WITH PALATAL HOOK]
+"\u01AB" => "t"
+
+# \u01ad  [LATIN SMALL LETTER T WITH HOOK]
+"\u01AD" => "t"
+
+# \u021b  [LATIN SMALL LETTER T WITH COMMA BELOW]
+"\u021B" => "t"
+
+# \u0236  [LATIN SMALL LETTER T WITH CURL]
+"\u0236" => "t"
+
+# \u0287  [LATIN SMALL LETTER TURNED T]
+"\u0287" => "t"
+
+# \u0288  [LATIN SMALL LETTER T WITH RETROFLEX HOOK]
+"\u0288" => "t"
+
+# \u1d75  [LATIN SMALL LETTER T WITH MIDDLE TILDE]
+"\u1D75" => "t"
+
+# \u1e6b  [LATIN SMALL LETTER T WITH DOT ABOVE]
+"\u1E6B" => "t"
+
+# \u1e6d  [LATIN SMALL LETTER T WITH DOT BELOW]
+"\u1E6D" => "t"
+
+# \u1e6f  [LATIN SMALL LETTER T WITH LINE BELOW]
+"\u1E6F" => "t"
+
+# \u1e71  [LATIN SMALL LETTER T WITH CIRCUMFLEX BELOW]
+"\u1E71" => "t"
+
+# \u1e97  [LATIN SMALL LETTER T WITH DIAERESIS]
+"\u1E97" => "t"
+
+# \u24e3  [CIRCLED LATIN SMALL LETTER T]
+"\u24E3" => "t"
+
+# \u2c66  [LATIN SMALL LETTER T WITH DIAGONAL STROKE]
+"\u2C66" => "t"
+
+# \uff54  [FULLWIDTH LATIN SMALL LETTER T]
+"\uFF54" => "t"
+
+# �  [LATIN CAPITAL LETTER THORN]
+"\u00DE" => "TH"
+
+# \ua766  [LATIN CAPITAL LETTER THORN WITH STROKE THROUGH DESCENDER]
+"\uA766" => "TH"
+
+# \ua728  [LATIN CAPITAL LETTER TZ]
+"\uA728" => "TZ"
+
+# \u24af  [PARENTHESIZED LATIN SMALL LETTER T]
+"\u24AF" => "(t)"
+
+# \u02a8  [LATIN SMALL LETTER TC DIGRAPH WITH CURL]
+"\u02A8" => "tc"
+
+# �  [LATIN SMALL LETTER THORN]
+"\u00FE" => "th"
+
+# \u1d7a  [LATIN SMALL LETTER TH WITH STRIKETHROUGH]
+"\u1D7A" => "th"
+
+# \ua767  [LATIN SMALL LETTER THORN WITH STROKE THROUGH DESCENDER]
+"\uA767" => "th"
+
+# \u02a6  [LATIN SMALL LETTER TS DIGRAPH]
+"\u02A6" => "ts"
+
+# \ua729  [LATIN SMALL LETTER TZ]
+"\uA729" => "tz"
+
+# �  [LATIN CAPITAL LETTER U WITH GRAVE]
+"\u00D9" => "U"
+
+# �  [LATIN CAPITAL LETTER U WITH ACUTE]
+"\u00DA" => "U"
+
+# �  [LATIN CAPITAL LETTER U WITH CIRCUMFLEX]
+"\u00DB" => "U"
+
+# �  [LATIN CAPITAL LETTER U WITH DIAERESIS]
+"\u00DC" => "U"
+
+# \u0168  [LATIN CAPITAL LETTER U WITH TILDE]
+"\u0168" => "U"
+
+# \u016a  [LATIN CAPITAL LETTER U WITH MACRON]
+"\u016A" => "U"
+
+# \u016c  [LATIN CAPITAL LETTER U WITH BREVE]
+"\u016C" => "U"
+
+# \u016e  [LATIN CAPITAL LETTER U WITH RING ABOVE]
+"\u016E" => "U"
+
+# \u0170  [LATIN CAPITAL LETTER U WITH DOUBLE ACUTE]
+"\u0170" => "U"
+
+# \u0172  [LATIN CAPITAL LETTER U WITH OGONEK]
+"\u0172" => "U"
+
+# \u01af  [LATIN CAPITAL LETTER U WITH HORN]
+"\u01AF" => "U"
+
+# \u01d3  [LATIN CAPITAL LETTER U WITH CARON]
+"\u01D3" => "U"
+
+# \u01d5  [LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON]
+"\u01D5" => "U"
+
+# \u01d7  [LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE]
+"\u01D7" => "U"
+
+# \u01d9  [LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON]
+"\u01D9" => "U"
+
+# \u01db  [LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE]
+"\u01DB" => "U"
+
+# \u0214  [LATIN CAPITAL LETTER U WITH DOUBLE GRAVE]
+"\u0214" => "U"
+
+# \u0216  [LATIN CAPITAL LETTER U WITH INVERTED BREVE]
+"\u0216" => "U"
+
+# \u0244  [LATIN CAPITAL LETTER U BAR]
+"\u0244" => "U"
+
+# \u1d1c  [LATIN LETTER SMALL CAPITAL U]
+"\u1D1C" => "U"
+
+# \u1d7e  [LATIN SMALL CAPITAL LETTER U WITH STROKE]
+"\u1D7E" => "U"
+
+# \u1e72  [LATIN CAPITAL LETTER U WITH DIAERESIS BELOW]
+"\u1E72" => "U"
+
+# \u1e74  [LATIN CAPITAL LETTER U WITH TILDE BELOW]
+"\u1E74" => "U"
+
+# \u1e76  [LATIN CAPITAL LETTER U WITH CIRCUMFLEX BELOW]
+"\u1E76" => "U"
+
+# \u1e78  [LATIN CAPITAL LETTER U WITH TILDE AND ACUTE]
+"\u1E78" => "U"
+
+# \u1e7a  [LATIN CAPITAL LETTER U WITH MACRON AND DIAERESIS]
+"\u1E7A" => "U"
+
+# \u1ee4  [LATIN CAPITAL LETTER U WITH DOT BELOW]
+"\u1EE4" => "U"
+
+# \u1ee6  [LATIN CAPITAL LETTER U WITH HOOK ABOVE]
+"\u1EE6" => "U"
+
+# \u1ee8  [LATIN CAPITAL LETTER U WITH HORN AND ACUTE]
+"\u1EE8" => "U"
+
+# \u1eea  [LATIN CAPITAL LETTER U WITH HORN AND GRAVE]
+"\u1EEA" => "U"
+
+# \u1eec  [LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE]
+"\u1EEC" => "U"
+
+# \u1eee  [LATIN CAPITAL LETTER U WITH HORN AND TILDE]
+"\u1EEE" => "U"
+
+# \u1ef0  [LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW]
+"\u1EF0" => "U"
+
+# \u24ca  [CIRCLED LATIN CAPITAL LETTER U]
+"\u24CA" => "U"
+
+# \uff35  [FULLWIDTH LATIN CAPITAL LETTER U]
+"\uFF35" => "U"
+
+# �  [LATIN SMALL LETTER U WITH GRAVE]
+"\u00F9" => "u"
+
+# �  [LATIN SMALL LETTER U WITH ACUTE]
+"\u00FA" => "u"
+
+# �  [LATIN SMALL LETTER U WITH CIRCUMFLEX]
+"\u00FB" => "u"
+
+# �  [LATIN SMALL LETTER U WITH DIAERESIS]
+"\u00FC" => "u"
+
+# \u0169  [LATIN SMALL LETTER U WITH TILDE]
+"\u0169" => "u"
+
+# \u016b  [LATIN SMALL LETTER U WITH MACRON]
+"\u016B" => "u"
+
+# \u016d  [LATIN SMALL LETTER U WITH BREVE]
+"\u016D" => "u"
+
+# \u016f  [LATIN SMALL LETTER U WITH RING ABOVE]
+"\u016F" => "u"
+
+# \u0171  [LATIN SMALL LETTER U WITH DOUBLE ACUTE]
+"\u0171" => "u"
+
+# \u0173  [LATIN SMALL LETTER U WITH OGONEK]
+"\u0173" => "u"
+
+# \u01b0  [LATIN SMALL LETTER U WITH HORN]
+"\u01B0" => "u"
+
+# \u01d4  [LATIN SMALL LETTER U WITH CARON]
+"\u01D4" => "u"
+
+# \u01d6  [LATIN SMALL LETTER U WITH DIAERESIS AND MACRON]
+"\u01D6" => "u"
+
+# \u01d8  [LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE]
+"\u01D8" => "u"
+
+# \u01da  [LATIN SMALL LETTER U WITH DIAERESIS AND CARON]
+"\u01DA" => "u"
+
+# \u01dc  [LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE]
+"\u01DC" => "u"
+
+# \u0215  [LATIN SMALL LETTER U WITH DOUBLE GRAVE]
+"\u0215" => "u"
+
+# \u0217  [LATIN SMALL LETTER U WITH INVERTED BREVE]
+"\u0217" => "u"
+
+# \u0289  [LATIN SMALL LETTER U BAR]
+"\u0289" => "u"
+
+# \u1d64  [LATIN SUBSCRIPT SMALL LETTER U]
+"\u1D64" => "u"
+
+# \u1d99  [LATIN SMALL LETTER U WITH RETROFLEX HOOK]
+"\u1D99" => "u"
+
+# \u1e73  [LATIN SMALL LETTER U WITH DIAERESIS BELOW]
+"\u1E73" => "u"
+
+# \u1e75  [LATIN SMALL LETTER U WITH TILDE BELOW]
+"\u1E75" => "u"
+
+# \u1e77  [LATIN SMALL LETTER U WITH CIRCUMFLEX BELOW]
+"\u1E77" => "u"
+
+# \u1e79  [LATIN SMALL LETTER U WITH TILDE AND ACUTE]
+"\u1E79" => "u"
+
+# \u1e7b  [LATIN SMALL LETTER U WITH MACRON AND DIAERESIS]
+"\u1E7B" => "u"
+
+# \u1ee5  [LATIN SMALL LETTER U WITH DOT BELOW]
+"\u1EE5" => "u"
+
+# \u1ee7  [LATIN SMALL LETTER U WITH HOOK ABOVE]
+"\u1EE7" => "u"
+
+# \u1ee9  [LATIN SMALL LETTER U WITH HORN AND ACUTE]
+"\u1EE9" => "u"
+
+# \u1eeb  [LATIN SMALL LETTER U WITH HORN AND GRAVE]
+"\u1EEB" => "u"
+
+# \u1eed  [LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE]
+"\u1EED" => "u"
+
+# \u1eef  [LATIN SMALL LETTER U WITH HORN AND TILDE]
+"\u1EEF" => "u"
+
+# \u1ef1  [LATIN SMALL LETTER U WITH HORN AND DOT BELOW]
+"\u1EF1" => "u"
+
+# \u24e4  [CIRCLED LATIN SMALL LETTER U]
+"\u24E4" => "u"
+
+# \uff55  [FULLWIDTH LATIN SMALL LETTER U]
+"\uFF55" => "u"
+
+# \u24b0  [PARENTHESIZED LATIN SMALL LETTER U]
+"\u24B0" => "(u)"
+
+# \u1d6b  [LATIN SMALL LETTER UE]
+"\u1D6B" => "ue"
+
+# \u01b2  [LATIN CAPITAL LETTER V WITH HOOK]
+"\u01B2" => "V"
+
+# \u0245  [LATIN CAPITAL LETTER TURNED V]
+"\u0245" => "V"
+
+# \u1d20  [LATIN LETTER SMALL CAPITAL V]
+"\u1D20" => "V"
+
+# \u1e7c  [LATIN CAPITAL LETTER V WITH TILDE]
+"\u1E7C" => "V"
+
+# \u1e7e  [LATIN CAPITAL LETTER V WITH DOT BELOW]
+"\u1E7E" => "V"
+
+# \u1efc  [LATIN CAPITAL LETTER MIDDLE-WELSH V]
+"\u1EFC" => "V"
+
+# \u24cb  [CIRCLED LATIN CAPITAL LETTER V]
+"\u24CB" => "V"
+
+# \ua75e  [LATIN CAPITAL LETTER V WITH DIAGONAL STROKE]
+"\uA75E" => "V"
+
+# \ua768  [LATIN CAPITAL LETTER VEND]
+"\uA768" => "V"
+
+# \uff36  [FULLWIDTH LATIN CAPITAL LETTER V]
+"\uFF36" => "V"
+
+# \u028b  [LATIN SMALL LETTER V WITH HOOK]
+"\u028B" => "v"
+
+# \u028c  [LATIN SMALL LETTER TURNED V]
+"\u028C" => "v"
+
+# \u1d65  [LATIN SUBSCRIPT SMALL LETTER V]
+"\u1D65" => "v"
+
+# \u1d8c  [LATIN SMALL LETTER V WITH PALATAL HOOK]
+"\u1D8C" => "v"
+
+# \u1e7d  [LATIN SMALL LETTER V WITH TILDE]
+"\u1E7D" => "v"
+
+# \u1e7f  [LATIN SMALL LETTER V WITH DOT BELOW]
+"\u1E7F" => "v"
+
+# \u24e5  [CIRCLED LATIN SMALL LETTER V]
+"\u24E5" => "v"
+
+# \u2c71  [LATIN SMALL LETTER V WITH RIGHT HOOK]
+"\u2C71" => "v"
+
+# \u2c74  [LATIN SMALL LETTER V WITH CURL]
+"\u2C74" => "v"
+
+# \ua75f  [LATIN SMALL LETTER V WITH DIAGONAL STROKE]
+"\uA75F" => "v"
+
+# \uff56  [FULLWIDTH LATIN SMALL LETTER V]
+"\uFF56" => "v"
+
+# \ua760  [LATIN CAPITAL LETTER VY]
+"\uA760" => "VY"
+
+# \u24b1  [PARENTHESIZED LATIN SMALL LETTER V]
+"\u24B1" => "(v)"
+
+# \ua761  [LATIN SMALL LETTER VY]
+"\uA761" => "vy"
+
+# \u0174  [LATIN CAPITAL LETTER W WITH CIRCUMFLEX]
+"\u0174" => "W"
+
+# \u01f7  http://en.wikipedia.org/wiki/Wynn  [LATIN CAPITAL LETTER WYNN]
+"\u01F7" => "W"
+
+# \u1d21  [LATIN LETTER SMALL CAPITAL W]
+"\u1D21" => "W"
+
+# \u1e80  [LATIN CAPITAL LETTER W WITH GRAVE]
+"\u1E80" => "W"
+
+# \u1e82  [LATIN CAPITAL LETTER W WITH ACUTE]
+"\u1E82" => "W"
+
+# \u1e84  [LATIN CAPITAL LETTER W WITH DIAERESIS]
+"\u1E84" => "W"
+
+# \u1e86  [LATIN CAPITAL LETTER W WITH DOT ABOVE]
+"\u1E86" => "W"
+
+# \u1e88  [LATIN CAPITAL LETTER W WITH DOT BELOW]
+"\u1E88" => "W"
+
+# \u24cc  [CIRCLED LATIN CAPITAL LETTER W]
+"\u24CC" => "W"
+
+# \u2c72  [LATIN CAPITAL LETTER W WITH HOOK]
+"\u2C72" => "W"
+
+# \uff37  [FULLWIDTH LATIN CAPITAL LETTER W]
+"\uFF37" => "W"
+
+# \u0175  [LATIN SMALL LETTER W WITH CIRCUMFLEX]
+"\u0175" => "w"
+
+# \u01bf  http://en.wikipedia.org/wiki/Wynn  [LATIN LETTER WYNN]
+"\u01BF" => "w"
+
+# \u028d  [LATIN SMALL LETTER TURNED W]
+"\u028D" => "w"
+
+# \u1e81  [LATIN SMALL LETTER W WITH GRAVE]
+"\u1E81" => "w"
+
+# \u1e83  [LATIN SMALL LETTER W WITH ACUTE]
+"\u1E83" => "w"
+
+# \u1e85  [LATIN SMALL LETTER W WITH DIAERESIS]
+"\u1E85" => "w"
+
+# \u1e87  [LATIN SMALL LETTER W WITH DOT ABOVE]
+"\u1E87" => "w"
+
+# \u1e89  [LATIN SMALL LETTER W WITH DOT BELOW]
+"\u1E89" => "w"
+
+# \u1e98  [LATIN SMALL LETTER W WITH RING ABOVE]
+"\u1E98" => "w"
+
+# \u24e6  [CIRCLED LATIN SMALL LETTER W]
+"\u24E6" => "w"
+
+# \u2c73  [LATIN SMALL LETTER W WITH HOOK]
+"\u2C73" => "w"
+
+# \uff57  [FULLWIDTH LATIN SMALL LETTER W]
+"\uFF57" => "w"
+
+# \u24b2  [PARENTHESIZED LATIN SMALL LETTER W]
+"\u24B2" => "(w)"
+
+# \u1e8a  [LATIN CAPITAL LETTER X WITH DOT ABOVE]
+"\u1E8A" => "X"
+
+# \u1e8c  [LATIN CAPITAL LETTER X WITH DIAERESIS]
+"\u1E8C" => "X"
+
+# \u24cd  [CIRCLED LATIN CAPITAL LETTER X]
+"\u24CD" => "X"
+
+# \uff38  [FULLWIDTH LATIN CAPITAL LETTER X]
+"\uFF38" => "X"
+
+# \u1d8d  [LATIN SMALL LETTER X WITH PALATAL HOOK]
+"\u1D8D" => "x"
+
+# \u1e8b  [LATIN SMALL LETTER X WITH DOT ABOVE]
+"\u1E8B" => "x"
+
+# \u1e8d  [LATIN SMALL LETTER X WITH DIAERESIS]
+"\u1E8D" => "x"
+
+# \u2093  [LATIN SUBSCRIPT SMALL LETTER X]
+"\u2093" => "x"
+
+# \u24e7  [CIRCLED LATIN SMALL LETTER X]
+"\u24E7" => "x"
+
+# \uff58  [FULLWIDTH LATIN SMALL LETTER X]
+"\uFF58" => "x"
+
+# \u24b3  [PARENTHESIZED LATIN SMALL LETTER X]
+"\u24B3" => "(x)"
+
+# �  [LATIN CAPITAL LETTER Y WITH ACUTE]
+"\u00DD" => "Y"
+
+# \u0176  [LATIN CAPITAL LETTER Y WITH CIRCUMFLEX]
+"\u0176" => "Y"
+
+# \u0178  [LATIN CAPITAL LETTER Y WITH DIAERESIS]
+"\u0178" => "Y"
+
+# \u01b3  [LATIN CAPITAL LETTER Y WITH HOOK]
+"\u01B3" => "Y"
+
+# \u0232  [LATIN CAPITAL LETTER Y WITH MACRON]
+"\u0232" => "Y"
+
+# \u024e  [LATIN CAPITAL LETTER Y WITH STROKE]
+"\u024E" => "Y"
+
+# \u028f  [LATIN LETTER SMALL CAPITAL Y]
+"\u028F" => "Y"
+
+# \u1e8e  [LATIN CAPITAL LETTER Y WITH DOT ABOVE]
+"\u1E8E" => "Y"
+
+# \u1ef2  [LATIN CAPITAL LETTER Y WITH GRAVE]
+"\u1EF2" => "Y"
+
+# \u1ef4  [LATIN CAPITAL LETTER Y WITH DOT BELOW]
+"\u1EF4" => "Y"
+
+# \u1ef6  [LATIN CAPITAL LETTER Y WITH HOOK ABOVE]
+"\u1EF6" => "Y"
+
+# \u1ef8  [LATIN CAPITAL LETTER Y WITH TILDE]
+"\u1EF8" => "Y"
+
+# \u1efe  [LATIN CAPITAL LETTER Y WITH LOOP]
+"\u1EFE" => "Y"
+
+# \u24ce  [CIRCLED LATIN CAPITAL LETTER Y]
+"\u24CE" => "Y"
+
+# \uff39  [FULLWIDTH LATIN CAPITAL LETTER Y]
+"\uFF39" => "Y"
+
+# �  [LATIN SMALL LETTER Y WITH ACUTE]
+"\u00FD" => "y"
+
+# �  [LATIN SMALL LETTER Y WITH DIAERESIS]
+"\u00FF" => "y"
+
+# \u0177  [LATIN SMALL LETTER Y WITH CIRCUMFLEX]
+"\u0177" => "y"
+
+# \u01b4  [LATIN SMALL LETTER Y WITH HOOK]
+"\u01B4" => "y"
+
+# \u0233  [LATIN SMALL LETTER Y WITH MACRON]
+"\u0233" => "y"
+
+# \u024f  [LATIN SMALL LETTER Y WITH STROKE]
+"\u024F" => "y"
+
+# \u028e  [LATIN SMALL LETTER TURNED Y]
+"\u028E" => "y"
+
+# \u1e8f  [LATIN SMALL LETTER Y WITH DOT ABOVE]
+"\u1E8F" => "y"
+
+# \u1e99  [LATIN SMALL LETTER Y WITH RING ABOVE]
+"\u1E99" => "y"
+
+# \u1ef3  [LATIN SMALL LETTER Y WITH GRAVE]
+"\u1EF3" => "y"
+
+# \u1ef5  [LATIN SMALL LETTER Y WITH DOT BELOW]
+"\u1EF5" => "y"
+
+# \u1ef7  [LATIN SMALL LETTER Y WITH HOOK ABOVE]
+"\u1EF7" => "y"
+
+# \u1ef9  [LATIN SMALL LETTER Y WITH TILDE]
+"\u1EF9" => "y"
+
+# \u1eff  [LATIN SMALL LETTER Y WITH LOOP]
+"\u1EFF" => "y"
+
+# \u24e8  [CIRCLED LATIN SMALL LETTER Y]
+"\u24E8" => "y"
+
+# \uff59  [FULLWIDTH LATIN SMALL LETTER Y]
+"\uFF59" => "y"
+
+# \u24b4  [PARENTHESIZED LATIN SMALL LETTER Y]
+"\u24B4" => "(y)"
+
+# \u0179  [LATIN CAPITAL LETTER Z WITH ACUTE]
+"\u0179" => "Z"
+
+# \u017b  [LATIN CAPITAL LETTER Z WITH DOT ABOVE]
+"\u017B" => "Z"
+
+# \u017d  [LATIN CAPITAL LETTER Z WITH CARON]
+"\u017D" => "Z"
+
+# \u01b5  [LATIN CAPITAL LETTER Z WITH STROKE]
+"\u01B5" => "Z"
+
+# \u021c  http://en.wikipedia.org/wiki/Yogh  [LATIN CAPITAL LETTER YOGH]
+"\u021C" => "Z"
+
+# \u0224  [LATIN CAPITAL LETTER Z WITH HOOK]
+"\u0224" => "Z"
+
+# \u1d22  [LATIN LETTER SMALL CAPITAL Z]
+"\u1D22" => "Z"
+
+# \u1e90  [LATIN CAPITAL LETTER Z WITH CIRCUMFLEX]
+"\u1E90" => "Z"
+
+# \u1e92  [LATIN CAPITAL LETTER Z WITH DOT BELOW]
+"\u1E92" => "Z"
+
+# \u1e94  [LATIN CAPITAL LETTER Z WITH LINE BELOW]
+"\u1E94" => "Z"
+
+# \u24cf  [CIRCLED LATIN CAPITAL LETTER Z]
+"\u24CF" => "Z"
+
+# \u2c6b  [LATIN CAPITAL LETTER Z WITH DESCENDER]
+"\u2C6B" => "Z"
+
+# \ua762  [LATIN CAPITAL LETTER VISIGOTHIC Z]
+"\uA762" => "Z"
+
+# \uff3a  [FULLWIDTH LATIN CAPITAL LETTER Z]
+"\uFF3A" => "Z"
+
+# \u017a  [LATIN SMALL LETTER Z WITH ACUTE]
+"\u017A" => "z"
+
+# \u017c  [LATIN SMALL LETTER Z WITH DOT ABOVE]
+"\u017C" => "z"
+
+# \u017e  [LATIN SMALL LETTER Z WITH CARON]
+"\u017E" => "z"
+
+# \u01b6  [LATIN SMALL LETTER Z WITH STROKE]
+"\u01B6" => "z"
+
+# \u021d  http://en.wikipedia.org/wiki/Yogh  [LATIN SMALL LETTER YOGH]
+"\u021D" => "z"
+
+# \u0225  [LATIN SMALL LETTER Z WITH HOOK]
+"\u0225" => "z"
+
+# \u0240  [LATIN SMALL LETTER Z WITH SWASH TAIL]
+"\u0240" => "z"
+
+# \u0290  [LATIN SMALL LETTER Z WITH RETROFLEX HOOK]
+"\u0290" => "z"
+
+# \u0291  [LATIN SMALL LETTER Z WITH CURL]
+"\u0291" => "z"
+
+# \u1d76  [LATIN SMALL LETTER Z WITH MIDDLE TILDE]
+"\u1D76" => "z"
+
+# \u1d8e  [LATIN SMALL LETTER Z WITH PALATAL HOOK]
+"\u1D8E" => "z"
+
+# \u1e91  [LATIN SMALL LETTER Z WITH CIRCUMFLEX]
+"\u1E91" => "z"
+
+# \u1e93  [LATIN SMALL LETTER Z WITH DOT BELOW]
+"\u1E93" => "z"
+
+# \u1e95  [LATIN SMALL LETTER Z WITH LINE BELOW]
+"\u1E95" => "z"
+
+# \u24e9  [CIRCLED LATIN SMALL LETTER Z]
+"\u24E9" => "z"
+
+# \u2c6c  [LATIN SMALL LETTER Z WITH DESCENDER]
+"\u2C6C" => "z"
+
+# \ua763  [LATIN SMALL LETTER VISIGOTHIC Z]
+"\uA763" => "z"
+
+# \uff5a  [FULLWIDTH LATIN SMALL LETTER Z]
+"\uFF5A" => "z"
+
+# \u24b5  [PARENTHESIZED LATIN SMALL LETTER Z]
+"\u24B5" => "(z)"
+
+# \u2070  [SUPERSCRIPT ZERO]
+"\u2070" => "0"
+
+# \u2080  [SUBSCRIPT ZERO]
+"\u2080" => "0"
+
+# \u24ea  [CIRCLED DIGIT ZERO]
+"\u24EA" => "0"
+
+# \u24ff  [NEGATIVE CIRCLED DIGIT ZERO]
+"\u24FF" => "0"
+
+# \uff10  [FULLWIDTH DIGIT ZERO]
+"\uFF10" => "0"
+
+# �  [SUPERSCRIPT ONE]
+"\u00B9" => "1"
+
+# \u2081  [SUBSCRIPT ONE]
+"\u2081" => "1"
+
+# \u2460  [CIRCLED DIGIT ONE]
+"\u2460" => "1"
+
+# \u24f5  [DOUBLE CIRCLED DIGIT ONE]
+"\u24F5" => "1"
+
+# \u2776  [DINGBAT NEGATIVE CIRCLED DIGIT ONE]
+"\u2776" => "1"
+
+# \u2780  [DINGBAT CIRCLED SANS-SERIF DIGIT ONE]
+"\u2780" => "1"
+
+# \u278a  [DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT ONE]
+"\u278A" => "1"
+
+# \uff11  [FULLWIDTH DIGIT ONE]
+"\uFF11" => "1"
+
+# \u2488  [DIGIT ONE FULL STOP]
+"\u2488" => "1."
+
+# \u2474  [PARENTHESIZED DIGIT ONE]
+"\u2474" => "(1)"
+
+# �  [SUPERSCRIPT TWO]
+"\u00B2" => "2"
+
+# \u2082  [SUBSCRIPT TWO]
+"\u2082" => "2"
+
+# \u2461  [CIRCLED DIGIT TWO]
+"\u2461" => "2"
+
+# \u24f6  [DOUBLE CIRCLED DIGIT TWO]
+"\u24F6" => "2"
+
+# \u2777  [DINGBAT NEGATIVE CIRCLED DIGIT TWO]
+"\u2777" => "2"
+
+# \u2781  [DINGBAT CIRCLED SANS-SERIF DIGIT TWO]
+"\u2781" => "2"
+
+# \u278b  [DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT TWO]
+"\u278B" => "2"
+
+# \uff12  [FULLWIDTH DIGIT TWO]
+"\uFF12" => "2"
+
+# \u2489  [DIGIT TWO FULL STOP]
+"\u2489" => "2."
+
+# \u2475  [PARENTHESIZED DIGIT TWO]
+"\u2475" => "(2)"
+
+# �  [SUPERSCRIPT THREE]
+"\u00B3" => "3"
+
+# \u2083  [SUBSCRIPT THREE]
+"\u2083" => "3"
+
+# \u2462  [CIRCLED DIGIT THREE]
+"\u2462" => "3"
+
+# \u24f7  [DOUBLE CIRCLED DIGIT THREE]
+"\u24F7" => "3"
+
+# \u2778  [DINGBAT NEGATIVE CIRCLED DIGIT THREE]
+"\u2778" => "3"
+
+# \u2782  [DINGBAT CIRCLED SANS-SERIF DIGIT THREE]
+"\u2782" => "3"
+
+# \u278c  [DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT THREE]
+"\u278C" => "3"
+
+# \uff13  [FULLWIDTH DIGIT THREE]
+"\uFF13" => "3"
+
+# \u248a  [DIGIT THREE FULL STOP]
+"\u248A" => "3."
+
+# \u2476  [PARENTHESIZED DIGIT THREE]
+"\u2476" => "(3)"
+
+# \u2074  [SUPERSCRIPT FOUR]
+"\u2074" => "4"
+
+# \u2084  [SUBSCRIPT FOUR]
+"\u2084" => "4"
+
+# \u2463  [CIRCLED DIGIT FOUR]
+"\u2463" => "4"
+
+# \u24f8  [DOUBLE CIRCLED DIGIT FOUR]
+"\u24F8" => "4"
+
+# \u2779  [DINGBAT NEGATIVE CIRCLED DIGIT FOUR]
+"\u2779" => "4"
+
+# \u2783  [DINGBAT CIRCLED SANS-SERIF DIGIT FOUR]
+"\u2783" => "4"
+
+# \u278d  [DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT FOUR]
+"\u278D" => "4"
+
+# \uff14  [FULLWIDTH DIGIT FOUR]
+"\uFF14" => "4"
+
+# \u248b  [DIGIT FOUR FULL STOP]
+"\u248B" => "4."
+
+# \u2477  [PARENTHESIZED DIGIT FOUR]
+"\u2477" => "(4)"
+
+# \u2075  [SUPERSCRIPT FIVE]
+"\u2075" => "5"
+
+# \u2085  [SUBSCRIPT FIVE]
+"\u2085" => "5"
+
+# \u2464  [CIRCLED DIGIT FIVE]
+"\u2464" => "5"
+
+# \u24f9  [DOUBLE CIRCLED DIGIT FIVE]
+"\u24F9" => "5"
+
+# \u277a  [DINGBAT NEGATIVE CIRCLED DIGIT FIVE]
+"\u277A" => "5"
+
+# \u2784  [DINGBAT CIRCLED SANS-SERIF DIGIT FIVE]
+"\u2784" => "5"
+
+# \u278e  [DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT FIVE]
+"\u278E" => "5"
+
+# \uff15  [FULLWIDTH DIGIT FIVE]
+"\uFF15" => "5"
+
+# \u248c  [DIGIT FIVE FULL STOP]
+"\u248C" => "5."
+
+# \u2478  [PARENTHESIZED DIGIT FIVE]
+"\u2478" => "(5)"
+
+# \u2076  [SUPERSCRIPT SIX]
+"\u2076" => "6"
+
+# \u2086  [SUBSCRIPT SIX]
+"\u2086" => "6"
+
+# \u2465  [CIRCLED DIGIT SIX]
+"\u2465" => "6"
+
+# \u24fa  [DOUBLE CIRCLED DIGIT SIX]
+"\u24FA" => "6"
+
+# \u277b  [DINGBAT NEGATIVE CIRCLED DIGIT SIX]
+"\u277B" => "6"
+
+# \u2785  [DINGBAT CIRCLED SANS-SERIF DIGIT SIX]
+"\u2785" => "6"
+
+# \u278f  [DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SIX]
+"\u278F" => "6"
+
+# \uff16  [FULLWIDTH DIGIT SIX]
+"\uFF16" => "6"
+
+# \u248d  [DIGIT SIX FULL STOP]
+"\u248D" => "6."
+
+# \u2479  [PARENTHESIZED DIGIT SIX]
+"\u2479" => "(6)"
+
+# \u2077  [SUPERSCRIPT SEVEN]
+"\u2077" => "7"
+
+# \u2087  [SUBSCRIPT SEVEN]
+"\u2087" => "7"
+
+# \u2466  [CIRCLED DIGIT SEVEN]
+"\u2466" => "7"
+
+# \u24fb  [DOUBLE CIRCLED DIGIT SEVEN]
+"\u24FB" => "7"
+
+# \u277c  [DINGBAT NEGATIVE CIRCLED DIGIT SEVEN]
+"\u277C" => "7"
+
+# \u2786  [DINGBAT CIRCLED SANS-SERIF DIGIT SEVEN]
+"\u2786" => "7"
+
+# \u2790  [DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SEVEN]
+"\u2790" => "7"
+
+# \uff17  [FULLWIDTH DIGIT SEVEN]
+"\uFF17" => "7"
+
+# \u248e  [DIGIT SEVEN FULL STOP]
+"\u248E" => "7."
+
+# \u247a  [PARENTHESIZED DIGIT SEVEN]
+"\u247A" => "(7)"
+
+# \u2078  [SUPERSCRIPT EIGHT]
+"\u2078" => "8"
+
+# \u2088  [SUBSCRIPT EIGHT]
+"\u2088" => "8"
+
+# \u2467  [CIRCLED DIGIT EIGHT]
+"\u2467" => "8"
+
+# \u24fc  [DOUBLE CIRCLED DIGIT EIGHT]
+"\u24FC" => "8"
+
+# \u277d  [DINGBAT NEGATIVE CIRCLED DIGIT EIGHT]
+"\u277D" => "8"
+
+# \u2787  [DINGBAT CIRCLED SANS-SERIF DIGIT EIGHT]
+"\u2787" => "8"
+
+# \u2791  [DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT EIGHT]
+"\u2791" => "8"
+
+# \uff18  [FULLWIDTH DIGIT EIGHT]
+"\uFF18" => "8"
+
+# \u248f  [DIGIT EIGHT FULL STOP]
+"\u248F" => "8."
+
+# \u247b  [PARENTHESIZED DIGIT EIGHT]
+"\u247B" => "(8)"
+
+# \u2079  [SUPERSCRIPT NINE]
+"\u2079" => "9"
+
+# \u2089  [SUBSCRIPT NINE]
+"\u2089" => "9"
+
+# \u2468  [CIRCLED DIGIT NINE]
+"\u2468" => "9"
+
+# \u24fd  [DOUBLE CIRCLED DIGIT NINE]
+"\u24FD" => "9"
+
+# \u277e  [DINGBAT NEGATIVE CIRCLED DIGIT NINE]
+"\u277E" => "9"
+
+# \u2788  [DINGBAT CIRCLED SANS-SERIF DIGIT NINE]
+"\u2788" => "9"
+
+# \u2792  [DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT NINE]
+"\u2792" => "9"
+
+# \uff19  [FULLWIDTH DIGIT NINE]
+"\uFF19" => "9"
+
+# \u2490  [DIGIT NINE FULL STOP]
+"\u2490" => "9."
+
+# \u247c  [PARENTHESIZED DIGIT NINE]
+"\u247C" => "(9)"
+
+# \u2469  [CIRCLED NUMBER TEN]
+"\u2469" => "10"
+
+# \u24fe  [DOUBLE CIRCLED NUMBER TEN]
+"\u24FE" => "10"
+
+# \u277f  [DINGBAT NEGATIVE CIRCLED NUMBER TEN]
+"\u277F" => "10"
+
+# \u2789  [DINGBAT CIRCLED SANS-SERIF NUMBER TEN]
+"\u2789" => "10"
+
+# \u2793  [DINGBAT NEGATIVE CIRCLED SANS-SERIF NUMBER TEN]
+"\u2793" => "10"
+
+# \u2491  [NUMBER TEN FULL STOP]
+"\u2491" => "10."
+
+# \u247d  [PARENTHESIZED NUMBER TEN]
+"\u247D" => "(10)"
+
+# \u246a  [CIRCLED NUMBER ELEVEN]
+"\u246A" => "11"
+
+# \u24eb  [NEGATIVE CIRCLED NUMBER ELEVEN]
+"\u24EB" => "11"
+
+# \u2492  [NUMBER ELEVEN FULL STOP]
+"\u2492" => "11."
+
+# \u247e  [PARENTHESIZED NUMBER ELEVEN]
+"\u247E" => "(11)"
+
+# \u246b  [CIRCLED NUMBER TWELVE]
+"\u246B" => "12"
+
+# \u24ec  [NEGATIVE CIRCLED NUMBER TWELVE]
+"\u24EC" => "12"
+
+# \u2493  [NUMBER TWELVE FULL STOP]
+"\u2493" => "12."
+
+# \u247f  [PARENTHESIZED NUMBER TWELVE]
+"\u247F" => "(12)"
+
+# \u246c  [CIRCLED NUMBER THIRTEEN]
+"\u246C" => "13"
+
+# \u24ed  [NEGATIVE CIRCLED NUMBER THIRTEEN]
+"\u24ED" => "13"
+
+# \u2494  [NUMBER THIRTEEN FULL STOP]
+"\u2494" => "13."
+
+# \u2480  [PARENTHESIZED NUMBER THIRTEEN]
+"\u2480" => "(13)"
+
+# \u246d  [CIRCLED NUMBER FOURTEEN]
+"\u246D" => "14"
+
+# \u24ee  [NEGATIVE CIRCLED NUMBER FOURTEEN]
+"\u24EE" => "14"
+
+# \u2495  [NUMBER FOURTEEN FULL STOP]
+"\u2495" => "14."
+
+# \u2481  [PARENTHESIZED NUMBER FOURTEEN]
+"\u2481" => "(14)"
+
+# \u246e  [CIRCLED NUMBER FIFTEEN]
+"\u246E" => "15"
+
+# \u24ef  [NEGATIVE CIRCLED NUMBER FIFTEEN]
+"\u24EF" => "15"
+
+# \u2496  [NUMBER FIFTEEN FULL STOP]
+"\u2496" => "15."
+
+# \u2482  [PARENTHESIZED NUMBER FIFTEEN]
+"\u2482" => "(15)"
+
+# \u246f  [CIRCLED NUMBER SIXTEEN]
+"\u246F" => "16"
+
+# \u24f0  [NEGATIVE CIRCLED NUMBER SIXTEEN]
+"\u24F0" => "16"
+
+# \u2497  [NUMBER SIXTEEN FULL STOP]
+"\u2497" => "16."
+
+# \u2483  [PARENTHESIZED NUMBER SIXTEEN]
+"\u2483" => "(16)"
+
+# \u2470  [CIRCLED NUMBER SEVENTEEN]
+"\u2470" => "17"
+
+# \u24f1  [NEGATIVE CIRCLED NUMBER SEVENTEEN]
+"\u24F1" => "17"
+
+# \u2498  [NUMBER SEVENTEEN FULL STOP]
+"\u2498" => "17."
+
+# \u2484  [PARENTHESIZED NUMBER SEVENTEEN]
+"\u2484" => "(17)"
+
+# \u2471  [CIRCLED NUMBER EIGHTEEN]
+"\u2471" => "18"
+
+# \u24f2  [NEGATIVE CIRCLED NUMBER EIGHTEEN]
+"\u24F2" => "18"
+
+# \u2499  [NUMBER EIGHTEEN FULL STOP]
+"\u2499" => "18."
+
+# \u2485  [PARENTHESIZED NUMBER EIGHTEEN]
+"\u2485" => "(18)"
+
+# \u2472  [CIRCLED NUMBER NINETEEN]
+"\u2472" => "19"
+
+# \u24f3  [NEGATIVE CIRCLED NUMBER NINETEEN]
+"\u24F3" => "19"
+
+# \u249a  [NUMBER NINETEEN FULL STOP]
+"\u249A" => "19."
+
+# \u2486  [PARENTHESIZED NUMBER NINETEEN]
+"\u2486" => "(19)"
+
+# \u2473  [CIRCLED NUMBER TWENTY]
+"\u2473" => "20"
+
+# \u24f4  [NEGATIVE CIRCLED NUMBER TWENTY]
+"\u24F4" => "20"
+
+# \u249b  [NUMBER TWENTY FULL STOP]
+"\u249B" => "20."
+
+# \u2487  [PARENTHESIZED NUMBER TWENTY]
+"\u2487" => "(20)"
+
+# �  [LEFT-POINTING DOUBLE ANGLE QUOTATION MARK]
+"\u00AB" => "\""
+
+# �  [RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK]
+"\u00BB" => "\""
+
+# \u201c  [LEFT DOUBLE QUOTATION MARK]
+"\u201C" => "\""
+
+# \u201d  [RIGHT DOUBLE QUOTATION MARK]
+"\u201D" => "\""
+
+# \u201e  [DOUBLE LOW-9 QUOTATION MARK]
+"\u201E" => "\""
+
+# \u2033  [DOUBLE PRIME]
+"\u2033" => "\""
+
+# \u2036  [REVERSED DOUBLE PRIME]
+"\u2036" => "\""
+
+# \u275d  [HEAVY DOUBLE TURNED COMMA QUOTATION MARK ORNAMENT]
+"\u275D" => "\""
+
+# \u275e  [HEAVY DOUBLE COMMA QUOTATION MARK ORNAMENT]
+"\u275E" => "\""
+
+# \u276e  [HEAVY LEFT-POINTING ANGLE QUOTATION MARK ORNAMENT]
+"\u276E" => "\""
+
+# \u276f  [HEAVY RIGHT-POINTING ANGLE QUOTATION MARK ORNAMENT]
+"\u276F" => "\""
+
+# \uff02  [FULLWIDTH QUOTATION MARK]
+"\uFF02" => "\""
+
+# \u2018  [LEFT SINGLE QUOTATION MARK]
+"\u2018" => "\'"
+
+# \u2019  [RIGHT SINGLE QUOTATION MARK]
+"\u2019" => "\'"
+
+# \u201a  [SINGLE LOW-9 QUOTATION MARK]
+"\u201A" => "\'"
+
+# \u201b  [SINGLE HIGH-REVERSED-9 QUOTATION MARK]
+"\u201B" => "\'"
+
+# \u2032  [PRIME]
+"\u2032" => "\'"
+
+# \u2035  [REVERSED PRIME]
+"\u2035" => "\'"
+
+# \u2039  [SINGLE LEFT-POINTING ANGLE QUOTATION MARK]
+"\u2039" => "\'"
+
+# \u203a  [SINGLE RIGHT-POINTING ANGLE QUOTATION MARK]
+"\u203A" => "\'"
+
+# \u275b  [HEAVY SINGLE TURNED COMMA QUOTATION MARK ORNAMENT]
+"\u275B" => "\'"
+
+# \u275c  [HEAVY SINGLE COMMA QUOTATION MARK ORNAMENT]
+"\u275C" => "\'"
+
+# \uff07  [FULLWIDTH APOSTROPHE]
+"\uFF07" => "\'"
+
+# \u2010  [HYPHEN]
+"\u2010" => "-"
+
+# \u2011  [NON-BREAKING HYPHEN]
+"\u2011" => "-"
+
+# \u2012  [FIGURE DASH]
+"\u2012" => "-"
+
+# \u2013  [EN DASH]
+"\u2013" => "-"
+
+# \u2014  [EM DASH]
+"\u2014" => "-"
+
+# \u207b  [SUPERSCRIPT MINUS]
+"\u207B" => "-"
+
+# \u208b  [SUBSCRIPT MINUS]
+"\u208B" => "-"
+
+# \uff0d  [FULLWIDTH HYPHEN-MINUS]
+"\uFF0D" => "-"
+
+# \u2045  [LEFT SQUARE BRACKET WITH QUILL]
+"\u2045" => "["
+
+# \u2772  [LIGHT LEFT TORTOISE SHELL BRACKET ORNAMENT]
+"\u2772" => "["
+
+# \uff3b  [FULLWIDTH LEFT SQUARE BRACKET]
+"\uFF3B" => "["
+
+# \u2046  [RIGHT SQUARE BRACKET WITH QUILL]
+"\u2046" => "]"
+
+# \u2773  [LIGHT RIGHT TORTOISE SHELL BRACKET ORNAMENT]
+"\u2773" => "]"
+
+# \uff3d  [FULLWIDTH RIGHT SQUARE BRACKET]
+"\uFF3D" => "]"
+
+# \u207d  [SUPERSCRIPT LEFT PARENTHESIS]
+"\u207D" => "("
+
+# \u208d  [SUBSCRIPT LEFT PARENTHESIS]
+"\u208D" => "("
+
+# \u2768  [MEDIUM LEFT PARENTHESIS ORNAMENT]
+"\u2768" => "("
+
+# \u276a  [MEDIUM FLATTENED LEFT PARENTHESIS ORNAMENT]
+"\u276A" => "("
+
+# \uff08  [FULLWIDTH LEFT PARENTHESIS]
+"\uFF08" => "("
+
+# \u2e28  [LEFT DOUBLE PARENTHESIS]
+"\u2E28" => "(("
+
+# \u207e  [SUPERSCRIPT RIGHT PARENTHESIS]
+"\u207E" => ")"
+
+# \u208e  [SUBSCRIPT RIGHT PARENTHESIS]
+"\u208E" => ")"
+
+# \u2769  [MEDIUM RIGHT PARENTHESIS ORNAMENT]
+"\u2769" => ")"
+
+# \u276b  [MEDIUM FLATTENED RIGHT PARENTHESIS ORNAMENT]
+"\u276B" => ")"
+
+# \uff09  [FULLWIDTH RIGHT PARENTHESIS]
+"\uFF09" => ")"
+
+# \u2e29  [RIGHT DOUBLE PARENTHESIS]
+"\u2E29" => "))"
+
+# \u276c  [MEDIUM LEFT-POINTING ANGLE BRACKET ORNAMENT]
+"\u276C" => "<"
+
+# \u2770  [HEAVY LEFT-POINTING ANGLE BRACKET ORNAMENT]
+"\u2770" => "<"
+
+# \uff1c  [FULLWIDTH LESS-THAN SIGN]
+"\uFF1C" => "<"
+
+# \u276d  [MEDIUM RIGHT-POINTING ANGLE BRACKET ORNAMENT]
+"\u276D" => ">"
+
+# \u2771  [HEAVY RIGHT-POINTING ANGLE BRACKET ORNAMENT]
+"\u2771" => ">"
+
+# \uff1e  [FULLWIDTH GREATER-THAN SIGN]
+"\uFF1E" => ">"
+
+# \u2774  [MEDIUM LEFT CURLY BRACKET ORNAMENT]
+"\u2774" => "{"
+
+# \uff5b  [FULLWIDTH LEFT CURLY BRACKET]
+"\uFF5B" => "{"
+
+# \u2775  [MEDIUM RIGHT CURLY BRACKET ORNAMENT]
+"\u2775" => "}"
+
+# \uff5d  [FULLWIDTH RIGHT CURLY BRACKET]
+"\uFF5D" => "}"
+
+# \u207a  [SUPERSCRIPT PLUS SIGN]
+"\u207A" => "+"
+
+# \u208a  [SUBSCRIPT PLUS SIGN]
+"\u208A" => "+"
+
+# \uff0b  [FULLWIDTH PLUS SIGN]
+"\uFF0B" => "+"
+
+# \u207c  [SUPERSCRIPT EQUALS SIGN]
+"\u207C" => "="
+
+# \u208c  [SUBSCRIPT EQUALS SIGN]
+"\u208C" => "="
+
+# \uff1d  [FULLWIDTH EQUALS SIGN]
+"\uFF1D" => "="
+
+# \uff01  [FULLWIDTH EXCLAMATION MARK]
+"\uFF01" => "!"
+
+# \u203c  [DOUBLE EXCLAMATION MARK]
+"\u203C" => "!!"
+
+# \u2049  [EXCLAMATION QUESTION MARK]
+"\u2049" => "!?"
+
+# \uff03  [FULLWIDTH NUMBER SIGN]
+"\uFF03" => "#"
+
+# \uff04  [FULLWIDTH DOLLAR SIGN]
+"\uFF04" => "$"
+
+# \u2052  [COMMERCIAL MINUS SIGN]
+"\u2052" => "%"
+
+# \uff05  [FULLWIDTH PERCENT SIGN]
+"\uFF05" => "%"
+
+# \uff06  [FULLWIDTH AMPERSAND]
+"\uFF06" => "&"
+
+# \u204e  [LOW ASTERISK]
+"\u204E" => "*"
+
+# \uff0a  [FULLWIDTH ASTERISK]
+"\uFF0A" => "*"
+
+# \uff0c  [FULLWIDTH COMMA]
+"\uFF0C" => ","
+
+# \uff0e  [FULLWIDTH FULL STOP]
+"\uFF0E" => "."
+
+# \u2044  [FRACTION SLASH]
+"\u2044" => "/"
+
+# \uff0f  [FULLWIDTH SOLIDUS]
+"\uFF0F" => "/"
+
+# \uff1a  [FULLWIDTH COLON]
+"\uFF1A" => ":"
+
+# \u204f  [REVERSED SEMICOLON]
+"\u204F" => ";"
+
+# \uff1b  [FULLWIDTH SEMICOLON]
+"\uFF1B" => ";"
+
+# \uff1f  [FULLWIDTH QUESTION MARK]
+"\uFF1F" => "?"
+
+# \u2047  [DOUBLE QUESTION MARK]
+"\u2047" => "??"
+
+# \u2048  [QUESTION EXCLAMATION MARK]
+"\u2048" => "?!"
+
+# \uff20  [FULLWIDTH COMMERCIAL AT]
+"\uFF20" => "@"
+
+# \uff3c  [FULLWIDTH REVERSE SOLIDUS]
+"\uFF3C" => "\\"
+
+# \u2038  [CARET]
+"\u2038" => "^"
+
+# \uff3e  [FULLWIDTH CIRCUMFLEX ACCENT]
+"\uFF3E" => "^"
+
+# \uff3f  [FULLWIDTH LOW LINE]
+"\uFF3F" => "_"
+
+# \u2053  [SWUNG DASH]
+"\u2053" => "~"
+
+# \uff5e  [FULLWIDTH TILDE]
+"\uFF5E" => "~"
+
+################################################################
+# Below is the Perl script used to generate the above mappings #
+# from ASCIIFoldingFilter.java:                                #
+################################################################
+#
+# #!/usr/bin/perl
+#
+# use warnings;
+# use strict;
+# 
+# my @source_chars = ();
+# my @source_char_descriptions = ();
+# my $target = '';
+# 
+# while (<>) {
+#   if (/case\s+'(\\u[A-F0-9]+)':\s*\/\/\s*(.*)/i) {
+#     push @source_chars, $1;
+#	  push @source_char_descriptions, $2;
+#	  next;
+#   }
+#   if (/output\[[^\]]+\]\s*=\s*'(\\'|\\\\|.)'/) {
+#     $target .= $1;
+#     next;
+#   }
+#   if (/break;/) {
+#     $target = "\\\"" if ($target eq '"');
+#     for my $source_char_num (0..$#source_chars) {
+#	    print "# $source_char_descriptions[$source_char_num]\n";
+#	    print "\"$source_chars[$source_char_num]\" => \"$target\"\n\n";
+#	  }
+#	  @source_chars = ();
+#	  @source_char_descriptions = ();
+#	  $target = '';
+#   }
+# }

http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/ac2c9ba5/persistence-spi/src/main/java/org/apache/unomi/persistence/spi/PersistenceService.java
----------------------------------------------------------------------
diff --git a/persistence-spi/src/main/java/org/apache/unomi/persistence/spi/PersistenceService.java b/persistence-spi/src/main/java/org/apache/unomi/persistence/spi/PersistenceService.java
index 132c583..75c0a3b 100644
--- a/persistence-spi/src/main/java/org/apache/unomi/persistence/spi/PersistenceService.java
+++ b/persistence-spi/src/main/java/org/apache/unomi/persistence/spi/PersistenceService.java
@@ -68,6 +68,17 @@ public interface PersistenceService {
     boolean save(Item item);
 
     /**
+     * Persists the specified Item in the context server.
+     *
+     * @param item the item to persist
+     * @param useBatching whether to use batching or not for saving the item. If activating there may be a delay between
+     *                 the call to this method and the actual saving in the persistence backend.
+     *
+     * @return {@code true} if the item was properly persisted, {@code false} otherwise
+     */
+    boolean save(Item item, boolean useBatching);
+
+    /**
      * Updates the item of the specified class and identified by the specified identifier with new property values provided as name - value pairs in the specified Map.
      *
      * @param itemId   the identifier of the item we want to update