summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortjr <tjr@FreeBSD.org>2004-03-27 08:14:15 +0000
committertjr <tjr@FreeBSD.org>2004-03-27 08:14:15 +0000
commit642f4c91afbe006726dd200c3930b0858e481b9d (patch)
tree19ac68324e90f69bde7f7400f432c3e49e8f2e2d
parentb04fb1227537fc0212af7d7dc9f4ed352bf0efb2 (diff)
downloadFreeBSD-src-642f4c91afbe006726dd200c3930b0858e481b9d.zip
FreeBSD-src-642f4c91afbe006726dd200c3930b0858e481b9d.tar.gz
Add UTF-8 versions of all the currently supported system locales. Most of
the hard work was done by Hye-Shik Chang in the misc/utf8locale port; I made a few minor adjustments and merged the makefiles. PR: 44307
-rw-r--r--etc/mtree/BSD.usr.dist102
-rw-r--r--share/colldef/Makefile10
-rw-r--r--share/mklocale/Makefile12
-rw-r--r--share/mklocale/UTF-8.src2378
-rw-r--r--share/monetdef/Makefile57
-rw-r--r--share/monetdef/be_BY.UTF-8.src35
-rw-r--r--share/monetdef/bg_BG.UTF-8.src36
-rw-r--r--share/monetdef/cs_CZ.UTF-8.src36
-rw-r--r--share/monetdef/en_GB.UTF-8.src36
-rw-r--r--share/monetdef/en_IE.UTF-8.src36
-rw-r--r--share/monetdef/hy_AM.UTF-8.src39
-rw-r--r--share/monetdef/kk_KZ.UTF-8.src36
-rw-r--r--share/monetdef/pl_PL.UTF-8.src36
-rw-r--r--share/monetdef/ru_RU.UTF-8.src36
-rw-r--r--share/monetdef/sr_YU.UTF-8.src36
-rw-r--r--share/monetdef/uk_UA.UTF-8.src36
-rw-r--r--share/monetdef/zh_CN.UTF-8.src36
-rw-r--r--share/monetdef/zh_HK.UTF-8.src36
-rw-r--r--share/msgdef/Makefile74
-rw-r--r--share/msgdef/be_BY.UTF-8.src13
-rw-r--r--share/msgdef/bg_BG.UTF-8.src14
-rw-r--r--share/msgdef/el_GR.UTF-8.src14
-rw-r--r--share/msgdef/hy_AM.UTF-8.src17
-rw-r--r--share/msgdef/ja_JP.UTF-8.src10
-rw-r--r--share/msgdef/kk_KZ.UTF-8.src14
-rw-r--r--share/msgdef/ru_RU.UTF-8.src14
-rw-r--r--share/msgdef/sr_YU.UTF-8.src14
-rw-r--r--share/msgdef/uk_UA.UTF-8.src14
-rw-r--r--share/msgdef/zh_CN.UTF-8.src14
-rw-r--r--share/msgdef/zh_TW.UTF-8.src14
-rw-r--r--share/numericdef/Makefile86
-rw-r--r--share/timedef/Makefile74
-rw-r--r--share/timedef/be_BY.UTF-8.src100
-rw-r--r--share/timedef/bg_BG.UTF-8.src101
-rw-r--r--share/timedef/ca_ES.UTF-8.src102
-rw-r--r--share/timedef/cs_CZ.UTF-8.src105
-rw-r--r--share/timedef/da_DK.UTF-8.src102
-rw-r--r--share/timedef/de_AT.UTF-8.src102
-rw-r--r--share/timedef/de_DE.UTF-8.src102
-rw-r--r--share/timedef/el_GR.UTF-8.src102
-rw-r--r--share/timedef/es_ES.UTF-8.src102
-rw-r--r--share/timedef/et_EE.UTF-8.src102
-rw-r--r--share/timedef/fi_FI.UTF-8.src101
-rw-r--r--share/timedef/fr_FR.UTF-8.src102
-rw-r--r--share/timedef/hr_HR.UTF-8.src102
-rw-r--r--share/timedef/hu_HU.UTF-8.src101
-rw-r--r--share/timedef/hy_AM.UTF-8.src105
-rw-r--r--share/timedef/is_IS.UTF-8.src102
-rw-r--r--share/timedef/it_IT.UTF-8.src102
-rw-r--r--share/timedef/ja_JP.UTF-8.src105
-rw-r--r--share/timedef/kk_KZ.UTF-8.src102
-rw-r--r--share/timedef/ko_KR.UTF-8.src108
-rw-r--r--share/timedef/lt_LT.UTF-8.src101
-rw-r--r--share/timedef/no_NO.UTF-8.src102
-rw-r--r--share/timedef/pl_PL.UTF-8.src99
-rw-r--r--share/timedef/pt_BR.UTF-8.src103
-rw-r--r--share/timedef/pt_PT.UTF-8.src103
-rw-r--r--share/timedef/ro_RO.UTF-8.src102
-rw-r--r--share/timedef/ru_RU.UTF-8.src102
-rw-r--r--share/timedef/sk_SK.UTF-8.src105
-rw-r--r--share/timedef/sl_SI.UTF-8.src102
-rw-r--r--share/timedef/sr_YU.UTF-8.src102
-rw-r--r--share/timedef/sv_SE.UTF-8.src101
-rw-r--r--share/timedef/tr_TR.UTF-8.src104
-rw-r--r--share/timedef/uk_UA.UTF-8.src102
-rw-r--r--share/timedef/zh_CN.UTF-8.src102
-rw-r--r--share/timedef/zh_TW.UTF-8.src101
67 files changed, 6993 insertions, 3 deletions
diff --git a/etc/mtree/BSD.usr.dist b/etc/mtree/BSD.usr.dist
index 91d9f30..6fd3d2d 100644
--- a/etc/mtree/BSD.usr.dist
+++ b/etc/mtree/BSD.usr.dist
@@ -335,10 +335,14 @@
isdn
..
locale
+ UTF-8
+ ..
af_ZA.ISO8859-1
..
af_ZA.ISO8859-15
..
+ af_ZA.UTF-8
+ ..
am_ET.UTF-8
..
be_BY.CP1131
@@ -347,116 +351,178 @@
..
be_BY.ISO8859-5
..
+ be_BY.UTF-8
+ ..
bg_BG.CP1251
..
+ bg_BG.UTF-8
+ ..
ca_ES.ISO8859-1
..
ca_ES.ISO8859-15
..
+ ca_ES.UTF-8
+ ..
cs_CZ.ISO8859-2
..
+ cs_CZ.UTF-8
+ ..
da_DK.ISO8859-1
..
da_DK.ISO8859-15
..
+ da_DK.UTF-8
+ ..
de_AT.ISO8859-1
..
de_AT.ISO8859-15
..
+ de_AT.UTF-8
+ ..
de_CH.ISO8859-1
..
de_CH.ISO8859-15
..
+ de_CH.UTF-8
+ ..
de_DE.ISO8859-1
..
de_DE.ISO8859-15
..
+ de_DE.UTF-8
+ ..
el_GR.ISO8859-7
..
+ el_GR.UTF-8
+ ..
en_AU.ISO8859-1
..
en_AU.ISO8859-15
..
en_AU.US-ASCII
..
+ en_AU.UTF-8
+ ..
en_CA.ISO8859-1
..
en_CA.ISO8859-15
..
en_CA.US-ASCII
..
+ en_CA.UTF-8
+ ..
en_GB.ISO8859-1
..
en_GB.ISO8859-15
..
en_GB.US-ASCII
..
+ en_GB.UTF-8
+ ..
+ en_IE.UTF-8
+ ..
en_NZ.ISO8859-1
..
en_NZ.ISO8859-15
..
en_NZ.US-ASCII
..
+ en_NZ.UTF-8
+ ..
en_US.ISO8859-1
..
en_US.ISO8859-15
..
en_US.US-ASCII
..
+ en_US.UTF-8
+ ..
es_ES.ISO8859-1
..
es_ES.ISO8859-15
..
+ es_ES.UTF-8
+ ..
et_EE.ISO8859-15
..
+ et_EE.UTF-8
+ ..
fi_FI.ISO8859-1
..
fi_FI.ISO8859-15
..
+ fi_FI.UTF-8
+ ..
fr_BE.ISO8859-1
..
fr_BE.ISO8859-15
..
+ fr_BE.UTF-8
+ ..
fr_CA.ISO8859-1
..
fr_CA.ISO8859-15
..
+ fr_CA.UTF-8
+ ..
fr_CH.ISO8859-1
..
fr_CH.ISO8859-15
..
+ fr_CH.UTF-8
+ ..
fr_FR.ISO8859-1
..
fr_FR.ISO8859-15
..
+ fr_FR.UTF-8
+ ..
hi_IN.ISCII-DEV
..
hr_HR.ISO8859-2
..
+ hr_HR.UTF-8
+ ..
hu_HU.ISO8859-2
..
+ hu_HU.UTF-8
+ ..
hy_AM.ARMSCII-8
..
+ hy_AM.UTF-8
+ ..
is_IS.ISO8859-1
..
is_IS.ISO8859-15
..
+ is_IS.UTF-8
+ ..
it_CH.ISO8859-1
..
it_CH.ISO8859-15
..
+ it_CH.UTF-8
+ ..
it_IT.ISO8859-1
..
it_IT.ISO8859-15
..
+ it_IT.UTF-8
+ ..
ja_JP.SJIS
..
+ ja_JP.UTF-8
+ ..
ja_JP.eucJP
..
kk_KZ.PT154
..
+ kk_KZ.UTF-8
+ ..
ko_KR.CP949
..
+ ko_KR.UTF-8
+ ..
ko_KR.eucKR
..
la_LN.ISO8859-1
@@ -473,28 +539,44 @@
..
lt_LT.ISO8859-4
..
+ lt_LT.UTF-8
+ ..
nl_BE.ISO8859-1
..
nl_BE.ISO8859-15
..
+ nl_BE.UTF-8
+ ..
nl_NL.ISO8859-1
..
nl_NL.ISO8859-15
..
+ nl_NL.UTF-8
+ ..
no_NO.ISO8859-1
..
no_NO.ISO8859-15
..
+ no_NO.UTF-8
+ ..
pl_PL.ISO8859-2
..
+ pl_PL.UTF-8
+ ..
pt_BR.ISO8859-1
..
+ pt_BR.UTF-8
+ ..
pt_PT.ISO8859-1
..
pt_PT.ISO8859-15
..
+ pt_PT.UTF-8
+ ..
ro_RO.ISO8859-2
..
+ ro_RO.UTF-8
+ ..
ru_RU.CP1251
..
ru_RU.CP866
@@ -503,36 +585,56 @@
..
ru_RU.KOI8-R
..
+ ru_RU.UTF-8
+ ..
sk_SK.ISO8859-2
..
+ sk_SK.UTF-8
+ ..
sl_SI.ISO8859-2
..
+ sl_SI.UTF-8
+ ..
sr_YU.ISO8859-2
..
sr_YU.ISO8859-5
..
+ sr_YU.UTF-8
+ ..
sv_SE.ISO8859-1
..
sv_SE.ISO8859-15
..
+ sv_SE.UTF-8
+ ..
tr_TR.ISO8859-9
..
+ tr_TR.UTF-8
+ ..
uk_UA.ISO8859-5
..
uk_UA.KOI8-U
..
+ uk_UA.UTF-8
+ ..
zh_CN.GB18030
..
zh_CN.GB2312
..
zh_CN.GBK
..
+ zh_CN.UTF-8
+ ..
zh_CN.eucCN
..
zh_HK.Big5HKSCS
..
+ zh_HK.UTF-8
+ ..
zh_TW.Big5
..
+ zh_TW.UTF-8
+ ..
..
man
/set uname=man
diff --git a/share/colldef/Makefile b/share/colldef/Makefile
index f0f3dd0..064a1c9 100644
--- a/share/colldef/Makefile
+++ b/share/colldef/Makefile
@@ -56,6 +56,12 @@ LATIN1LINKS= af_ZA da_DK en_AU en_CA en_GB en_NZ en_US fi_FI \
LATIN2LINKS= hr_HR hu_HU ro_RO sr_YU
+UTF8LINKS= af_ZA be_BY bg_BG ca_ES cs_CZ da_DK de_AT de_CH de_DE el_GR \
+ en_AU en_CA en_GB en_IE en_NZ en_US es_ES et_EE fi_FI fr_BE \
+ fr_CA fr_CH fr_FR hr_HR hu_HU hy_AM is_IS it_CH it_IT ja_JP \
+ kk_KZ ko_KR lt_LT nl_BE nl_NL no_NO pl_PL pt_BR pt_PT ro_RO \
+ ru_RU sk_SK sl_SI sr_YU sv_SE tr_TR uk_UA zh_CN zh_HK zh_TW
+
.SUFFIXES: .src .out
.src.out:
@@ -132,5 +138,9 @@ afterinstall:
${LOCALEDIR}/sk_SK.ISO8859-2/LC_COLLATE
ln -fs ../pt_PT.ISO8859-1/LC_COLLATE \
${LOCALEDIR}/pt_BR.ISO8859-1/LC_COLLATE
+.for link in ${UTF8LINKS}
+ ln -fs ../la_LN.US-ASCII/LC_COLLATE \
+ ${LOCALEDIR}/${link}.UTF-8/LC_COLLATE
+.endfor
.include <bsd.prog.mk>
diff --git a/share/mklocale/Makefile b/share/mklocale/Makefile
index 446572b..83f3dba 100644
--- a/share/mklocale/Makefile
+++ b/share/mklocale/Makefile
@@ -3,7 +3,8 @@
NOMAN=YES
CLEANFILES+= ${LOCALES:S/$/.out/g}
-LOCALES= am_ET.UTF-8 \
+LOCALES= UTF-8 \
+ am_ET.UTF-8 \
be_BY.CP1131 \
bg_BG.CP1251 \
el_GR.ISO8859-7 \
@@ -43,6 +44,11 @@ LATIN2LINKS= cs_CZ hr_HR hu_HU pl_PL sl_SI sr_YU ro_RO sk_SK
LATIN4LINKS= lt_LT
LATIN5LINKS= sr_YU uk_UA be_BY
CP1251LINKS= ru_RU be_BY
+UTF8LINKS= af_ZA be_BY bg_BG ca_ES cs_CZ da_DK de_AT de_CH de_DE el_GR \
+ en_AU en_CA en_GB en_IE en_NZ en_US es_ES et_EE fi_FI fr_BE \
+ fr_CA fr_CH fr_FR hr_HR hu_HU hy_AM is_IS it_CH it_IT ja_JP \
+ kk_KZ ko_KR lt_LT nl_BE nl_NL no_NO pl_PL pt_BR pt_PT ro_RO \
+ ru_RU sk_SK sl_SI sr_YU sv_SE tr_TR uk_UA zh_CN zh_HK zh_TW
.SUFFIXES: .src .out
@@ -86,5 +92,9 @@ afterinstall:
.endfor
ln -fs ../la_LN.US-ASCII/LC_CTYPE \
${LOCALEDIR}/tr_TR.ISO8859-9/LC_CTYPE
+.for link in ${UTF8LINKS}
+ ln -fs ../UTF-8/LC_CTYPE \
+ ${LOCALEDIR}/${link}.UTF-8/LC_CTYPE
+.endfor
.include <bsd.prog.mk>
diff --git a/share/mklocale/UTF-8.src b/share/mklocale/UTF-8.src
new file mode 100644
index 0000000..edc1617
--- /dev/null
+++ b/share/mklocale/UTF-8.src
@@ -0,0 +1,2378 @@
+/*
+ * Unicode 3.2 ctypes table
+ *
+ * Generated by Hye-Shik Chang <perky@FreeBSD.org>
+ *
+ * $FreeBSD$
+ */
+
+/*
+ * UCD(Unicode Character Database) Terms of Use
+ *
+ * Disclaimer
+ *
+ * The Unicode Character Database is provided as is by Unicode, Inc. No claims
+ * are made as to fitness for any particular purpose. No warranties of any kind
+ * are expressed or implied. The recipient agrees to determine applicability of
+ * information provided. If this file has been purchased on magnetic or optical
+ * media from Unicode, Inc., the sole remedy for any claim will be exchange of
+ * defective media within 90 days of receipt.
+ *
+ * This disclaimer is applicable for all other data files accompanying the
+ * Unicode Character Database, some of which have been compiled by the Unicode
+ * Consortium, and some of which have been supplied by other sources.
+ *
+ * Limitations on Rights to Redistribute This Data
+ *
+ * Recipient is granted the right to make copies in any form for internal
+ * distribution and to freely use the information supplied in the creation of
+ * products supporting the UnicodeTM Standard. The files in the Unicode
+ * Character Database can be redistributed to third parties or other
+ * organizations (whether for profit or not) as long as this notice and the
+ * disclaimer notice are retained. Information can be extracted from these
+ * files and used in documentation or programs, as long as there is an
+ * accompanying notice indicating the source.
+ */
+
+ENCODING "UTF-8"
+VARIABLE Unicode 3.2 Character Types
+
+
+/*
+ * U+0000 - U+007F : Basic Latin
+ */
+
+ALPHA 'A' - 'Z' 'a' - 'z'
+CONTROL 0x0000 - 0x001f 0x007f
+DIGIT '0' - '9'
+GRAPH 0x0021 - 0x007e
+LOWER 'a' - 'z'
+PUNCT 0x0021 - 0x002f 0x003a - 0x0040 0x005b - 0x0060 0x007b - 0x007e
+SPACE 0x0009 - 0x000d 0x0020
+UPPER 'A' - 'Z'
+XDIGIT '0' - '9' 'A' - 'F' 'a' - 'f'
+BLANK 0x0009 0x000b 0x0020
+PRINT 0x0020 - 0x007e
+SWIDTH1 0x0020 - 0x007e
+
+MAPUPPER < 'a' - 'z' : 'A' >
+MAPLOWER < 'A' - 'Z' : 'a' >
+TODIGIT < '0' - '9' : 0x0000 >
+TODIGIT < 'A' - 'F' : 10 > < 'a' - 'f' : 10 >
+
+
+/*
+ * U+0080 - U+00FF : Latin-1 Supplement
+ */
+
+ALPHA 0x00aa 0x00b5 0x00ba 0x00c0 - 0x00d6 0x00d8 - 0x00f6
+ALPHA 0x00f8 - 0x00ff
+CONTROL 0x0080 - 0x009f
+GRAPH 0x00a1 - 0x00ff
+LOWER 0x00aa 0x00b5 0x00ba 0x00df - 0x00f6 0x00f8 - 0x00ff
+PUNCT 0x00a1 - 0x00a9 0x00ab - 0x00b1 0x00b4 0x00b6 - 0x00b8
+PUNCT 0x00bb 0x00bf 0x00d7 0x00f7
+SPACE 0x0085 0x00a0
+UPPER 0x00c0 - 0x00d6 0x00d8 - 0x00de
+BLANK 0x00a0
+PRINT 0x00a0 - 0x00ff
+SPECIAL 0x00b2 0x00b3 0x00b9 0x00bc - 0x00be
+SWIDTH1 0x00a0 - 0x00ff
+
+MAPUPPER < 0x00b5 0x039c >
+MAPUPPER < 0x00e0 - 0x00f6 : 0x00c0 >
+MAPUPPER < 0x00f8 - 0x00fe : 0x00d8 >
+MAPUPPER < 0x00ff 0x0178 >
+MAPLOWER < 0x00c0 - 0x00d6 : 0x00e0 >
+MAPLOWER < 0x00d8 - 0x00de : 0x00f8 >
+
+
+/*
+ * U+0100 - U+017F : Latin Extended-A
+ */
+
+ALPHA 0x0100 - 0x017f
+GRAPH 0x0100 - 0x017f
+LOWER 0x0101 0x0103 0x0105 0x0107 0x0109 0x010b 0x010d
+LOWER 0x010f 0x0111 0x0113 0x0115 0x0117 0x0119 0x011b
+LOWER 0x011d 0x011f 0x0121 0x0123 0x0125 0x0127 0x0129
+LOWER 0x012b 0x012d 0x012f 0x0131 0x0133 0x0135 0x0137 0x0138
+LOWER 0x013a 0x013c 0x013e 0x0140 0x0142 0x0144 0x0146
+LOWER 0x0148 0x0149 0x014b 0x014d 0x014f 0x0151 0x0153
+LOWER 0x0155 0x0157 0x0159 0x015b 0x015d 0x015f 0x0161
+LOWER 0x0163 0x0165 0x0167 0x0169 0x016b 0x016d 0x016f
+LOWER 0x0171 0x0173 0x0175 0x0177 0x017a 0x017c 0x017e 0x017f
+UPPER 0x0100 0x0102 0x0104 0x0106 0x0108 0x010a 0x010c
+UPPER 0x010e 0x0110 0x0112 0x0114 0x0116 0x0118 0x011a
+UPPER 0x011c 0x011e 0x0120 0x0122 0x0124 0x0126 0x0128
+UPPER 0x012a 0x012c 0x012e 0x0130 0x0132 0x0134 0x0136
+UPPER 0x0139 0x013b 0x013d 0x013f 0x0141 0x0143 0x0145
+UPPER 0x0147 0x014a 0x014c 0x014e 0x0150 0x0152 0x0154
+UPPER 0x0156 0x0158 0x015a 0x015c 0x015e 0x0160 0x0162
+UPPER 0x0164 0x0166 0x0168 0x016a 0x016c 0x016e 0x0170
+UPPER 0x0172 0x0174 0x0176 0x0178 0x0179 0x017b 0x017d
+PRINT 0x0100 - 0x017f
+SWIDTH1 0x0100 - 0x017f
+
+MAPUPPER < 0x0101 0x0100 >
+MAPUPPER < 0x0103 0x0102 >
+MAPUPPER < 0x0105 0x0104 >
+MAPUPPER < 0x0107 0x0106 >
+MAPUPPER < 0x0109 0x0108 >
+MAPUPPER < 0x010b 0x010a >
+MAPUPPER < 0x010d 0x010c >
+MAPUPPER < 0x010f 0x010e >
+MAPUPPER < 0x0111 0x0110 >
+MAPUPPER < 0x0113 0x0112 >
+MAPUPPER < 0x0115 0x0114 >
+MAPUPPER < 0x0117 0x0116 >
+MAPUPPER < 0x0119 0x0118 >
+MAPUPPER < 0x011b 0x011a >
+MAPUPPER < 0x011d 0x011c >
+MAPUPPER < 0x011f 0x011e >
+MAPUPPER < 0x0121 0x0120 >
+MAPUPPER < 0x0123 0x0122 >
+MAPUPPER < 0x0125 0x0124 >
+MAPUPPER < 0x0127 0x0126 >
+MAPUPPER < 0x0129 0x0128 >
+MAPUPPER < 0x012b 0x012a >
+MAPUPPER < 0x012d 0x012c >
+MAPUPPER < 0x012f 0x012e >
+MAPUPPER < 0x0131 'I' >
+MAPUPPER < 0x0133 0x0132 >
+MAPUPPER < 0x0135 0x0134 >
+MAPUPPER < 0x0137 0x0136 >
+MAPUPPER < 0x013a 0x0139 >
+MAPUPPER < 0x013c 0x013b >
+MAPUPPER < 0x013e 0x013d >
+MAPUPPER < 0x0140 0x013f >
+MAPUPPER < 0x0142 0x0141 >
+MAPUPPER < 0x0144 0x0143 >
+MAPUPPER < 0x0146 0x0145 >
+MAPUPPER < 0x0148 0x0147 >
+MAPUPPER < 0x014b 0x014a >
+MAPUPPER < 0x014d 0x014c >
+MAPUPPER < 0x014f 0x014e >
+MAPUPPER < 0x0151 0x0150 >
+MAPUPPER < 0x0153 0x0152 >
+MAPUPPER < 0x0155 0x0154 >
+MAPUPPER < 0x0157 0x0156 >
+MAPUPPER < 0x0159 0x0158 >
+MAPUPPER < 0x015b 0x015a >
+MAPUPPER < 0x015d 0x015c >
+MAPUPPER < 0x015f 0x015e >
+MAPUPPER < 0x0161 0x0160 >
+MAPUPPER < 0x0163 0x0162 >
+MAPUPPER < 0x0165 0x0164 >
+MAPUPPER < 0x0167 0x0166 >
+MAPUPPER < 0x0169 0x0168 >
+MAPUPPER < 0x016b 0x016a >
+MAPUPPER < 0x016d 0x016c >
+MAPUPPER < 0x016f 0x016e >
+MAPUPPER < 0x0171 0x0170 >
+MAPUPPER < 0x0173 0x0172 >
+MAPUPPER < 0x0175 0x0174 >
+MAPUPPER < 0x0177 0x0176 >
+MAPUPPER < 0x017a 0x0179 >
+MAPUPPER < 0x017c 0x017b >
+MAPUPPER < 0x017e 0x017d >
+MAPUPPER < 0x017f 'S' >
+MAPLOWER < 0x0100 0x0101 >
+MAPLOWER < 0x0102 0x0103 >
+MAPLOWER < 0x0104 0x0105 >
+MAPLOWER < 0x0106 0x0107 >
+MAPLOWER < 0x0108 0x0109 >
+MAPLOWER < 0x010a 0x010b >
+MAPLOWER < 0x010c 0x010d >
+MAPLOWER < 0x010e 0x010f >
+MAPLOWER < 0x0110 0x0111 >
+MAPLOWER < 0x0112 0x0113 >
+MAPLOWER < 0x0114 0x0115 >
+MAPLOWER < 0x0116 0x0117 >
+MAPLOWER < 0x0118 0x0119 >
+MAPLOWER < 0x011a 0x011b >
+MAPLOWER < 0x011c 0x011d >
+MAPLOWER < 0x011e 0x011f >
+MAPLOWER < 0x0120 0x0121 >
+MAPLOWER < 0x0122 0x0123 >
+MAPLOWER < 0x0124 0x0125 >
+MAPLOWER < 0x0126 0x0127 >
+MAPLOWER < 0x0128 0x0129 >
+MAPLOWER < 0x012a 0x012b >
+MAPLOWER < 0x012c 0x012d >
+MAPLOWER < 0x012e 0x012f >
+MAPLOWER < 0x0130 'i' >
+MAPLOWER < 0x0132 0x0133 >
+MAPLOWER < 0x0134 0x0135 >
+MAPLOWER < 0x0136 0x0137 >
+MAPLOWER < 0x0139 0x013a >
+MAPLOWER < 0x013b 0x013c >
+MAPLOWER < 0x013d 0x013e >
+MAPLOWER < 0x013f 0x0140 >
+MAPLOWER < 0x0141 0x0142 >
+MAPLOWER < 0x0143 0x0144 >
+MAPLOWER < 0x0145 0x0146 >
+MAPLOWER < 0x0147 0x0148 >
+MAPLOWER < 0x014a 0x014b >
+MAPLOWER < 0x014c 0x014d >
+MAPLOWER < 0x014e 0x014f >
+MAPLOWER < 0x0150 0x0151 >
+MAPLOWER < 0x0152 0x0153 >
+MAPLOWER < 0x0154 0x0155 >
+MAPLOWER < 0x0156 0x0157 >
+MAPLOWER < 0x0158 0x0159 >
+MAPLOWER < 0x015a 0x015b >
+MAPLOWER < 0x015c 0x015d >
+MAPLOWER < 0x015e 0x015f >
+MAPLOWER < 0x0160 0x0161 >
+MAPLOWER < 0x0162 0x0163 >
+MAPLOWER < 0x0164 0x0165 >
+MAPLOWER < 0x0166 0x0167 >
+MAPLOWER < 0x0168 0x0169 >
+MAPLOWER < 0x016a 0x016b >
+MAPLOWER < 0x016c 0x016d >
+MAPLOWER < 0x016e 0x016f >
+MAPLOWER < 0x0170 0x0171 >
+MAPLOWER < 0x0172 0x0173 >
+MAPLOWER < 0x0174 0x0175 >
+MAPLOWER < 0x0176 0x0177 >
+MAPLOWER < 0x0178 0x00ff >
+MAPLOWER < 0x0179 0x017a >
+MAPLOWER < 0x017b 0x017c >
+MAPLOWER < 0x017d 0x017e >
+
+
+/*
+ * U+0180 - U+024F : Latin Extended-B
+ */
+
+ALPHA 0x0180 - 0x01ba 0x01bc - 0x01bf 0x01c4 - 0x0220 0x0222 - 0x0233
+GRAPH 0x0180 - 0x0220 0x0222 - 0x0233
+LOWER 0x0180 0x0183 0x0185 0x0188 0x018c 0x018d 0x0192
+LOWER 0x0195 0x0199 - 0x019b 0x019e 0x01a1 0x01a3 0x01a5
+LOWER 0x01a8 0x01aa 0x01ab 0x01ad 0x01b0 0x01b4 0x01b6
+LOWER 0x01b9 0x01ba 0x01bd - 0x01bf 0x01c6 0x01c9 0x01cc
+LOWER 0x01ce 0x01d0 0x01d2 0x01d4 0x01d6 0x01d8 0x01da
+LOWER 0x01dc 0x01dd 0x01df 0x01e1 0x01e3 0x01e5 0x01e7
+LOWER 0x01e9 0x01eb 0x01ed 0x01ef 0x01f0 0x01f3 0x01f5
+LOWER 0x01f9 0x01fb 0x01fd 0x01ff 0x0201 0x0203 0x0205
+LOWER 0x0207 0x0209 0x020b 0x020d 0x020f 0x0211 0x0213
+LOWER 0x0215 0x0217 0x0219 0x021b 0x021d 0x021f 0x0223
+LOWER 0x0225 0x0227 0x0229 0x022b 0x022d 0x022f 0x0231
+LOWER 0x0233
+UPPER 0x0181 0x0182 0x0184 0x0186 0x0187 0x0189 - 0x018b
+UPPER 0x018e - 0x0191 0x0193 0x0194 0x0196 - 0x0198 0x019c 0x019d
+UPPER 0x019f 0x01a0 0x01a2 0x01a4 0x01a6 0x01a7 0x01a9
+UPPER 0x01ac 0x01ae 0x01af 0x01b1 - 0x01b3 0x01b5 0x01b7 0x01b8
+UPPER 0x01bc 0x01c4 0x01c7 0x01ca 0x01cd 0x01cf 0x01d1
+UPPER 0x01d3 0x01d5 0x01d7 0x01d9 0x01db 0x01de 0x01e0
+UPPER 0x01e2 0x01e4 0x01e6 0x01e8 0x01ea 0x01ec 0x01ee
+UPPER 0x01f1 0x01f4 0x01f6 - 0x01f8 0x01fa 0x01fc 0x01fe
+UPPER 0x0200 0x0202 0x0204 0x0206 0x0208 0x020a 0x020c
+UPPER 0x020e 0x0210 0x0212 0x0214 0x0216 0x0218 0x021a
+UPPER 0x021c 0x021e 0x0220 0x0222 0x0224 0x0226 0x0228
+UPPER 0x022a 0x022c 0x022e 0x0230 0x0232
+PRINT 0x0180 - 0x0220 0x0222 - 0x0233
+SWIDTH1 0x0180 - 0x0220 0x0222 - 0x0233
+
+MAPUPPER < 0x0183 0x0182 >
+MAPUPPER < 0x0185 0x0184 >
+MAPUPPER < 0x0188 0x0187 >
+MAPUPPER < 0x018c 0x018b >
+MAPUPPER < 0x0192 0x0191 >
+MAPUPPER < 0x0195 0x01f6 >
+MAPUPPER < 0x0199 0x0198 >
+MAPUPPER < 0x019e 0x0220 >
+MAPUPPER < 0x01a1 0x01a0 >
+MAPUPPER < 0x01a3 0x01a2 >
+MAPUPPER < 0x01a5 0x01a4 >
+MAPUPPER < 0x01a8 0x01a7 >
+MAPUPPER < 0x01ad 0x01ac >
+MAPUPPER < 0x01b0 0x01af >
+MAPUPPER < 0x01b4 0x01b3 >
+MAPUPPER < 0x01b6 0x01b5 >
+MAPUPPER < 0x01b9 0x01b8 >
+MAPUPPER < 0x01bd 0x01bc >
+MAPUPPER < 0x01bf 0x01f7 >
+MAPUPPER < 0x01c5 0x01c4 >
+MAPUPPER < 0x01c6 0x01c4 >
+MAPUPPER < 0x01c8 0x01c7 >
+MAPUPPER < 0x01c9 0x01c7 >
+MAPUPPER < 0x01cb 0x01ca >
+MAPUPPER < 0x01cc 0x01ca >
+MAPUPPER < 0x01ce 0x01cd >
+MAPUPPER < 0x01d0 0x01cf >
+MAPUPPER < 0x01d2 0x01d1 >
+MAPUPPER < 0x01d4 0x01d3 >
+MAPUPPER < 0x01d6 0x01d5 >
+MAPUPPER < 0x01d8 0x01d7 >
+MAPUPPER < 0x01da 0x01d9 >
+MAPUPPER < 0x01dc 0x01db >
+MAPUPPER < 0x01dd 0x018e >
+MAPUPPER < 0x01df 0x01de >
+MAPUPPER < 0x01e1 0x01e0 >
+MAPUPPER < 0x01e3 0x01e2 >
+MAPUPPER < 0x01e5 0x01e4 >
+MAPUPPER < 0x01e7 0x01e6 >
+MAPUPPER < 0x01e9 0x01e8 >
+MAPUPPER < 0x01eb 0x01ea >
+MAPUPPER < 0x01ed 0x01ec >
+MAPUPPER < 0x01ef 0x01ee >
+MAPUPPER < 0x01f2 0x01f1 >
+MAPUPPER < 0x01f3 0x01f1 >
+MAPUPPER < 0x01f5 0x01f4 >
+MAPUPPER < 0x01f9 0x01f8 >
+MAPUPPER < 0x01fb 0x01fa >
+MAPUPPER < 0x01fd 0x01fc >
+MAPUPPER < 0x01ff 0x01fe >
+MAPUPPER < 0x0201 0x0200 >
+MAPUPPER < 0x0203 0x0202 >
+MAPUPPER < 0x0205 0x0204 >
+MAPUPPER < 0x0207 0x0206 >
+MAPUPPER < 0x0209 0x0208 >
+MAPUPPER < 0x020b 0x020a >
+MAPUPPER < 0x020d 0x020c >
+MAPUPPER < 0x020f 0x020e >
+MAPUPPER < 0x0211 0x0210 >
+MAPUPPER < 0x0213 0x0212 >
+MAPUPPER < 0x0215 0x0214 >
+MAPUPPER < 0x0217 0x0216 >
+MAPUPPER < 0x0219 0x0218 >
+MAPUPPER < 0x021b 0x021a >
+MAPUPPER < 0x021d 0x021c >
+MAPUPPER < 0x021f 0x021e >
+MAPUPPER < 0x0223 0x0222 >
+MAPUPPER < 0x0225 0x0224 >
+MAPUPPER < 0x0227 0x0226 >
+MAPUPPER < 0x0229 0x0228 >
+MAPUPPER < 0x022b 0x022a >
+MAPUPPER < 0x022d 0x022c >
+MAPUPPER < 0x022f 0x022e >
+MAPUPPER < 0x0231 0x0230 >
+MAPUPPER < 0x0233 0x0232 >
+MAPLOWER < 0x0181 0x0253 >
+MAPLOWER < 0x0182 0x0183 >
+MAPLOWER < 0x0184 0x0185 >
+MAPLOWER < 0x0186 0x0254 >
+MAPLOWER < 0x0187 0x0188 >
+MAPLOWER < 0x0189 - 0x018a : 0x0256 >
+MAPLOWER < 0x018b 0x018c >
+MAPLOWER < 0x018e 0x01dd >
+MAPLOWER < 0x018f 0x0259 >
+MAPLOWER < 0x0190 0x025b >
+MAPLOWER < 0x0191 0x0192 >
+MAPLOWER < 0x0193 0x0260 >
+MAPLOWER < 0x0194 0x0263 >
+MAPLOWER < 0x0196 0x0269 >
+MAPLOWER < 0x0197 0x0268 >
+MAPLOWER < 0x0198 0x0199 >
+MAPLOWER < 0x019c 0x026f >
+MAPLOWER < 0x019d 0x0272 >
+MAPLOWER < 0x019f 0x0275 >
+MAPLOWER < 0x01a0 0x01a1 >
+MAPLOWER < 0x01a2 0x01a3 >
+MAPLOWER < 0x01a4 0x01a5 >
+MAPLOWER < 0x01a6 0x0280 >
+MAPLOWER < 0x01a7 0x01a8 >
+MAPLOWER < 0x01a9 0x0283 >
+MAPLOWER < 0x01ac 0x01ad >
+MAPLOWER < 0x01ae 0x0288 >
+MAPLOWER < 0x01af 0x01b0 >
+MAPLOWER < 0x01b1 - 0x01b2 : 0x028a >
+MAPLOWER < 0x01b3 0x01b4 >
+MAPLOWER < 0x01b5 0x01b6 >
+MAPLOWER < 0x01b7 0x0292 >
+MAPLOWER < 0x01b8 0x01b9 >
+MAPLOWER < 0x01bc 0x01bd >
+MAPLOWER < 0x01c4 0x01c6 >
+MAPLOWER < 0x01c5 0x01c6 >
+MAPLOWER < 0x01c7 0x01c9 >
+MAPLOWER < 0x01c8 0x01c9 >
+MAPLOWER < 0x01ca 0x01cc >
+MAPLOWER < 0x01cb 0x01cc >
+MAPLOWER < 0x01cd 0x01ce >
+MAPLOWER < 0x01cf 0x01d0 >
+MAPLOWER < 0x01d1 0x01d2 >
+MAPLOWER < 0x01d3 0x01d4 >
+MAPLOWER < 0x01d5 0x01d6 >
+MAPLOWER < 0x01d7 0x01d8 >
+MAPLOWER < 0x01d9 0x01da >
+MAPLOWER < 0x01db 0x01dc >
+MAPLOWER < 0x01de 0x01df >
+MAPLOWER < 0x01e0 0x01e1 >
+MAPLOWER < 0x01e2 0x01e3 >
+MAPLOWER < 0x01e4 0x01e5 >
+MAPLOWER < 0x01e6 0x01e7 >
+MAPLOWER < 0x01e8 0x01e9 >
+MAPLOWER < 0x01ea 0x01eb >
+MAPLOWER < 0x01ec 0x01ed >
+MAPLOWER < 0x01ee 0x01ef >
+MAPLOWER < 0x01f1 0x01f3 >
+MAPLOWER < 0x01f2 0x01f3 >
+MAPLOWER < 0x01f4 0x01f5 >
+MAPLOWER < 0x01f6 0x0195 >
+MAPLOWER < 0x01f7 0x01bf >
+MAPLOWER < 0x01f8 0x01f9 >
+MAPLOWER < 0x01fa 0x01fb >
+MAPLOWER < 0x01fc 0x01fd >
+MAPLOWER < 0x01fe 0x01ff >
+MAPLOWER < 0x0200 0x0201 >
+MAPLOWER < 0x0202 0x0203 >
+MAPLOWER < 0x0204 0x0205 >
+MAPLOWER < 0x0206 0x0207 >
+MAPLOWER < 0x0208 0x0209 >
+MAPLOWER < 0x020a 0x020b >
+MAPLOWER < 0x020c 0x020d >
+MAPLOWER < 0x020e 0x020f >
+MAPLOWER < 0x0210 0x0211 >
+MAPLOWER < 0x0212 0x0213 >
+MAPLOWER < 0x0214 0x0215 >
+MAPLOWER < 0x0216 0x0217 >
+MAPLOWER < 0x0218 0x0219 >
+MAPLOWER < 0x021a 0x021b >
+MAPLOWER < 0x021c 0x021d >
+MAPLOWER < 0x021e 0x021f >
+MAPLOWER < 0x0220 0x019e >
+MAPLOWER < 0x0222 0x0223 >
+MAPLOWER < 0x0224 0x0225 >
+MAPLOWER < 0x0226 0x0227 >
+MAPLOWER < 0x0228 0x0229 >
+MAPLOWER < 0x022a 0x022b >
+MAPLOWER < 0x022c 0x022d >
+MAPLOWER < 0x022e 0x022f >
+MAPLOWER < 0x0230 0x0231 >
+MAPLOWER < 0x0232 0x0233 >
+
+
+/*
+ * U+0250 - U+02AF : IPA Extensions
+ */
+
+ALPHA 0x0250 - 0x02ad
+GRAPH 0x0250 - 0x02ad
+LOWER 0x0250 - 0x02ad
+PRINT 0x0250 - 0x02ad
+SWIDTH1 0x0250 - 0x02ad
+
+MAPUPPER < 0x0253 0x0181 >
+MAPUPPER < 0x0254 0x0186 >
+MAPUPPER < 0x0256 - 0x0257 : 0x0189 >
+MAPUPPER < 0x0259 0x018f >
+MAPUPPER < 0x025b 0x0190 >
+MAPUPPER < 0x0260 0x0193 >
+MAPUPPER < 0x0263 0x0194 >
+MAPUPPER < 0x0268 0x0197 >
+MAPUPPER < 0x0269 0x0196 >
+MAPUPPER < 0x026f 0x019c >
+MAPUPPER < 0x0272 0x019d >
+MAPUPPER < 0x0275 0x019f >
+MAPUPPER < 0x0280 0x01a6 >
+MAPUPPER < 0x0283 0x01a9 >
+MAPUPPER < 0x0288 0x01ae >
+MAPUPPER < 0x028a - 0x028b : 0x01b1 >
+MAPUPPER < 0x0292 0x01b7 >
+
+
+/*
+ * U+02B0 - U+02FF : Spacing Modifier Letters
+ */
+
+GRAPH 0x02b0 - 0x02ee
+PUNCT 0x02b9 0x02ba 0x02c2 - 0x02cf 0x02d2 - 0x02df 0x02e5 - 0x02ed
+PRINT 0x02b0 - 0x02ee
+SWIDTH1 0x02b0 - 0x02ee
+
+
+/*
+ * U+0300 - U+036F : Combining Diacritical Marks
+ */
+
+GRAPH 0x0300 - 0x034f 0x0360 - 0x036f
+PRINT 0x0300 - 0x034f 0x0360 - 0x036f
+SWIDTH1 0x0300 - 0x034f 0x0360 - 0x036f
+
+MAPUPPER < 0x0345 0x0399 >
+
+
+/*
+ * U+0370 - U+03FF : Greek and Coptic
+ */
+
+ALPHA 0x0386 0x0388 - 0x038a 0x038c 0x038e - 0x03a1 0x03a3 - 0x03ce
+ALPHA 0x03d0 - 0x03f5
+GRAPH 0x0374 0x0375 0x037a 0x037e 0x0384 - 0x038a 0x038c
+GRAPH 0x038e - 0x03a1 0x03a3 - 0x03ce 0x03d0 - 0x03f6
+LOWER 0x0390 0x03ac - 0x03ce 0x03d0 0x03d1 0x03d5 - 0x03d7
+LOWER 0x03d9 0x03db 0x03dd 0x03df 0x03e1 0x03e3 0x03e5
+LOWER 0x03e7 0x03e9 0x03eb 0x03ed 0x03ef - 0x03f3 0x03f5
+PUNCT 0x0374 0x0375 0x037e 0x0384 0x0385 0x0387 0x03f6
+UPPER 0x0386 0x0388 - 0x038a 0x038c 0x038e 0x038f 0x0391 - 0x03a1
+UPPER 0x03a3 - 0x03ab 0x03d2 - 0x03d4 0x03d8 0x03da 0x03dc
+UPPER 0x03de 0x03e0 0x03e2 0x03e4 0x03e6 0x03e8 0x03ea
+UPPER 0x03ec 0x03ee 0x03f4
+PRINT 0x0374 0x0375 0x037a 0x037e 0x0384 - 0x038a 0x038c
+PRINT 0x038e - 0x03a1 0x03a3 - 0x03ce 0x03d0 - 0x03f6
+SWIDTH1 0x0374 0x0375 0x037a 0x037e 0x0384 - 0x038a 0x038c
+SWIDTH1 0x038e - 0x03a1 0x03a3 - 0x03ce 0x03d0 - 0x03f6
+
+MAPUPPER < 0x03ac 0x0386 >
+MAPUPPER < 0x03ad - 0x03af : 0x0388 >
+MAPUPPER < 0x03b1 - 0x03c1 : 0x0391 >
+MAPUPPER < 0x03c2 0x03a3 >
+MAPUPPER < 0x03c3 - 0x03cb : 0x03a3 >
+MAPUPPER < 0x03cc 0x038c >
+MAPUPPER < 0x03cd - 0x03ce : 0x038e >
+MAPUPPER < 0x03d0 0x0392 >
+MAPUPPER < 0x03d1 0x0398 >
+MAPUPPER < 0x03d5 0x03a6 >
+MAPUPPER < 0x03d6 0x03a0 >
+MAPUPPER < 0x03d9 0x03d8 >
+MAPUPPER < 0x03db 0x03da >
+MAPUPPER < 0x03dd 0x03dc >
+MAPUPPER < 0x03df 0x03de >
+MAPUPPER < 0x03e1 0x03e0 >
+MAPUPPER < 0x03e3 0x03e2 >
+MAPUPPER < 0x03e5 0x03e4 >
+MAPUPPER < 0x03e7 0x03e6 >
+MAPUPPER < 0x03e9 0x03e8 >
+MAPUPPER < 0x03eb 0x03ea >
+MAPUPPER < 0x03ed 0x03ec >
+MAPUPPER < 0x03ef 0x03ee >
+MAPUPPER < 0x03f0 0x039a >
+MAPUPPER < 0x03f1 0x03a1 >
+MAPUPPER < 0x03f2 0x03a3 >
+MAPUPPER < 0x03f5 0x0395 >
+MAPLOWER < 0x0386 0x03ac >
+MAPLOWER < 0x0388 - 0x038a : 0x03ad >
+MAPLOWER < 0x038c 0x03cc >
+MAPLOWER < 0x038e - 0x038f : 0x03cd >
+MAPLOWER < 0x0391 - 0x03a1 : 0x03b1 >
+MAPLOWER < 0x03a3 - 0x03ab : 0x03c3 >
+MAPLOWER < 0x03d8 0x03d9 >
+MAPLOWER < 0x03da 0x03db >
+MAPLOWER < 0x03dc 0x03dd >
+MAPLOWER < 0x03de 0x03df >
+MAPLOWER < 0x03e0 0x03e1 >
+MAPLOWER < 0x03e2 0x03e3 >
+MAPLOWER < 0x03e4 0x03e5 >
+MAPLOWER < 0x03e6 0x03e7 >
+MAPLOWER < 0x03e8 0x03e9 >
+MAPLOWER < 0x03ea 0x03eb >
+MAPLOWER < 0x03ec 0x03ed >
+MAPLOWER < 0x03ee 0x03ef >
+MAPLOWER < 0x03f4 0x03b8 >
+
+
+/*
+ * U+0400 - U+04FF : Cyrillic
+ */
+
+ALPHA 0x0400 - 0x0481 0x048a - 0x04ce 0x04d0 - 0x04f5 0x04f8 0x04f9
+GRAPH 0x0400 - 0x0486 0x0488 - 0x04ce 0x04d0 - 0x04f5 0x04f8 0x04f9
+LOWER 0x0430 - 0x045f 0x0461 0x0463 0x0465 0x0467 0x0469
+LOWER 0x046b 0x046d 0x046f 0x0471 0x0473 0x0475 0x0477
+LOWER 0x0479 0x047b 0x047d 0x047f 0x0481 0x048b 0x048d
+LOWER 0x048f 0x0491 0x0493 0x0495 0x0497 0x0499 0x049b
+LOWER 0x049d 0x049f 0x04a1 0x04a3 0x04a5 0x04a7 0x04a9
+LOWER 0x04ab 0x04ad 0x04af 0x04b1 0x04b3 0x04b5 0x04b7
+LOWER 0x04b9 0x04bb 0x04bd 0x04bf 0x04c2 0x04c4 0x04c6
+LOWER 0x04c8 0x04ca 0x04cc 0x04ce 0x04d1 0x04d3 0x04d5
+LOWER 0x04d7 0x04d9 0x04db 0x04dd 0x04df 0x04e1 0x04e3
+LOWER 0x04e5 0x04e7 0x04e9 0x04eb 0x04ed 0x04ef 0x04f1
+LOWER 0x04f3 0x04f5 0x04f9
+PUNCT 0x0482
+UPPER 0x0400 - 0x042f 0x0460 0x0462 0x0464 0x0466 0x0468
+UPPER 0x046a 0x046c 0x046e 0x0470 0x0472 0x0474 0x0476
+UPPER 0x0478 0x047a 0x047c 0x047e 0x0480 0x048a 0x048c
+UPPER 0x048e 0x0490 0x0492 0x0494 0x0496 0x0498 0x049a
+UPPER 0x049c 0x049e 0x04a0 0x04a2 0x04a4 0x04a6 0x04a8
+UPPER 0x04aa 0x04ac 0x04ae 0x04b0 0x04b2 0x04b4 0x04b6
+UPPER 0x04b8 0x04ba 0x04bc 0x04be 0x04c0 0x04c1 0x04c3
+UPPER 0x04c5 0x04c7 0x04c9 0x04cb 0x04cd 0x04d0 0x04d2
+UPPER 0x04d4 0x04d6 0x04d8 0x04da 0x04dc 0x04de 0x04e0
+UPPER 0x04e2 0x04e4 0x04e6 0x04e8 0x04ea 0x04ec 0x04ee
+UPPER 0x04f0 0x04f2 0x04f4 0x04f8
+PRINT 0x0400 - 0x0486 0x0488 - 0x04ce 0x04d0 - 0x04f5 0x04f8 0x04f9
+SWIDTH1 0x0400 - 0x0486 0x0488 - 0x04ce 0x04d0 - 0x04f5 0x04f8 0x04f9
+
+MAPUPPER < 0x0430 - 0x044f : 0x0410 >
+MAPUPPER < 0x0450 - 0x045f : 0x0400 >
+MAPUPPER < 0x0461 0x0460 >
+MAPUPPER < 0x0463 0x0462 >
+MAPUPPER < 0x0465 0x0464 >
+MAPUPPER < 0x0467 0x0466 >
+MAPUPPER < 0x0469 0x0468 >
+MAPUPPER < 0x046b 0x046a >
+MAPUPPER < 0x046d 0x046c >
+MAPUPPER < 0x046f 0x046e >
+MAPUPPER < 0x0471 0x0470 >
+MAPUPPER < 0x0473 0x0472 >
+MAPUPPER < 0x0475 0x0474 >
+MAPUPPER < 0x0477 0x0476 >
+MAPUPPER < 0x0479 0x0478 >
+MAPUPPER < 0x047b 0x047a >
+MAPUPPER < 0x047d 0x047c >
+MAPUPPER < 0x047f 0x047e >
+MAPUPPER < 0x0481 0x0480 >
+MAPUPPER < 0x048b 0x048a >
+MAPUPPER < 0x048d 0x048c >
+MAPUPPER < 0x048f 0x048e >
+MAPUPPER < 0x0491 0x0490 >
+MAPUPPER < 0x0493 0x0492 >
+MAPUPPER < 0x0495 0x0494 >
+MAPUPPER < 0x0497 0x0496 >
+MAPUPPER < 0x0499 0x0498 >
+MAPUPPER < 0x049b 0x049a >
+MAPUPPER < 0x049d 0x049c >
+MAPUPPER < 0x049f 0x049e >
+MAPUPPER < 0x04a1 0x04a0 >
+MAPUPPER < 0x04a3 0x04a2 >
+MAPUPPER < 0x04a5 0x04a4 >
+MAPUPPER < 0x04a7 0x04a6 >
+MAPUPPER < 0x04a9 0x04a8 >
+MAPUPPER < 0x04ab 0x04aa >
+MAPUPPER < 0x04ad 0x04ac >
+MAPUPPER < 0x04af 0x04ae >
+MAPUPPER < 0x04b1 0x04b0 >
+MAPUPPER < 0x04b3 0x04b2 >
+MAPUPPER < 0x04b5 0x04b4 >
+MAPUPPER < 0x04b7 0x04b6 >
+MAPUPPER < 0x04b9 0x04b8 >
+MAPUPPER < 0x04bb 0x04ba >
+MAPUPPER < 0x04bd 0x04bc >
+MAPUPPER < 0x04bf 0x04be >
+MAPUPPER < 0x04c2 0x04c1 >
+MAPUPPER < 0x04c4 0x04c3 >
+MAPUPPER < 0x04c6 0x04c5 >
+MAPUPPER < 0x04c8 0x04c7 >
+MAPUPPER < 0x04ca 0x04c9 >
+MAPUPPER < 0x04cc 0x04cb >
+MAPUPPER < 0x04ce 0x04cd >
+MAPUPPER < 0x04d1 0x04d0 >
+MAPUPPER < 0x04d3 0x04d2 >
+MAPUPPER < 0x04d5 0x04d4 >
+MAPUPPER < 0x04d7 0x04d6 >
+MAPUPPER < 0x04d9 0x04d8 >
+MAPUPPER < 0x04db 0x04da >
+MAPUPPER < 0x04dd 0x04dc >
+MAPUPPER < 0x04df 0x04de >
+MAPUPPER < 0x04e1 0x04e0 >
+MAPUPPER < 0x04e3 0x04e2 >
+MAPUPPER < 0x04e5 0x04e4 >
+MAPUPPER < 0x04e7 0x04e6 >
+MAPUPPER < 0x04e9 0x04e8 >
+MAPUPPER < 0x04eb 0x04ea >
+MAPUPPER < 0x04ed 0x04ec >
+MAPUPPER < 0x04ef 0x04ee >
+MAPUPPER < 0x04f1 0x04f0 >
+MAPUPPER < 0x04f3 0x04f2 >
+MAPUPPER < 0x04f5 0x04f4 >
+MAPUPPER < 0x04f9 0x04f8 >
+MAPLOWER < 0x0400 - 0x040f : 0x0450 >
+MAPLOWER < 0x0410 - 0x042f : 0x0430 >
+MAPLOWER < 0x0460 0x0461 >
+MAPLOWER < 0x0462 0x0463 >
+MAPLOWER < 0x0464 0x0465 >
+MAPLOWER < 0x0466 0x0467 >
+MAPLOWER < 0x0468 0x0469 >
+MAPLOWER < 0x046a 0x046b >
+MAPLOWER < 0x046c 0x046d >
+MAPLOWER < 0x046e 0x046f >
+MAPLOWER < 0x0470 0x0471 >
+MAPLOWER < 0x0472 0x0473 >
+MAPLOWER < 0x0474 0x0475 >
+MAPLOWER < 0x0476 0x0477 >
+MAPLOWER < 0x0478 0x0479 >
+MAPLOWER < 0x047a 0x047b >
+MAPLOWER < 0x047c 0x047d >
+MAPLOWER < 0x047e 0x047f >
+MAPLOWER < 0x0480 0x0481 >
+MAPLOWER < 0x048a 0x048b >
+MAPLOWER < 0x048c 0x048d >
+MAPLOWER < 0x048e 0x048f >
+MAPLOWER < 0x0490 0x0491 >
+MAPLOWER < 0x0492 0x0493 >
+MAPLOWER < 0x0494 0x0495 >
+MAPLOWER < 0x0496 0x0497 >
+MAPLOWER < 0x0498 0x0499 >
+MAPLOWER < 0x049a 0x049b >
+MAPLOWER < 0x049c 0x049d >
+MAPLOWER < 0x049e 0x049f >
+MAPLOWER < 0x04a0 0x04a1 >
+MAPLOWER < 0x04a2 0x04a3 >
+MAPLOWER < 0x04a4 0x04a5 >
+MAPLOWER < 0x04a6 0x04a7 >
+MAPLOWER < 0x04a8 0x04a9 >
+MAPLOWER < 0x04aa 0x04ab >
+MAPLOWER < 0x04ac 0x04ad >
+MAPLOWER < 0x04ae 0x04af >
+MAPLOWER < 0x04b0 0x04b1 >
+MAPLOWER < 0x04b2 0x04b3 >
+MAPLOWER < 0x04b4 0x04b5 >
+MAPLOWER < 0x04b6 0x04b7 >
+MAPLOWER < 0x04b8 0x04b9 >
+MAPLOWER < 0x04ba 0x04bb >
+MAPLOWER < 0x04bc 0x04bd >
+MAPLOWER < 0x04be 0x04bf >
+MAPLOWER < 0x04c1 0x04c2 >
+MAPLOWER < 0x04c3 0x04c4 >
+MAPLOWER < 0x04c5 0x04c6 >
+MAPLOWER < 0x04c7 0x04c8 >
+MAPLOWER < 0x04c9 0x04ca >
+MAPLOWER < 0x04cb 0x04cc >
+MAPLOWER < 0x04cd 0x04ce >
+MAPLOWER < 0x04d0 0x04d1 >
+MAPLOWER < 0x04d2 0x04d3 >
+MAPLOWER < 0x04d4 0x04d5 >
+MAPLOWER < 0x04d6 0x04d7 >
+MAPLOWER < 0x04d8 0x04d9 >
+MAPLOWER < 0x04da 0x04db >
+MAPLOWER < 0x04dc 0x04dd >
+MAPLOWER < 0x04de 0x04df >
+MAPLOWER < 0x04e0 0x04e1 >
+MAPLOWER < 0x04e2 0x04e3 >
+MAPLOWER < 0x04e4 0x04e5 >
+MAPLOWER < 0x04e6 0x04e7 >
+MAPLOWER < 0x04e8 0x04e9 >
+MAPLOWER < 0x04ea 0x04eb >
+MAPLOWER < 0x04ec 0x04ed >
+MAPLOWER < 0x04ee 0x04ef >
+MAPLOWER < 0x04f0 0x04f1 >
+MAPLOWER < 0x04f2 0x04f3 >
+MAPLOWER < 0x04f4 0x04f5 >
+MAPLOWER < 0x04f8 0x04f9 >
+
+
+/*
+ * U+0500 - U+052F : Cyrillic Supplementary
+ */
+
+ALPHA 0x0500 - 0x050f
+GRAPH 0x0500 - 0x050f
+LOWER 0x0501 0x0503 0x0505 0x0507 0x0509 0x050b 0x050d
+LOWER 0x050f
+UPPER 0x0500 0x0502 0x0504 0x0506 0x0508 0x050a 0x050c
+UPPER 0x050e
+PRINT 0x0500 - 0x050f
+SWIDTH1 0x0500 - 0x050f
+
+MAPUPPER < 0x0501 0x0500 >
+MAPUPPER < 0x0503 0x0502 >
+MAPUPPER < 0x0505 0x0504 >
+MAPUPPER < 0x0507 0x0506 >
+MAPUPPER < 0x0509 0x0508 >
+MAPUPPER < 0x050b 0x050a >
+MAPUPPER < 0x050d 0x050c >
+MAPUPPER < 0x050f 0x050e >
+MAPLOWER < 0x0500 0x0501 >
+MAPLOWER < 0x0502 0x0503 >
+MAPLOWER < 0x0504 0x0505 >
+MAPLOWER < 0x0506 0x0507 >
+MAPLOWER < 0x0508 0x0509 >
+MAPLOWER < 0x050a 0x050b >
+MAPLOWER < 0x050c 0x050d >
+MAPLOWER < 0x050e 0x050f >
+
+
+/*
+ * U+0530 - U+058F : Armenian
+ */
+
+ALPHA 0x0531 - 0x0556 0x0561 - 0x0587
+GRAPH 0x0531 - 0x0556 0x0559 - 0x055f 0x0561 - 0x0587 0x0589 0x058a
+LOWER 0x0561 - 0x0587
+PUNCT 0x055a - 0x055f 0x0589 0x058a
+UPPER 0x0531 - 0x0556
+PRINT 0x0531 - 0x0556 0x0559 - 0x055f 0x0561 - 0x0587 0x0589 0x058a
+SWIDTH1 0x0531 - 0x0556 0x0559 - 0x055f 0x0561 - 0x0587 0x0589 0x058a
+
+MAPUPPER < 0x0561 - 0x0586 : 0x0531 >
+MAPLOWER < 0x0531 - 0x0556 : 0x0561 >
+
+
+/*
+ * U+0590 - U+05FF : Hebrew
+ */
+
+GRAPH 0x0591 - 0x05a1 0x05a3 - 0x05b9 0x05bb - 0x05c4 0x05d0 - 0x05ea
+GRAPH 0x05f0 - 0x05f4
+PUNCT 0x05be 0x05c0 0x05c3 0x05f3 0x05f4
+PRINT 0x0591 - 0x05a1 0x05a3 - 0x05b9 0x05bb - 0x05c4 0x05d0 - 0x05ea
+PRINT 0x05f0 - 0x05f4
+SWIDTH1 0x0591 - 0x05a1 0x05a3 - 0x05b9 0x05bb - 0x05c4 0x05d0 - 0x05ea
+SWIDTH1 0x05f0 - 0x05f4
+
+
+/*
+ * U+0600 - U+06FF : Arabic
+ */
+
+CONTROL 0x06dd
+GRAPH 0x060c 0x061b 0x061f 0x0621 - 0x063a 0x0640 - 0x0655
+GRAPH 0x0660 - 0x06dc 0x06de - 0x06ed 0x06f0 - 0x06fe
+PUNCT 0x060c 0x061b 0x061f 0x066a - 0x066d 0x06d4 0x06e9
+PUNCT 0x06fd 0x06fe
+PRINT 0x060c 0x061b 0x061f 0x0621 - 0x063a 0x0640 - 0x0655
+PRINT 0x0660 - 0x06dc 0x06de - 0x06ed 0x06f0 - 0x06fe
+SWIDTH1 0x060c 0x061b 0x061f 0x0621 - 0x063a 0x0640 - 0x0655
+SWIDTH1 0x0660 - 0x06dc 0x06de - 0x06ed 0x06f0 - 0x06fe
+
+
+/*
+ * U+0700 - U+074F : Syriac
+ */
+
+CONTROL 0x070f
+GRAPH 0x0700 - 0x070d 0x0710 - 0x072c 0x0730 - 0x074a
+PUNCT 0x0700 - 0x070d
+PRINT 0x0700 - 0x070d 0x0710 - 0x072c 0x0730 - 0x074a
+SWIDTH1 0x0700 - 0x070d 0x0710 - 0x072c 0x0730 - 0x074a
+
+
+/*
+ * U+0780 - U+07BF : Thaana
+ */
+
+GRAPH 0x0780 - 0x07b1
+PRINT 0x0780 - 0x07b1
+SWIDTH1 0x0780 - 0x07b1
+
+
+/*
+ * U+0900 - U+097F : Devanagari
+ */
+
+GRAPH 0x0901 - 0x0903 0x0905 - 0x0939 0x093c - 0x094d 0x0950 - 0x0954
+GRAPH 0x0958 - 0x0970
+PUNCT 0x0964 0x0965 0x0970
+PRINT 0x0901 - 0x0903 0x0905 - 0x0939 0x093c - 0x094d 0x0950 - 0x0954
+PRINT 0x0958 - 0x0970
+SWIDTH1 0x0901 - 0x0903 0x0905 - 0x0939 0x093c - 0x094d 0x0950 - 0x0954
+SWIDTH1 0x0958 - 0x0970
+
+
+/*
+ * U+0980 - U+09FF : Bengali
+ */
+
+GRAPH 0x0981 - 0x0983 0x0985 - 0x098c 0x098f 0x0990 0x0993 - 0x09a8
+GRAPH 0x09aa - 0x09b0 0x09b2 0x09b6 - 0x09b9 0x09bc 0x09be - 0x09c4
+GRAPH 0x09c7 0x09c8 0x09cb - 0x09cd 0x09d7 0x09dc 0x09dd
+GRAPH 0x09df - 0x09e3 0x09e6 - 0x09fa
+PUNCT 0x09f2 0x09f3 0x09fa
+PRINT 0x0981 - 0x0983 0x0985 - 0x098c 0x098f 0x0990 0x0993 - 0x09a8
+PRINT 0x09aa - 0x09b0 0x09b2 0x09b6 - 0x09b9 0x09bc 0x09be - 0x09c4
+PRINT 0x09c7 0x09c8 0x09cb - 0x09cd 0x09d7 0x09dc 0x09dd
+PRINT 0x09df - 0x09e3 0x09e6 - 0x09fa
+SPECIAL 0x09f4 - 0x09f9
+SWIDTH1 0x0981 - 0x0983 0x0985 - 0x098c 0x098f 0x0990 0x0993 - 0x09a8
+SWIDTH1 0x09aa - 0x09b0 0x09b2 0x09b6 - 0x09b9 0x09bc 0x09be - 0x09c4
+SWIDTH1 0x09c7 0x09c8 0x09cb - 0x09cd 0x09d7 0x09dc 0x09dd
+SWIDTH1 0x09df - 0x09e3 0x09e6 - 0x09fa
+
+
+/*
+ * U+0A00 - U+0A7F : Gurmukhi
+ */
+
+GRAPH 0x0a02 0x0a05 - 0x0a0a 0x0a0f 0x0a10 0x0a13 - 0x0a28
+GRAPH 0x0a2a - 0x0a30 0x0a32 0x0a33 0x0a35 0x0a36 0x0a38 0x0a39
+GRAPH 0x0a3c 0x0a3e - 0x0a42 0x0a47 0x0a48 0x0a4b - 0x0a4d
+GRAPH 0x0a59 - 0x0a5c 0x0a5e 0x0a66 - 0x0a74
+PRINT 0x0a02 0x0a05 - 0x0a0a 0x0a0f 0x0a10 0x0a13 - 0x0a28
+PRINT 0x0a2a - 0x0a30 0x0a32 0x0a33 0x0a35 0x0a36 0x0a38 0x0a39
+PRINT 0x0a3c 0x0a3e - 0x0a42 0x0a47 0x0a48 0x0a4b - 0x0a4d
+PRINT 0x0a59 - 0x0a5c 0x0a5e 0x0a66 - 0x0a74
+SWIDTH1 0x0a02 0x0a05 - 0x0a0a 0x0a0f 0x0a10 0x0a13 - 0x0a28
+SWIDTH1 0x0a2a - 0x0a30 0x0a32 0x0a33 0x0a35 0x0a36 0x0a38 0x0a39
+SWIDTH1 0x0a3c 0x0a3e - 0x0a42 0x0a47 0x0a48 0x0a4b - 0x0a4d
+SWIDTH1 0x0a59 - 0x0a5c 0x0a5e 0x0a66 - 0x0a74
+
+
+/*
+ * U+0A80 - U+0AFF : Gujarati
+ */
+
+GRAPH 0x0a81 - 0x0a83 0x0a85 - 0x0a8b 0x0a8d 0x0a8f - 0x0a91
+GRAPH 0x0a93 - 0x0aa8 0x0aaa - 0x0ab0 0x0ab2 0x0ab3 0x0ab5 - 0x0ab9
+GRAPH 0x0abc - 0x0ac5 0x0ac7 - 0x0ac9 0x0acb - 0x0acd 0x0ad0
+GRAPH 0x0ae0 0x0ae6 - 0x0aef
+PRINT 0x0a81 - 0x0a83 0x0a85 - 0x0a8b 0x0a8d 0x0a8f - 0x0a91
+PRINT 0x0a93 - 0x0aa8 0x0aaa - 0x0ab0 0x0ab2 0x0ab3 0x0ab5 - 0x0ab9
+PRINT 0x0abc - 0x0ac5 0x0ac7 - 0x0ac9 0x0acb - 0x0acd 0x0ad0
+PRINT 0x0ae0 0x0ae6 - 0x0aef
+SWIDTH1 0x0a81 - 0x0a83 0x0a85 - 0x0a8b 0x0a8d 0x0a8f - 0x0a91
+SWIDTH1 0x0a93 - 0x0aa8 0x0aaa - 0x0ab0 0x0ab2 0x0ab3 0x0ab5 - 0x0ab9
+SWIDTH1 0x0abc - 0x0ac5 0x0ac7 - 0x0ac9 0x0acb - 0x0acd 0x0ad0
+SWIDTH1 0x0ae0 0x0ae6 - 0x0aef
+
+
+/*
+ * U+0B00 - U+0B7F : Oriya
+ */
+
+GRAPH 0x0b01 - 0x0b03 0x0b05 - 0x0b0c 0x0b0f 0x0b10 0x0b13 - 0x0b28
+GRAPH 0x0b2a - 0x0b30 0x0b32 0x0b33 0x0b36 - 0x0b39 0x0b3c - 0x0b43
+GRAPH 0x0b47 0x0b48 0x0b4b - 0x0b4d 0x0b56 0x0b57 0x0b5c 0x0b5d
+GRAPH 0x0b5f - 0x0b61 0x0b66 - 0x0b70
+PUNCT 0x0b70
+PRINT 0x0b01 - 0x0b03 0x0b05 - 0x0b0c 0x0b0f 0x0b10 0x0b13 - 0x0b28
+PRINT 0x0b2a - 0x0b30 0x0b32 0x0b33 0x0b36 - 0x0b39 0x0b3c - 0x0b43
+PRINT 0x0b47 0x0b48 0x0b4b - 0x0b4d 0x0b56 0x0b57 0x0b5c 0x0b5d
+PRINT 0x0b5f - 0x0b61 0x0b66 - 0x0b70
+SWIDTH1 0x0b01 - 0x0b03 0x0b05 - 0x0b0c 0x0b0f 0x0b10 0x0b13 - 0x0b28
+SWIDTH1 0x0b2a - 0x0b30 0x0b32 0x0b33 0x0b36 - 0x0b39 0x0b3c - 0x0b43
+SWIDTH1 0x0b47 0x0b48 0x0b4b - 0x0b4d 0x0b56 0x0b57 0x0b5c 0x0b5d
+SWIDTH1 0x0b5f - 0x0b61 0x0b66 - 0x0b70
+
+
+/*
+ * U+0B80 - U+0BFF : Tamil
+ */
+
+GRAPH 0x0b82 0x0b83 0x0b85 - 0x0b8a 0x0b8e - 0x0b90 0x0b92 - 0x0b95
+GRAPH 0x0b99 0x0b9a 0x0b9c 0x0b9e 0x0b9f 0x0ba3 0x0ba4
+GRAPH 0x0ba8 - 0x0baa 0x0bae - 0x0bb5 0x0bb7 - 0x0bb9 0x0bbe - 0x0bc2
+GRAPH 0x0bc6 - 0x0bc8 0x0bca - 0x0bcd 0x0bd7 0x0be7 - 0x0bf2
+PRINT 0x0b82 0x0b83 0x0b85 - 0x0b8a 0x0b8e - 0x0b90 0x0b92 - 0x0b95
+PRINT 0x0b99 0x0b9a 0x0b9c 0x0b9e 0x0b9f 0x0ba3 0x0ba4
+PRINT 0x0ba8 - 0x0baa 0x0bae - 0x0bb5 0x0bb7 - 0x0bb9 0x0bbe - 0x0bc2
+PRINT 0x0bc6 - 0x0bc8 0x0bca - 0x0bcd 0x0bd7 0x0be7 - 0x0bf2
+SPECIAL 0x0bf0 - 0x0bf2
+SWIDTH1 0x0b82 0x0b83 0x0b85 - 0x0b8a 0x0b8e - 0x0b90 0x0b92 - 0x0b95
+SWIDTH1 0x0b99 0x0b9a 0x0b9c 0x0b9e 0x0b9f 0x0ba3 0x0ba4
+SWIDTH1 0x0ba8 - 0x0baa 0x0bae - 0x0bb5 0x0bb7 - 0x0bb9 0x0bbe - 0x0bc2
+SWIDTH1 0x0bc6 - 0x0bc8 0x0bca - 0x0bcd 0x0bd7 0x0be7 - 0x0bf2
+
+
+/*
+ * U+0C00 - U+0C7F : Telugu
+ */
+
+GRAPH 0x0c01 - 0x0c03 0x0c05 - 0x0c0c 0x0c0e - 0x0c10 0x0c12 - 0x0c28
+GRAPH 0x0c2a - 0x0c33 0x0c35 - 0x0c39 0x0c3e - 0x0c44 0x0c46 - 0x0c48
+GRAPH 0x0c4a - 0x0c4d 0x0c55 0x0c56 0x0c60 0x0c61 0x0c66 - 0x0c6f
+PRINT 0x0c01 - 0x0c03 0x0c05 - 0x0c0c 0x0c0e - 0x0c10 0x0c12 - 0x0c28
+PRINT 0x0c2a - 0x0c33 0x0c35 - 0x0c39 0x0c3e - 0x0c44 0x0c46 - 0x0c48
+PRINT 0x0c4a - 0x0c4d 0x0c55 0x0c56 0x0c60 0x0c61 0x0c66 - 0x0c6f
+SWIDTH1 0x0c01 - 0x0c03 0x0c05 - 0x0c0c 0x0c0e - 0x0c10 0x0c12 - 0x0c28
+SWIDTH1 0x0c2a - 0x0c33 0x0c35 - 0x0c39 0x0c3e - 0x0c44 0x0c46 - 0x0c48
+SWIDTH1 0x0c4a - 0x0c4d 0x0c55 0x0c56 0x0c60 0x0c61 0x0c66 - 0x0c6f
+
+
+/*
+ * U+0C80 - U+0CFF : Kannada
+ */
+
+GRAPH 0x0c82 0x0c83 0x0c85 - 0x0c8c 0x0c8e - 0x0c90 0x0c92 - 0x0ca8
+GRAPH 0x0caa - 0x0cb3 0x0cb5 - 0x0cb9 0x0cbe - 0x0cc4 0x0cc6 - 0x0cc8
+GRAPH 0x0cca - 0x0ccd 0x0cd5 0x0cd6 0x0cde 0x0ce0 0x0ce1
+GRAPH 0x0ce6 - 0x0cef
+PRINT 0x0c82 0x0c83 0x0c85 - 0x0c8c 0x0c8e - 0x0c90 0x0c92 - 0x0ca8
+PRINT 0x0caa - 0x0cb3 0x0cb5 - 0x0cb9 0x0cbe - 0x0cc4 0x0cc6 - 0x0cc8
+PRINT 0x0cca - 0x0ccd 0x0cd5 0x0cd6 0x0cde 0x0ce0 0x0ce1
+PRINT 0x0ce6 - 0x0cef
+SWIDTH1 0x0c82 0x0c83 0x0c85 - 0x0c8c 0x0c8e - 0x0c90 0x0c92 - 0x0ca8
+SWIDTH1 0x0caa - 0x0cb3 0x0cb5 - 0x0cb9 0x0cbe - 0x0cc4 0x0cc6 - 0x0cc8
+SWIDTH1 0x0cca - 0x0ccd 0x0cd5 0x0cd6 0x0cde 0x0ce0 0x0ce1
+SWIDTH1 0x0ce6 - 0x0cef
+
+
+/*
+ * U+0D00 - U+0D7F : Malayalam
+ */
+
+GRAPH 0x0d02 0x0d03 0x0d05 - 0x0d0c 0x0d0e - 0x0d10 0x0d12 - 0x0d28
+GRAPH 0x0d2a - 0x0d39 0x0d3e - 0x0d43 0x0d46 - 0x0d48 0x0d4a - 0x0d4d
+GRAPH 0x0d57 0x0d60 0x0d61 0x0d66 - 0x0d6f
+PRINT 0x0d02 0x0d03 0x0d05 - 0x0d0c 0x0d0e - 0x0d10 0x0d12 - 0x0d28
+PRINT 0x0d2a - 0x0d39 0x0d3e - 0x0d43 0x0d46 - 0x0d48 0x0d4a - 0x0d4d
+PRINT 0x0d57 0x0d60 0x0d61 0x0d66 - 0x0d6f
+SWIDTH1 0x0d02 0x0d03 0x0d05 - 0x0d0c 0x0d0e - 0x0d10 0x0d12 - 0x0d28
+SWIDTH1 0x0d2a - 0x0d39 0x0d3e - 0x0d43 0x0d46 - 0x0d48 0x0d4a - 0x0d4d
+SWIDTH1 0x0d57 0x0d60 0x0d61 0x0d66 - 0x0d6f
+
+
+/*
+ * U+0D80 - U+0DFF : Sinhala
+ */
+
+GRAPH 0x0d82 0x0d83 0x0d85 - 0x0d96 0x0d9a - 0x0db1 0x0db3 - 0x0dbb
+GRAPH 0x0dbd 0x0dc0 - 0x0dc6 0x0dca 0x0dcf - 0x0dd4 0x0dd6
+GRAPH 0x0dd8 - 0x0ddf 0x0df2 - 0x0df4
+PUNCT 0x0df4
+PRINT 0x0d82 0x0d83 0x0d85 - 0x0d96 0x0d9a - 0x0db1 0x0db3 - 0x0dbb
+PRINT 0x0dbd 0x0dc0 - 0x0dc6 0x0dca 0x0dcf - 0x0dd4 0x0dd6
+PRINT 0x0dd8 - 0x0ddf 0x0df2 - 0x0df4
+SWIDTH1 0x0d82 0x0d83 0x0d85 - 0x0d96 0x0d9a - 0x0db1 0x0db3 - 0x0dbb
+SWIDTH1 0x0dbd 0x0dc0 - 0x0dc6 0x0dca 0x0dcf - 0x0dd4 0x0dd6
+SWIDTH1 0x0dd8 - 0x0ddf 0x0df2 - 0x0df4
+
+
+/*
+ * U+0E00 - U+0E7F : Thai
+ */
+
+GRAPH 0x0e01 - 0x0e3a 0x0e3f - 0x0e5b
+PUNCT 0x0e3f 0x0e4f 0x0e5a 0x0e5b
+PRINT 0x0e01 - 0x0e3a 0x0e3f - 0x0e5b
+SWIDTH1 0x0e01 - 0x0e3a 0x0e3f - 0x0e5b
+
+
+/*
+ * U+0E80 - U+0EFF : Lao
+ */
+
+GRAPH 0x0e81 0x0e82 0x0e84 0x0e87 0x0e88 0x0e8a 0x0e8d
+GRAPH 0x0e94 - 0x0e97 0x0e99 - 0x0e9f 0x0ea1 - 0x0ea3 0x0ea5
+GRAPH 0x0ea7 0x0eaa 0x0eab 0x0ead - 0x0eb9 0x0ebb - 0x0ebd
+GRAPH 0x0ec0 - 0x0ec4 0x0ec6 0x0ec8 - 0x0ecd 0x0ed0 - 0x0ed9
+GRAPH 0x0edc 0x0edd
+PRINT 0x0e81 0x0e82 0x0e84 0x0e87 0x0e88 0x0e8a 0x0e8d
+PRINT 0x0e94 - 0x0e97 0x0e99 - 0x0e9f 0x0ea1 - 0x0ea3 0x0ea5
+PRINT 0x0ea7 0x0eaa 0x0eab 0x0ead - 0x0eb9 0x0ebb - 0x0ebd
+PRINT 0x0ec0 - 0x0ec4 0x0ec6 0x0ec8 - 0x0ecd 0x0ed0 - 0x0ed9
+PRINT 0x0edc 0x0edd
+SWIDTH1 0x0e81 0x0e82 0x0e84 0x0e87 0x0e88 0x0e8a 0x0e8d
+SWIDTH1 0x0e94 - 0x0e97 0x0e99 - 0x0e9f 0x0ea1 - 0x0ea3 0x0ea5
+SWIDTH1 0x0ea7 0x0eaa 0x0eab 0x0ead - 0x0eb9 0x0ebb - 0x0ebd
+SWIDTH1 0x0ec0 - 0x0ec4 0x0ec6 0x0ec8 - 0x0ecd 0x0ed0 - 0x0ed9
+SWIDTH1 0x0edc 0x0edd
+
+
+/*
+ * U+0F00 - U+0FFF : Tibetan
+ */
+
+GRAPH 0x0f00 - 0x0f47 0x0f49 - 0x0f6a 0x0f71 - 0x0f8b 0x0f90 - 0x0f97
+GRAPH 0x0f99 - 0x0fbc 0x0fbe - 0x0fcc 0x0fcf
+PUNCT 0x0f01 - 0x0f17 0x0f1a - 0x0f1f 0x0f34 0x0f36 0x0f38
+PUNCT 0x0f3a - 0x0f3d 0x0f85 0x0fbe - 0x0fc5 0x0fc7 - 0x0fcc
+PUNCT 0x0fcf
+PRINT 0x0f00 - 0x0f47 0x0f49 - 0x0f6a 0x0f71 - 0x0f8b 0x0f90 - 0x0f97
+PRINT 0x0f99 - 0x0fbc 0x0fbe - 0x0fcc 0x0fcf
+SPECIAL 0x0f2a - 0x0f33
+PHONOGRAM 0x0f00
+SWIDTH1 0x0f00 - 0x0f47 0x0f49 - 0x0f6a 0x0f71 - 0x0f8b 0x0f90 - 0x0f97
+SWIDTH1 0x0f99 - 0x0fbc 0x0fbe - 0x0fcc 0x0fcf
+
+
+/*
+ * U+1000 - U+109F : Myanmar
+ */
+
+GRAPH 0x1000 - 0x1021 0x1023 - 0x1027 0x1029 0x102a 0x102c - 0x1032
+GRAPH 0x1036 - 0x1039 0x1040 - 0x1059
+PUNCT 0x104a - 0x104f
+PRINT 0x1000 - 0x1021 0x1023 - 0x1027 0x1029 0x102a 0x102c - 0x1032
+PRINT 0x1036 - 0x1039 0x1040 - 0x1059
+SWIDTH1 0x1000 - 0x1021 0x1023 - 0x1027 0x1029 0x102a 0x102c - 0x1032
+SWIDTH1 0x1036 - 0x1039 0x1040 - 0x1059
+
+
+/*
+ * U+10A0 - U+10FF : Georgian
+ */
+
+ALPHA 0x10a0 - 0x10c5
+GRAPH 0x10a0 - 0x10c5 0x10d0 - 0x10f8 0x10fb
+PUNCT 0x10fb
+UPPER 0x10a0 - 0x10c5
+PRINT 0x10a0 - 0x10c5 0x10d0 - 0x10f8 0x10fb
+SWIDTH1 0x10a0 - 0x10c5 0x10d0 - 0x10f8 0x10fb
+
+
+/*
+ * U+1100 - U+11FF : Hangul Jamo
+ */
+
+GRAPH 0x1100 - 0x1159 0x115f - 0x11a2 0x11a8 - 0x11f9
+PRINT 0x1100 - 0x1159 0x115f - 0x11a2 0x11a8 - 0x11f9
+SWIDTH1 0x1160 - 0x11a2 0x11a8 - 0x11f9
+SWIDTH2 0x1100 - 0x1159 0x115f
+
+
+/*
+ * U+1200 - U+137F : Ethiopic
+ */
+
+GRAPH 0x1200 - 0x1206 0x1208 - 0x1246 0x1248 0x124a - 0x124d
+GRAPH 0x1250 - 0x1256 0x1258 0x125a - 0x125d 0x1260 - 0x1286
+GRAPH 0x1288 0x128a - 0x128d 0x1290 - 0x12ae 0x12b0 0x12b2 - 0x12b5
+GRAPH 0x12b8 - 0x12be 0x12c0 0x12c2 - 0x12c5 0x12c8 - 0x12ce
+GRAPH 0x12d0 - 0x12d6 0x12d8 - 0x12ee 0x12f0 - 0x130e 0x1310
+GRAPH 0x1312 - 0x1315 0x1318 - 0x131e 0x1320 - 0x1346 0x1348 - 0x135a
+GRAPH 0x1361 - 0x137c
+PUNCT 0x1361 - 0x1368
+PRINT 0x1200 - 0x1206 0x1208 - 0x1246 0x1248 0x124a - 0x124d
+PRINT 0x1250 - 0x1256 0x1258 0x125a - 0x125d 0x1260 - 0x1286
+PRINT 0x1288 0x128a - 0x128d 0x1290 - 0x12ae 0x12b0 0x12b2 - 0x12b5
+PRINT 0x12b8 - 0x12be 0x12c0 0x12c2 - 0x12c5 0x12c8 - 0x12ce
+PRINT 0x12d0 - 0x12d6 0x12d8 - 0x12ee 0x12f0 - 0x130e 0x1310
+PRINT 0x1312 - 0x1315 0x1318 - 0x131e 0x1320 - 0x1346 0x1348 - 0x135a
+PRINT 0x1361 - 0x137c
+SPECIAL 0x1372 - 0x137c
+PHONOGRAM 0x1200 - 0x1206 0x1208 - 0x1246 0x1248 0x124a - 0x124d
+PHONOGRAM 0x1250 - 0x1256 0x1258 0x125a - 0x125d 0x1260 - 0x1286
+PHONOGRAM 0x1288 0x128a - 0x128d 0x1290 - 0x12ae 0x12b0 0x12b2 - 0x12b5
+PHONOGRAM 0x12b8 - 0x12be 0x12c0 0x12c2 - 0x12c5 0x12c8 - 0x12ce
+PHONOGRAM 0x12d0 - 0x12d6 0x12d8 - 0x12ee 0x12f0 - 0x130e 0x1310
+PHONOGRAM 0x1312 - 0x1315 0x1318 - 0x131e 0x1320 - 0x1346 0x1348 - 0x135a
+SWIDTH1 0x1200 - 0x1206 0x1208 - 0x1246 0x1248 0x124a - 0x124d
+SWIDTH1 0x1250 - 0x1256 0x1258 0x125a - 0x125d 0x1260 - 0x1286
+SWIDTH1 0x1288 0x128a - 0x128d 0x1290 - 0x12ae 0x12b0 0x12b2 - 0x12b5
+SWIDTH1 0x12b8 - 0x12be 0x12c0 0x12c2 - 0x12c5 0x12c8 - 0x12ce
+SWIDTH1 0x12d0 - 0x12d6 0x12d8 - 0x12ee 0x12f0 - 0x130e 0x1310
+SWIDTH1 0x1312 - 0x1315 0x1318 - 0x131e 0x1320 - 0x1346 0x1348 - 0x135a
+SWIDTH1 0x1361 - 0x137c
+
+
+/*
+ * U+13A0 - U+13FF : Cherokee
+ */
+
+GRAPH 0x13a0 - 0x13f4
+PRINT 0x13a0 - 0x13f4
+SWIDTH1 0x13a0 - 0x13f4
+
+
+/*
+ * U+1400 - U+167F : Unified Canadian Aboriginal Syllabics
+ */
+
+GRAPH 0x1401 - 0x1676
+PUNCT 0x166d 0x166e
+PRINT 0x1401 - 0x1676
+PHONOGRAM 0x1401 - 0x166c 0x166f - 0x1676
+SWIDTH1 0x1401 - 0x1676
+
+
+/*
+ * U+1680 - U+169F : Ogham
+ */
+
+GRAPH 0x1681 - 0x169c
+PUNCT 0x169b 0x169c
+SPACE 0x1680
+BLANK 0x1680
+PRINT 0x1680 - 0x169c
+SWIDTH1 0x1680 - 0x169c
+
+
+/*
+ * U+16A0 - U+16FF : Runic
+ */
+
+GRAPH 0x16a0 - 0x16f0
+PUNCT 0x16eb - 0x16ed
+PRINT 0x16a0 - 0x16f0
+SPECIAL 0x16ee - 0x16f0
+SWIDTH1 0x16a0 - 0x16f0
+
+
+/*
+ * U+1700 - U+171F : Tagalog
+ */
+
+GRAPH 0x1700 - 0x170c 0x170e - 0x1714
+PRINT 0x1700 - 0x170c 0x170e - 0x1714
+SWIDTH1 0x1700 - 0x170c 0x170e - 0x1714
+
+
+/*
+ * U+1720 - U+173F : Hanunoo
+ */
+
+GRAPH 0x1720 - 0x1736
+PUNCT 0x1735 0x1736
+PRINT 0x1720 - 0x1736
+SWIDTH1 0x1720 - 0x1736
+
+
+/*
+ * U+1740 - U+175F : Buhid
+ */
+
+GRAPH 0x1740 - 0x1753
+PRINT 0x1740 - 0x1753
+SWIDTH1 0x1740 - 0x1753
+
+
+/*
+ * U+1760 - U+177F : Tagbanwa
+ */
+
+GRAPH 0x1760 - 0x176c 0x176e - 0x1770 0x1772 0x1773
+PRINT 0x1760 - 0x176c 0x176e - 0x1770 0x1772 0x1773
+SWIDTH1 0x1760 - 0x176c 0x176e - 0x1770 0x1772 0x1773
+
+
+/*
+ * U+1780 - U+17FF : Khmer
+ */
+
+GRAPH 0x1780 - 0x17dc 0x17e0 - 0x17e9
+PUNCT 0x17d4 - 0x17d6 0x17d8 - 0x17db
+PRINT 0x1780 - 0x17dc 0x17e0 - 0x17e9
+SWIDTH1 0x1780 - 0x17dc 0x17e0 - 0x17e9
+
+
+/*
+ * U+1800 - U+18AF : Mongolian
+ */
+
+CONTROL 0x180e
+GRAPH 0x1800 - 0x180d 0x1810 - 0x1819 0x1820 - 0x1877 0x1880 - 0x18a9
+PUNCT 0x1800 - 0x180a
+PRINT 0x1800 - 0x180d 0x1810 - 0x1819 0x1820 - 0x1877 0x1880 - 0x18a9
+SWIDTH1 0x1800 - 0x180d 0x1810 - 0x1819 0x1820 - 0x1877 0x1880 - 0x18a9
+
+
+/*
+ * U+1E00 - U+1EFF : Latin Extended Additional
+ */
+
+ALPHA 0x1e00 - 0x1e9b 0x1ea0 - 0x1ef9
+GRAPH 0x1e00 - 0x1e9b 0x1ea0 - 0x1ef9
+LOWER 0x1e01 0x1e03 0x1e05 0x1e07 0x1e09 0x1e0b 0x1e0d
+LOWER 0x1e0f 0x1e11 0x1e13 0x1e15 0x1e17 0x1e19 0x1e1b
+LOWER 0x1e1d 0x1e1f 0x1e21 0x1e23 0x1e25 0x1e27 0x1e29
+LOWER 0x1e2b 0x1e2d 0x1e2f 0x1e31 0x1e33 0x1e35 0x1e37
+LOWER 0x1e39 0x1e3b 0x1e3d 0x1e3f 0x1e41 0x1e43 0x1e45
+LOWER 0x1e47 0x1e49 0x1e4b 0x1e4d 0x1e4f 0x1e51 0x1e53
+LOWER 0x1e55 0x1e57 0x1e59 0x1e5b 0x1e5d 0x1e5f 0x1e61
+LOWER 0x1e63 0x1e65 0x1e67 0x1e69 0x1e6b 0x1e6d 0x1e6f
+LOWER 0x1e71 0x1e73 0x1e75 0x1e77 0x1e79 0x1e7b 0x1e7d
+LOWER 0x1e7f 0x1e81 0x1e83 0x1e85 0x1e87 0x1e89 0x1e8b
+LOWER 0x1e8d 0x1e8f 0x1e91 0x1e93 0x1e95 - 0x1e9b 0x1ea1
+LOWER 0x1ea3 0x1ea5 0x1ea7 0x1ea9 0x1eab 0x1ead 0x1eaf
+LOWER 0x1eb1 0x1eb3 0x1eb5 0x1eb7 0x1eb9 0x1ebb 0x1ebd
+LOWER 0x1ebf 0x1ec1 0x1ec3 0x1ec5 0x1ec7 0x1ec9 0x1ecb
+LOWER 0x1ecd 0x1ecf 0x1ed1 0x1ed3 0x1ed5 0x1ed7 0x1ed9
+LOWER 0x1edb 0x1edd 0x1edf 0x1ee1 0x1ee3 0x1ee5 0x1ee7
+LOWER 0x1ee9 0x1eeb 0x1eed 0x1eef 0x1ef1 0x1ef3 0x1ef5
+LOWER 0x1ef7 0x1ef9
+UPPER 0x1e00 0x1e02 0x1e04 0x1e06 0x1e08 0x1e0a 0x1e0c
+UPPER 0x1e0e 0x1e10 0x1e12 0x1e14 0x1e16 0x1e18 0x1e1a
+UPPER 0x1e1c 0x1e1e 0x1e20 0x1e22 0x1e24 0x1e26 0x1e28
+UPPER 0x1e2a 0x1e2c 0x1e2e 0x1e30 0x1e32 0x1e34 0x1e36
+UPPER 0x1e38 0x1e3a 0x1e3c 0x1e3e 0x1e40 0x1e42 0x1e44
+UPPER 0x1e46 0x1e48 0x1e4a 0x1e4c 0x1e4e 0x1e50 0x1e52
+UPPER 0x1e54 0x1e56 0x1e58 0x1e5a 0x1e5c 0x1e5e 0x1e60
+UPPER 0x1e62 0x1e64 0x1e66 0x1e68 0x1e6a 0x1e6c 0x1e6e
+UPPER 0x1e70 0x1e72 0x1e74 0x1e76 0x1e78 0x1e7a 0x1e7c
+UPPER 0x1e7e 0x1e80 0x1e82 0x1e84 0x1e86 0x1e88 0x1e8a
+UPPER 0x1e8c 0x1e8e 0x1e90 0x1e92 0x1e94 0x1ea0 0x1ea2
+UPPER 0x1ea4 0x1ea6 0x1ea8 0x1eaa 0x1eac 0x1eae 0x1eb0
+UPPER 0x1eb2 0x1eb4 0x1eb6 0x1eb8 0x1eba 0x1ebc 0x1ebe
+UPPER 0x1ec0 0x1ec2 0x1ec4 0x1ec6 0x1ec8 0x1eca 0x1ecc
+UPPER 0x1ece 0x1ed0 0x1ed2 0x1ed4 0x1ed6 0x1ed8 0x1eda
+UPPER 0x1edc 0x1ede 0x1ee0 0x1ee2 0x1ee4 0x1ee6 0x1ee8
+UPPER 0x1eea 0x1eec 0x1eee 0x1ef0 0x1ef2 0x1ef4 0x1ef6
+UPPER 0x1ef8
+PRINT 0x1e00 - 0x1e9b 0x1ea0 - 0x1ef9
+SWIDTH1 0x1e00 - 0x1e9b 0x1ea0 - 0x1ef9
+
+MAPUPPER < 0x1e01 0x1e00 >
+MAPUPPER < 0x1e03 0x1e02 >
+MAPUPPER < 0x1e05 0x1e04 >
+MAPUPPER < 0x1e07 0x1e06 >
+MAPUPPER < 0x1e09 0x1e08 >
+MAPUPPER < 0x1e0b 0x1e0a >
+MAPUPPER < 0x1e0d 0x1e0c >
+MAPUPPER < 0x1e0f 0x1e0e >
+MAPUPPER < 0x1e11 0x1e10 >
+MAPUPPER < 0x1e13 0x1e12 >
+MAPUPPER < 0x1e15 0x1e14 >
+MAPUPPER < 0x1e17 0x1e16 >
+MAPUPPER < 0x1e19 0x1e18 >
+MAPUPPER < 0x1e1b 0x1e1a >
+MAPUPPER < 0x1e1d 0x1e1c >
+MAPUPPER < 0x1e1f 0x1e1e >
+MAPUPPER < 0x1e21 0x1e20 >
+MAPUPPER < 0x1e23 0x1e22 >
+MAPUPPER < 0x1e25 0x1e24 >
+MAPUPPER < 0x1e27 0x1e26 >
+MAPUPPER < 0x1e29 0x1e28 >
+MAPUPPER < 0x1e2b 0x1e2a >
+MAPUPPER < 0x1e2d 0x1e2c >
+MAPUPPER < 0x1e2f 0x1e2e >
+MAPUPPER < 0x1e31 0x1e30 >
+MAPUPPER < 0x1e33 0x1e32 >
+MAPUPPER < 0x1e35 0x1e34 >
+MAPUPPER < 0x1e37 0x1e36 >
+MAPUPPER < 0x1e39 0x1e38 >
+MAPUPPER < 0x1e3b 0x1e3a >
+MAPUPPER < 0x1e3d 0x1e3c >
+MAPUPPER < 0x1e3f 0x1e3e >
+MAPUPPER < 0x1e41 0x1e40 >
+MAPUPPER < 0x1e43 0x1e42 >
+MAPUPPER < 0x1e45 0x1e44 >
+MAPUPPER < 0x1e47 0x1e46 >
+MAPUPPER < 0x1e49 0x1e48 >
+MAPUPPER < 0x1e4b 0x1e4a >
+MAPUPPER < 0x1e4d 0x1e4c >
+MAPUPPER < 0x1e4f 0x1e4e >
+MAPUPPER < 0x1e51 0x1e50 >
+MAPUPPER < 0x1e53 0x1e52 >
+MAPUPPER < 0x1e55 0x1e54 >
+MAPUPPER < 0x1e57 0x1e56 >
+MAPUPPER < 0x1e59 0x1e58 >
+MAPUPPER < 0x1e5b 0x1e5a >
+MAPUPPER < 0x1e5d 0x1e5c >
+MAPUPPER < 0x1e5f 0x1e5e >
+MAPUPPER < 0x1e61 0x1e60 >
+MAPUPPER < 0x1e63 0x1e62 >
+MAPUPPER < 0x1e65 0x1e64 >
+MAPUPPER < 0x1e67 0x1e66 >
+MAPUPPER < 0x1e69 0x1e68 >
+MAPUPPER < 0x1e6b 0x1e6a >
+MAPUPPER < 0x1e6d 0x1e6c >
+MAPUPPER < 0x1e6f 0x1e6e >
+MAPUPPER < 0x1e71 0x1e70 >
+MAPUPPER < 0x1e73 0x1e72 >
+MAPUPPER < 0x1e75 0x1e74 >
+MAPUPPER < 0x1e77 0x1e76 >
+MAPUPPER < 0x1e79 0x1e78 >
+MAPUPPER < 0x1e7b 0x1e7a >
+MAPUPPER < 0x1e7d 0x1e7c >
+MAPUPPER < 0x1e7f 0x1e7e >
+MAPUPPER < 0x1e81 0x1e80 >
+MAPUPPER < 0x1e83 0x1e82 >
+MAPUPPER < 0x1e85 0x1e84 >
+MAPUPPER < 0x1e87 0x1e86 >
+MAPUPPER < 0x1e89 0x1e88 >
+MAPUPPER < 0x1e8b 0x1e8a >
+MAPUPPER < 0x1e8d 0x1e8c >
+MAPUPPER < 0x1e8f 0x1e8e >
+MAPUPPER < 0x1e91 0x1e90 >
+MAPUPPER < 0x1e93 0x1e92 >
+MAPUPPER < 0x1e95 0x1e94 >
+MAPUPPER < 0x1e9b 0x1e60 >
+MAPUPPER < 0x1ea1 0x1ea0 >
+MAPUPPER < 0x1ea3 0x1ea2 >
+MAPUPPER < 0x1ea5 0x1ea4 >
+MAPUPPER < 0x1ea7 0x1ea6 >
+MAPUPPER < 0x1ea9 0x1ea8 >
+MAPUPPER < 0x1eab 0x1eaa >
+MAPUPPER < 0x1ead 0x1eac >
+MAPUPPER < 0x1eaf 0x1eae >
+MAPUPPER < 0x1eb1 0x1eb0 >
+MAPUPPER < 0x1eb3 0x1eb2 >
+MAPUPPER < 0x1eb5 0x1eb4 >
+MAPUPPER < 0x1eb7 0x1eb6 >
+MAPUPPER < 0x1eb9 0x1eb8 >
+MAPUPPER < 0x1ebb 0x1eba >
+MAPUPPER < 0x1ebd 0x1ebc >
+MAPUPPER < 0x1ebf 0x1ebe >
+MAPUPPER < 0x1ec1 0x1ec0 >
+MAPUPPER < 0x1ec3 0x1ec2 >
+MAPUPPER < 0x1ec5 0x1ec4 >
+MAPUPPER < 0x1ec7 0x1ec6 >
+MAPUPPER < 0x1ec9 0x1ec8 >
+MAPUPPER < 0x1ecb 0x1eca >
+MAPUPPER < 0x1ecd 0x1ecc >
+MAPUPPER < 0x1ecf 0x1ece >
+MAPUPPER < 0x1ed1 0x1ed0 >
+MAPUPPER < 0x1ed3 0x1ed2 >
+MAPUPPER < 0x1ed5 0x1ed4 >
+MAPUPPER < 0x1ed7 0x1ed6 >
+MAPUPPER < 0x1ed9 0x1ed8 >
+MAPUPPER < 0x1edb 0x1eda >
+MAPUPPER < 0x1edd 0x1edc >
+MAPUPPER < 0x1edf 0x1ede >
+MAPUPPER < 0x1ee1 0x1ee0 >
+MAPUPPER < 0x1ee3 0x1ee2 >
+MAPUPPER < 0x1ee5 0x1ee4 >
+MAPUPPER < 0x1ee7 0x1ee6 >
+MAPUPPER < 0x1ee9 0x1ee8 >
+MAPUPPER < 0x1eeb 0x1eea >
+MAPUPPER < 0x1eed 0x1eec >
+MAPUPPER < 0x1eef 0x1eee >
+MAPUPPER < 0x1ef1 0x1ef0 >
+MAPUPPER < 0x1ef3 0x1ef2 >
+MAPUPPER < 0x1ef5 0x1ef4 >
+MAPUPPER < 0x1ef7 0x1ef6 >
+MAPUPPER < 0x1ef9 0x1ef8 >
+MAPLOWER < 0x1e00 0x1e01 >
+MAPLOWER < 0x1e02 0x1e03 >
+MAPLOWER < 0x1e04 0x1e05 >
+MAPLOWER < 0x1e06 0x1e07 >
+MAPLOWER < 0x1e08 0x1e09 >
+MAPLOWER < 0x1e0a 0x1e0b >
+MAPLOWER < 0x1e0c 0x1e0d >
+MAPLOWER < 0x1e0e 0x1e0f >
+MAPLOWER < 0x1e10 0x1e11 >
+MAPLOWER < 0x1e12 0x1e13 >
+MAPLOWER < 0x1e14 0x1e15 >
+MAPLOWER < 0x1e16 0x1e17 >
+MAPLOWER < 0x1e18 0x1e19 >
+MAPLOWER < 0x1e1a 0x1e1b >
+MAPLOWER < 0x1e1c 0x1e1d >
+MAPLOWER < 0x1e1e 0x1e1f >
+MAPLOWER < 0x1e20 0x1e21 >
+MAPLOWER < 0x1e22 0x1e23 >
+MAPLOWER < 0x1e24 0x1e25 >
+MAPLOWER < 0x1e26 0x1e27 >
+MAPLOWER < 0x1e28 0x1e29 >
+MAPLOWER < 0x1e2a 0x1e2b >
+MAPLOWER < 0x1e2c 0x1e2d >
+MAPLOWER < 0x1e2e 0x1e2f >
+MAPLOWER < 0x1e30 0x1e31 >
+MAPLOWER < 0x1e32 0x1e33 >
+MAPLOWER < 0x1e34 0x1e35 >
+MAPLOWER < 0x1e36 0x1e37 >
+MAPLOWER < 0x1e38 0x1e39 >
+MAPLOWER < 0x1e3a 0x1e3b >
+MAPLOWER < 0x1e3c 0x1e3d >
+MAPLOWER < 0x1e3e 0x1e3f >
+MAPLOWER < 0x1e40 0x1e41 >
+MAPLOWER < 0x1e42 0x1e43 >
+MAPLOWER < 0x1e44 0x1e45 >
+MAPLOWER < 0x1e46 0x1e47 >
+MAPLOWER < 0x1e48 0x1e49 >
+MAPLOWER < 0x1e4a 0x1e4b >
+MAPLOWER < 0x1e4c 0x1e4d >
+MAPLOWER < 0x1e4e 0x1e4f >
+MAPLOWER < 0x1e50 0x1e51 >
+MAPLOWER < 0x1e52 0x1e53 >
+MAPLOWER < 0x1e54 0x1e55 >
+MAPLOWER < 0x1e56 0x1e57 >
+MAPLOWER < 0x1e58 0x1e59 >
+MAPLOWER < 0x1e5a 0x1e5b >
+MAPLOWER < 0x1e5c 0x1e5d >
+MAPLOWER < 0x1e5e 0x1e5f >
+MAPLOWER < 0x1e60 0x1e61 >
+MAPLOWER < 0x1e62 0x1e63 >
+MAPLOWER < 0x1e64 0x1e65 >
+MAPLOWER < 0x1e66 0x1e67 >
+MAPLOWER < 0x1e68 0x1e69 >
+MAPLOWER < 0x1e6a 0x1e6b >
+MAPLOWER < 0x1e6c 0x1e6d >
+MAPLOWER < 0x1e6e 0x1e6f >
+MAPLOWER < 0x1e70 0x1e71 >
+MAPLOWER < 0x1e72 0x1e73 >
+MAPLOWER < 0x1e74 0x1e75 >
+MAPLOWER < 0x1e76 0x1e77 >
+MAPLOWER < 0x1e78 0x1e79 >
+MAPLOWER < 0x1e7a 0x1e7b >
+MAPLOWER < 0x1e7c 0x1e7d >
+MAPLOWER < 0x1e7e 0x1e7f >
+MAPLOWER < 0x1e80 0x1e81 >
+MAPLOWER < 0x1e82 0x1e83 >
+MAPLOWER < 0x1e84 0x1e85 >
+MAPLOWER < 0x1e86 0x1e87 >
+MAPLOWER < 0x1e88 0x1e89 >
+MAPLOWER < 0x1e8a 0x1e8b >
+MAPLOWER < 0x1e8c 0x1e8d >
+MAPLOWER < 0x1e8e 0x1e8f >
+MAPLOWER < 0x1e90 0x1e91 >
+MAPLOWER < 0x1e92 0x1e93 >
+MAPLOWER < 0x1e94 0x1e95 >
+MAPLOWER < 0x1ea0 0x1ea1 >
+MAPLOWER < 0x1ea2 0x1ea3 >
+MAPLOWER < 0x1ea4 0x1ea5 >
+MAPLOWER < 0x1ea6 0x1ea7 >
+MAPLOWER < 0x1ea8 0x1ea9 >
+MAPLOWER < 0x1eaa 0x1eab >
+MAPLOWER < 0x1eac 0x1ead >
+MAPLOWER < 0x1eae 0x1eaf >
+MAPLOWER < 0x1eb0 0x1eb1 >
+MAPLOWER < 0x1eb2 0x1eb3 >
+MAPLOWER < 0x1eb4 0x1eb5 >
+MAPLOWER < 0x1eb6 0x1eb7 >
+MAPLOWER < 0x1eb8 0x1eb9 >
+MAPLOWER < 0x1eba 0x1ebb >
+MAPLOWER < 0x1ebc 0x1ebd >
+MAPLOWER < 0x1ebe 0x1ebf >
+MAPLOWER < 0x1ec0 0x1ec1 >
+MAPLOWER < 0x1ec2 0x1ec3 >
+MAPLOWER < 0x1ec4 0x1ec5 >
+MAPLOWER < 0x1ec6 0x1ec7 >
+MAPLOWER < 0x1ec8 0x1ec9 >
+MAPLOWER < 0x1eca 0x1ecb >
+MAPLOWER < 0x1ecc 0x1ecd >
+MAPLOWER < 0x1ece 0x1ecf >
+MAPLOWER < 0x1ed0 0x1ed1 >
+MAPLOWER < 0x1ed2 0x1ed3 >
+MAPLOWER < 0x1ed4 0x1ed5 >
+MAPLOWER < 0x1ed6 0x1ed7 >
+MAPLOWER < 0x1ed8 0x1ed9 >
+MAPLOWER < 0x1eda 0x1edb >
+MAPLOWER < 0x1edc 0x1edd >
+MAPLOWER < 0x1ede 0x1edf >
+MAPLOWER < 0x1ee0 0x1ee1 >
+MAPLOWER < 0x1ee2 0x1ee3 >
+MAPLOWER < 0x1ee4 0x1ee5 >
+MAPLOWER < 0x1ee6 0x1ee7 >
+MAPLOWER < 0x1ee8 0x1ee9 >
+MAPLOWER < 0x1eea 0x1eeb >
+MAPLOWER < 0x1eec 0x1eed >
+MAPLOWER < 0x1eee 0x1eef >
+MAPLOWER < 0x1ef0 0x1ef1 >
+MAPLOWER < 0x1ef2 0x1ef3 >
+MAPLOWER < 0x1ef4 0x1ef5 >
+MAPLOWER < 0x1ef6 0x1ef7 >
+MAPLOWER < 0x1ef8 0x1ef9 >
+
+
+/*
+ * U+1F00 - U+1FFF : Greek Extended
+ */
+
+ALPHA 0x1f00 - 0x1f15 0x1f18 - 0x1f1d 0x1f20 - 0x1f45 0x1f48 - 0x1f4d
+ALPHA 0x1f50 - 0x1f57 0x1f59 0x1f5b 0x1f5d 0x1f5f - 0x1f7d
+ALPHA 0x1f80 - 0x1fb4 0x1fb6 - 0x1fbc 0x1fbe 0x1fc2 - 0x1fc4
+ALPHA 0x1fc6 - 0x1fcc 0x1fd0 - 0x1fd3 0x1fd6 - 0x1fdb 0x1fe0 - 0x1fec
+ALPHA 0x1ff2 - 0x1ff4 0x1ff6 - 0x1ffc
+GRAPH 0x1f00 - 0x1f15 0x1f18 - 0x1f1d 0x1f20 - 0x1f45 0x1f48 - 0x1f4d
+GRAPH 0x1f50 - 0x1f57 0x1f59 0x1f5b 0x1f5d 0x1f5f - 0x1f7d
+GRAPH 0x1f80 - 0x1fb4 0x1fb6 - 0x1fc4 0x1fc6 - 0x1fd3 0x1fd6 - 0x1fdb
+GRAPH 0x1fdd - 0x1fef 0x1ff2 - 0x1ff4 0x1ff6 - 0x1ffe
+LOWER 0x1f00 - 0x1f07 0x1f10 - 0x1f15 0x1f20 - 0x1f27 0x1f30 - 0x1f37
+LOWER 0x1f40 - 0x1f45 0x1f50 - 0x1f57 0x1f60 - 0x1f67 0x1f70 - 0x1f7d
+LOWER 0x1f80 - 0x1f87 0x1f90 - 0x1f97 0x1fa0 - 0x1fa7 0x1fb0 - 0x1fb4
+LOWER 0x1fb6 0x1fb7 0x1fbe 0x1fc2 - 0x1fc4 0x1fc6 0x1fc7
+LOWER 0x1fd0 - 0x1fd3 0x1fd6 0x1fd7 0x1fe0 - 0x1fe7 0x1ff2 - 0x1ff4
+LOWER 0x1ff6 0x1ff7
+PUNCT 0x1fbd 0x1fbf - 0x1fc1 0x1fcd - 0x1fcf 0x1fdd - 0x1fdf
+PUNCT 0x1fed - 0x1fef 0x1ffd 0x1ffe
+UPPER 0x1f08 - 0x1f0f 0x1f18 - 0x1f1d 0x1f28 - 0x1f2f 0x1f38 - 0x1f3f
+UPPER 0x1f48 - 0x1f4d 0x1f59 0x1f5b 0x1f5d 0x1f5f 0x1f68 - 0x1f6f
+UPPER 0x1fb8 - 0x1fbb 0x1fc8 - 0x1fcb 0x1fd8 - 0x1fdb 0x1fe8 - 0x1fec
+UPPER 0x1ff8 - 0x1ffb
+PRINT 0x1f00 - 0x1f15 0x1f18 - 0x1f1d 0x1f20 - 0x1f45 0x1f48 - 0x1f4d
+PRINT 0x1f50 - 0x1f57 0x1f59 0x1f5b 0x1f5d 0x1f5f - 0x1f7d
+PRINT 0x1f80 - 0x1fb4 0x1fb6 - 0x1fc4 0x1fc6 - 0x1fd3 0x1fd6 - 0x1fdb
+PRINT 0x1fdd - 0x1fef 0x1ff2 - 0x1ff4 0x1ff6 - 0x1ffe
+SWIDTH1 0x1f00 - 0x1f15 0x1f18 - 0x1f1d 0x1f20 - 0x1f45 0x1f48 - 0x1f4d
+SWIDTH1 0x1f50 - 0x1f57 0x1f59 0x1f5b 0x1f5d 0x1f5f - 0x1f7d
+SWIDTH1 0x1f80 - 0x1fb4 0x1fb6 - 0x1fc4 0x1fc6 - 0x1fd3 0x1fd6 - 0x1fdb
+SWIDTH1 0x1fdd - 0x1fef 0x1ff2 - 0x1ff4 0x1ff6 - 0x1ffe
+
+MAPUPPER < 0x1f00 - 0x1f07 : 0x1f08 >
+MAPUPPER < 0x1f10 - 0x1f15 : 0x1f18 >
+MAPUPPER < 0x1f20 - 0x1f27 : 0x1f28 >
+MAPUPPER < 0x1f30 - 0x1f37 : 0x1f38 >
+MAPUPPER < 0x1f40 - 0x1f45 : 0x1f48 >
+MAPUPPER < 0x1f51 0x1f59 >
+MAPUPPER < 0x1f53 0x1f5b >
+MAPUPPER < 0x1f55 0x1f5d >
+MAPUPPER < 0x1f57 0x1f5f >
+MAPUPPER < 0x1f60 - 0x1f67 : 0x1f68 >
+MAPUPPER < 0x1f70 - 0x1f71 : 0x1fba >
+MAPUPPER < 0x1f72 - 0x1f75 : 0x1fc8 >
+MAPUPPER < 0x1f76 - 0x1f77 : 0x1fda >
+MAPUPPER < 0x1f78 - 0x1f79 : 0x1ff8 >
+MAPUPPER < 0x1f7a - 0x1f7b : 0x1fea >
+MAPUPPER < 0x1f7c - 0x1f7d : 0x1ffa >
+MAPUPPER < 0x1f80 - 0x1f87 : 0x1f88 >
+MAPUPPER < 0x1f90 - 0x1f97 : 0x1f98 >
+MAPUPPER < 0x1fa0 - 0x1fa7 : 0x1fa8 >
+MAPUPPER < 0x1fb0 - 0x1fb1 : 0x1fb8 >
+MAPUPPER < 0x1fb3 0x1fbc >
+MAPUPPER < 0x1fbe 0x0399 >
+MAPUPPER < 0x1fc3 0x1fcc >
+MAPUPPER < 0x1fd0 - 0x1fd1 : 0x1fd8 >
+MAPUPPER < 0x1fe0 - 0x1fe1 : 0x1fe8 >
+MAPUPPER < 0x1fe5 0x1fec >
+MAPUPPER < 0x1ff3 0x1ffc >
+MAPLOWER < 0x1f08 - 0x1f0f : 0x1f00 >
+MAPLOWER < 0x1f18 - 0x1f1d : 0x1f10 >
+MAPLOWER < 0x1f28 - 0x1f2f : 0x1f20 >
+MAPLOWER < 0x1f38 - 0x1f3f : 0x1f30 >
+MAPLOWER < 0x1f48 - 0x1f4d : 0x1f40 >
+MAPLOWER < 0x1f59 0x1f51 >
+MAPLOWER < 0x1f5b 0x1f53 >
+MAPLOWER < 0x1f5d 0x1f55 >
+MAPLOWER < 0x1f5f 0x1f57 >
+MAPLOWER < 0x1f68 - 0x1f6f : 0x1f60 >
+MAPLOWER < 0x1f88 - 0x1f8f : 0x1f80 >
+MAPLOWER < 0x1f98 - 0x1f9f : 0x1f90 >
+MAPLOWER < 0x1fa8 - 0x1faf : 0x1fa0 >
+MAPLOWER < 0x1fb8 - 0x1fb9 : 0x1fb0 >
+MAPLOWER < 0x1fba - 0x1fbb : 0x1f70 >
+MAPLOWER < 0x1fbc 0x1fb3 >
+MAPLOWER < 0x1fc8 - 0x1fcb : 0x1f72 >
+MAPLOWER < 0x1fcc 0x1fc3 >
+MAPLOWER < 0x1fd8 - 0x1fd9 : 0x1fd0 >
+MAPLOWER < 0x1fda - 0x1fdb : 0x1f76 >
+MAPLOWER < 0x1fe8 - 0x1fe9 : 0x1fe0 >
+MAPLOWER < 0x1fea - 0x1feb : 0x1f7a >
+MAPLOWER < 0x1fec 0x1fe5 >
+MAPLOWER < 0x1ff8 - 0x1ff9 : 0x1f78 >
+MAPLOWER < 0x1ffa - 0x1ffb : 0x1f7c >
+MAPLOWER < 0x1ffc 0x1ff3 >
+
+
+/*
+ * U+2000 - U+206F : General Punctuation
+ */
+
+CONTROL 0x200c - 0x200f 0x202a - 0x202e 0x2060 - 0x2063 0x206a - 0x206f
+GRAPH 0x2010 - 0x2027 0x2030 - 0x2052 0x2057
+PUNCT 0x2010 - 0x2027 0x2030 - 0x2052 0x2057
+SPACE 0x2000 - 0x200b 0x2028 0x2029 0x202f 0x205f
+BLANK 0x2000 - 0x200b 0x202f 0x205f
+PRINT 0x2000 - 0x200b 0x2010 - 0x2029 0x202f - 0x2052 0x2057
+PRINT 0x205f
+SWIDTH1 0x2000 - 0x200b 0x2010 - 0x2029 0x202f - 0x2052 0x2057
+SWIDTH1 0x205f
+
+
+/*
+ * U+2070 - U+209F : Superscripts and Subscripts
+ */
+
+ALPHA 0x2071 0x207f
+GRAPH 0x2070 0x2071 0x2074 - 0x208e
+LOWER 0x2071 0x207f
+PUNCT 0x207a - 0x207e 0x208a - 0x208e
+PRINT 0x2070 0x2071 0x2074 - 0x208e
+SPECIAL 0x2070 0x2074 - 0x2079 0x2080 - 0x2089
+SWIDTH1 0x2070 0x2071 0x2074 - 0x208e
+
+
+/*
+ * U+20A0 - U+20CF : Currency Symbols
+ */
+
+GRAPH 0x20a0 - 0x20b1
+PUNCT 0x20a0 - 0x20b1
+PRINT 0x20a0 - 0x20b1
+SWIDTH1 0x20a0 - 0x20b1
+
+
+/*
+ * U+20D0 - U+20FF : Combining Diacritical Marks for Symbols
+ */
+
+GRAPH 0x20d0 - 0x20ea
+PRINT 0x20d0 - 0x20ea
+SWIDTH1 0x20d0 - 0x20ea
+
+
+/*
+ * U+2100 - U+214F : Letterlike Symbols
+ */
+
+ALPHA 0x2102 0x2107 0x210a - 0x2113 0x2115 0x2119 - 0x211d
+ALPHA 0x2124 0x2126 0x2128 0x212a - 0x212d 0x212f - 0x2131
+ALPHA 0x2133 0x2134 0x2139 0x213d - 0x213f 0x2145 - 0x2149
+GRAPH 0x2100 - 0x213a 0x213d - 0x214b
+LOWER 0x210a 0x210e 0x210f 0x2113 0x212f 0x2134 0x2139
+LOWER 0x213d 0x2146 - 0x2149
+PUNCT 0x2100 0x2101 0x2103 - 0x2106 0x2108 0x2109 0x2114
+PUNCT 0x2116 - 0x2118 0x211e - 0x2123 0x2125 0x2127 0x2129
+PUNCT 0x212e 0x2132 0x213a 0x2140 - 0x2144 0x214a 0x214b
+UPPER 0x2102 0x2107 0x210b - 0x210d 0x2110 - 0x2112 0x2115
+UPPER 0x2119 - 0x211d 0x2124 0x2126 0x2128 0x212a - 0x212d
+UPPER 0x2130 0x2131 0x2133 0x213e 0x213f 0x2145
+PRINT 0x2100 - 0x213a 0x213d - 0x214b
+SWIDTH1 0x2100 - 0x213a 0x213d - 0x214b
+
+MAPLOWER < 0x2126 0x03c9 >
+MAPLOWER < 0x212a 'k' >
+MAPLOWER < 0x212b 0x00e5 >
+
+
+/*
+ * U+2150 - U+218F : Number Forms
+ */
+
+GRAPH 0x2153 - 0x2183
+PRINT 0x2153 - 0x2183
+SPECIAL 0x2153 - 0x2183
+SWIDTH1 0x2153 - 0x2183
+
+MAPUPPER < 0x2170 - 0x217f : 0x2160 >
+MAPLOWER < 0x2160 - 0x216f : 0x2170 >
+
+
+/*
+ * U+2190 - U+21FF : Arrows
+ */
+
+GRAPH 0x2190 - 0x21ff
+PUNCT 0x2190 - 0x21ff
+PRINT 0x2190 - 0x21ff
+SWIDTH1 0x2190 - 0x21ff
+
+
+/*
+ * U+2200 - U+22FF : Mathematical Operators
+ */
+
+GRAPH 0x2200 - 0x22ff
+PUNCT 0x2200 - 0x22ff
+PRINT 0x2200 - 0x22ff
+SWIDTH1 0x2200 - 0x22ff
+
+
+/*
+ * U+2300 - U+23FF : Miscellaneous Technical
+ */
+
+GRAPH 0x2300 - 0x23ce
+PUNCT 0x2300 - 0x23ce
+PRINT 0x2300 - 0x23ce
+SWIDTH1 0x2300 - 0x2328 0x232b - 0x23ce
+SWIDTH2 0x2329 0x232a
+
+
+/*
+ * U+2400 - U+243F : Control Pictures
+ */
+
+GRAPH 0x2400 - 0x2426
+PUNCT 0x2400 - 0x2426
+PRINT 0x2400 - 0x2426
+SWIDTH1 0x2400 - 0x2426
+
+
+/*
+ * U+2440 - U+245F : Optical Character Recognition
+ */
+
+GRAPH 0x2440 - 0x244a
+PUNCT 0x2440 - 0x244a
+PRINT 0x2440 - 0x244a
+SWIDTH1 0x2440 - 0x244a
+
+
+/*
+ * U+2460 - U+24FF : Enclosed Alphanumerics
+ */
+
+GRAPH 0x2460 - 0x24fe
+PUNCT 0x249c - 0x24e9
+PRINT 0x2460 - 0x24fe
+SPECIAL 0x2460 - 0x249b 0x24ea - 0x24fe
+SWIDTH1 0x2460 - 0x24fe
+
+MAPUPPER < 0x24d0 - 0x24e9 : 0x24b6 >
+MAPLOWER < 0x24b6 - 0x24cf : 0x24d0 >
+
+
+/*
+ * U+2500 - U+257F : Box Drawing
+ */
+
+GRAPH 0x2500 - 0x257f
+PUNCT 0x2500 - 0x257f
+PRINT 0x2500 - 0x257f
+SWIDTH1 0x2500 - 0x257f
+
+
+/*
+ * U+2580 - U+259F : Block Elements
+ */
+
+GRAPH 0x2580 - 0x259f
+PUNCT 0x2580 - 0x259f
+PRINT 0x2580 - 0x259f
+SWIDTH1 0x2580 - 0x259f
+
+
+/*
+ * U+25A0 - U+25FF : Geometric Shapes
+ */
+
+GRAPH 0x25a0 - 0x25ff
+PUNCT 0x25a0 - 0x25ff
+PRINT 0x25a0 - 0x25ff
+SWIDTH1 0x25a0 - 0x25ff
+
+
+/*
+ * U+2600 - U+26FF : Miscellaneous Symbols
+ */
+
+GRAPH 0x2600 - 0x2613 0x2616 0x2617 0x2619 - 0x267d 0x2680 - 0x2689
+PUNCT 0x2600 - 0x2613 0x2616 0x2617 0x2619 - 0x267d 0x2680 - 0x2689
+PRINT 0x2600 - 0x2613 0x2616 0x2617 0x2619 - 0x267d 0x2680 - 0x2689
+SWIDTH1 0x2600 - 0x2613 0x2616 0x2617 0x2619 - 0x267d 0x2680 - 0x2689
+
+
+/*
+ * U+2700 - U+27BF : Dingbats
+ */
+
+GRAPH 0x2701 - 0x2704 0x2706 - 0x2709 0x270c - 0x2727 0x2729 - 0x274b
+GRAPH 0x274d 0x274f - 0x2752 0x2756 0x2758 - 0x275e 0x2761 - 0x2794
+GRAPH 0x2798 - 0x27af 0x27b1 - 0x27be
+PUNCT 0x2701 - 0x2704 0x2706 - 0x2709 0x270c - 0x2727 0x2729 - 0x274b
+PUNCT 0x274d 0x274f - 0x2752 0x2756 0x2758 - 0x275e 0x2761 - 0x2775
+PUNCT 0x2794 0x2798 - 0x27af 0x27b1 - 0x27be
+PRINT 0x2701 - 0x2704 0x2706 - 0x2709 0x270c - 0x2727 0x2729 - 0x274b
+PRINT 0x274d 0x274f - 0x2752 0x2756 0x2758 - 0x275e 0x2761 - 0x2794
+PRINT 0x2798 - 0x27af 0x27b1 - 0x27be
+SPECIAL 0x2776 - 0x2793
+SWIDTH1 0x2701 - 0x2704 0x2706 - 0x2709 0x270c - 0x2727 0x2729 - 0x274b
+SWIDTH1 0x274d 0x274f - 0x2752 0x2756 0x2758 - 0x275e 0x2761 - 0x2794
+SWIDTH1 0x2798 - 0x27af 0x27b1 - 0x27be
+
+
+/*
+ * U+27C0 - U+27EF : Miscellaneous Mathematical Symbols-A
+ */
+
+GRAPH 0x27d0 - 0x27eb
+PUNCT 0x27d0 - 0x27eb
+PRINT 0x27d0 - 0x27eb
+SWIDTH1 0x27d0 - 0x27eb
+
+
+/*
+ * U+27F0 - U+27FF : Supplemental Arrows-A
+ */
+
+GRAPH 0x27f0 - 0x27ff
+PUNCT 0x27f0 - 0x27ff
+PRINT 0x27f0 - 0x27ff
+SWIDTH1 0x27f0 - 0x27ff
+
+
+/*
+ * U+2800 - U+28FF : Braille Patterns
+ */
+
+GRAPH 0x2800 - 0x28ff
+PUNCT 0x2800 - 0x28ff
+PRINT 0x2800 - 0x28ff
+SWIDTH1 0x2800 - 0x28ff
+
+
+/*
+ * U+2900 - U+297F : Supplemental Arrows-B
+ */
+
+GRAPH 0x2900 - 0x297f
+PUNCT 0x2900 - 0x297f
+PRINT 0x2900 - 0x297f
+SWIDTH1 0x2900 - 0x297f
+
+
+/*
+ * U+2980 - U+29FF : Miscellaneous Mathematical Symbols-B
+ */
+
+GRAPH 0x2980 - 0x29ff
+PUNCT 0x2980 - 0x29ff
+PRINT 0x2980 - 0x29ff
+SWIDTH1 0x2980 - 0x29ff
+
+
+/*
+ * U+2A00 - U+2AFF : Supplemental Mathematical Operators
+ */
+
+GRAPH 0x2a00 - 0x2aff
+PUNCT 0x2a00 - 0x2aff
+PRINT 0x2a00 - 0x2aff
+SWIDTH1 0x2a00 - 0x2aff
+
+
+/*
+ * U+2E80 - U+2EFF : CJK Radicals Supplement
+ */
+
+GRAPH 0x2e80 - 0x2e99 0x2e9b - 0x2ef3
+PUNCT 0x2e80 - 0x2e99 0x2e9b - 0x2ef3
+PRINT 0x2e80 - 0x2e99 0x2e9b - 0x2ef3
+SWIDTH2 0x2e80 - 0x2e99 0x2e9b - 0x2ef3
+
+
+/*
+ * U+2F00 - U+2FDF : Kangxi Radicals
+ */
+
+GRAPH 0x2f00 - 0x2fd5
+PUNCT 0x2f00 - 0x2fd5
+PRINT 0x2f00 - 0x2fd5
+SWIDTH2 0x2f00 - 0x2fd5
+
+
+/*
+ * U+2FF0 - U+2FFF : Ideographic Description Characters
+ */
+
+GRAPH 0x2ff0 - 0x2ffb
+PUNCT 0x2ff0 - 0x2ffb
+PRINT 0x2ff0 - 0x2ffb
+SWIDTH2 0x2ff0 - 0x2ffb
+
+
+/*
+ * U+3000 - U+303F : CJK Symbols and Punctuation
+ */
+
+GRAPH 0x3001 - 0x303f
+PUNCT 0x3001 - 0x3004 0x3008 - 0x3020 0x3030 0x3036 0x3037
+PUNCT 0x303d - 0x303f
+SPACE 0x3000
+BLANK 0x3000
+PRINT 0x3000 - 0x303f
+IDEOGRAM 0x3006
+SPECIAL 0x3007 0x3021 - 0x3029 0x3038 - 0x303a
+SWIDTH1 0x303f
+SWIDTH2 0x3000 - 0x303e
+
+
+/*
+ * U+3040 - U+309F : Hiragana
+ */
+
+GRAPH 0x3041 - 0x3096 0x3099 - 0x309f
+PUNCT 0x309b 0x309c
+PRINT 0x3041 - 0x3096 0x3099 - 0x309f
+PHONOGRAM 0x3041 - 0x3096 0x309f
+SWIDTH2 0x3041 - 0x3096 0x3099 - 0x309f
+
+
+/*
+ * U+30A0 - U+30FF : Katakana
+ */
+
+GRAPH 0x30a0 - 0x30ff
+PUNCT 0x30a0 0x30fb
+PRINT 0x30a0 - 0x30ff
+PHONOGRAM 0x30a1 - 0x30fa 0x30ff
+SWIDTH2 0x30a0 - 0x30ff
+
+
+/*
+ * U+3100 - U+312F : Bopomofo
+ */
+
+GRAPH 0x3105 - 0x312c
+PRINT 0x3105 - 0x312c
+SWIDTH2 0x3105 - 0x312c
+
+
+/*
+ * U+3130 - U+318F : Hangul Compatibility Jamo
+ */
+
+GRAPH 0x3131 - 0x318e
+PRINT 0x3131 - 0x318e
+PHONOGRAM 0x3131 - 0x3163 0x3165 - 0x318e
+SWIDTH2 0x3131 - 0x318e
+
+
+/*
+ * U+3190 - U+319F : Kanbun
+ */
+
+GRAPH 0x3190 - 0x319f
+PUNCT 0x3190 0x3191 0x3196 - 0x319f
+PRINT 0x3190 - 0x319f
+SPECIAL 0x3192 - 0x3195
+SWIDTH2 0x3190 - 0x319f
+
+
+/*
+ * U+31A0 - U+31BF : Bopomofo Extended
+ */
+
+GRAPH 0x31a0 - 0x31b7
+PRINT 0x31a0 - 0x31b7
+SWIDTH2 0x31a0 - 0x31b7
+
+
+/*
+ * U+31F0 - U+31FF : Katakana Phonetic Extensions
+ */
+
+GRAPH 0x31f0 - 0x31ff
+PRINT 0x31f0 - 0x31ff
+PHONOGRAM 0x31f0 - 0x31ff
+SWIDTH2 0x31f0 - 0x31ff
+
+
+/*
+ * U+3200 - U+32FF : Enclosed CJK Letters and Months
+ */
+
+GRAPH 0x3200 - 0x321c 0x3220 - 0x3243 0x3251 - 0x327b 0x327f - 0x32cb
+GRAPH 0x32d0 - 0x32fe
+PUNCT 0x3200 - 0x321c 0x322a - 0x3243 0x3260 - 0x327b 0x327f
+PUNCT 0x328a - 0x32b0 0x32c0 - 0x32cb 0x32d0 - 0x32fe
+PRINT 0x3200 - 0x321c 0x3220 - 0x3243 0x3251 - 0x327b 0x327f - 0x32cb
+PRINT 0x32d0 - 0x32fe
+SPECIAL 0x3220 - 0x3229 0x3251 - 0x325f 0x3280 - 0x3289 0x32b1 - 0x32bf
+SWIDTH2 0x3200 - 0x321c 0x3220 - 0x3243 0x3251 - 0x327b 0x327f - 0x32cb
+SWIDTH2 0x32d0 - 0x32fe
+
+
+/*
+ * U+3300 - U+33FF : CJK Compatibility
+ */
+
+GRAPH 0x3300 - 0x3376 0x337b - 0x33dd 0x33e0 - 0x33fe
+PUNCT 0x3300 - 0x3376 0x337b - 0x33dd 0x33e0 - 0x33fe
+PRINT 0x3300 - 0x3376 0x337b - 0x33dd 0x33e0 - 0x33fe
+SWIDTH2 0x3300 - 0x3376 0x337b - 0x33dd 0x33e0 - 0x33fe
+
+
+/*
+ * U+3400 - U+4DBF : CJK Unified Ideographs Extension A
+ */
+
+GRAPH 0x3400 - 0x4db5
+PRINT 0x3400 - 0x4db5
+IDEOGRAM 0x3400 - 0x4db5
+SWIDTH2 0x3400 - 0x4db5
+
+
+/*
+ * U+4E00 - U+9FFF : CJK Unified Ideographs
+ */
+
+GRAPH 0x4e00 - 0x9fa5
+PRINT 0x4e00 - 0x9fa5
+IDEOGRAM 0x4e00 - 0x9fa5
+SWIDTH2 0x4e00 - 0x9fa5
+
+
+/*
+ * U+A000 - U+A48F : Yi Syllables
+ */
+
+GRAPH 0xa000 - 0xa48c
+PRINT 0xa000 - 0xa48c
+PHONOGRAM 0xa000 - 0xa48c
+SWIDTH2 0xa000 - 0xa48c
+
+
+/*
+ * U+A490 - U+A4CF : Yi Radicals
+ */
+
+GRAPH 0xa490 - 0xa4c6
+PUNCT 0xa490 - 0xa4c6
+PRINT 0xa490 - 0xa4c6
+SWIDTH2 0xa490 - 0xa4c6
+
+
+/*
+ * U+AC00 - U+D7AF : Hangul Syllables
+ */
+
+GRAPH 0xac00 - 0xd7a3
+PRINT 0xac00 - 0xd7a3
+PHONOGRAM 0xac00 - 0xd7a3
+SWIDTH2 0xac00 - 0xd7a3
+
+
+/*
+ * U+D800 - U+DB7F : High Surrogates
+ */
+
+PRINT 0xd800 - 0xdb7f
+SWIDTH1 0xd800 - 0xdb7f
+
+
+/*
+ * U+DB80 - U+DBFF : High Private Use Surrogates
+ */
+
+PRINT 0xdb80 - 0xdbff
+SWIDTH1 0xdb80 - 0xdbff
+
+
+/*
+ * U+DC00 - U+DFFF : Low Surrogates
+ */
+
+PRINT 0xdc00 - 0xdfff
+SWIDTH1 0xdc00 - 0xdfff
+
+
+/*
+ * U+E000 - U+F8FF : Private Use Area
+ */
+
+GRAPH 0xe000 - 0xf8ff
+PRINT 0xe000 - 0xf8ff
+SWIDTH1 0xe000 - 0xf8ff
+
+
+/*
+ * U+F900 - U+FAFF : CJK Compatibility Ideographs
+ */
+
+GRAPH 0xf900 - 0xfa2d 0xfa30 - 0xfa6a
+PRINT 0xf900 - 0xfa2d 0xfa30 - 0xfa6a
+IDEOGRAM 0xf900 - 0xfa2d 0xfa30 - 0xfa6a
+SWIDTH2 0xf900 - 0xfa2d 0xfa30 - 0xfa6a
+
+
+/*
+ * U+FB00 - U+FB4F : Alphabetic Presentation Forms
+ */
+
+ALPHA 0xfb00 - 0xfb06 0xfb13 - 0xfb17
+GRAPH 0xfb00 - 0xfb06 0xfb13 - 0xfb17 0xfb1d - 0xfb36 0xfb38 - 0xfb3c
+GRAPH 0xfb3e 0xfb40 0xfb41 0xfb43 0xfb44 0xfb46 - 0xfb4f
+LOWER 0xfb00 - 0xfb06 0xfb13 - 0xfb17
+PUNCT 0xfb29
+PRINT 0xfb00 - 0xfb06 0xfb13 - 0xfb17 0xfb1d - 0xfb36 0xfb38 - 0xfb3c
+PRINT 0xfb3e 0xfb40 0xfb41 0xfb43 0xfb44 0xfb46 - 0xfb4f
+SWIDTH1 0xfb00 - 0xfb06 0xfb13 - 0xfb17 0xfb1d - 0xfb36 0xfb38 - 0xfb3c
+SWIDTH1 0xfb3e 0xfb40 0xfb41 0xfb43 0xfb44 0xfb46 - 0xfb4f
+
+
+/*
+ * U+FB50 - U+FDFF : Arabic Presentation Forms-A
+ */
+
+GRAPH 0xfb50 - 0xfbb1 0xfbd3 - 0xfd3f 0xfd50 - 0xfd8f 0xfd92 - 0xfdc7
+GRAPH 0xfdf0 - 0xfdfc
+PUNCT 0xfd3e 0xfd3f 0xfdfc
+PRINT 0xfb50 - 0xfbb1 0xfbd3 - 0xfd3f 0xfd50 - 0xfd8f 0xfd92 - 0xfdc7
+PRINT 0xfdf0 - 0xfdfc
+SWIDTH1 0xfb50 - 0xfbb1 0xfbd3 - 0xfd3f 0xfd50 - 0xfd8f 0xfd92 - 0xfdc7
+SWIDTH1 0xfdf0 - 0xfdfc
+
+
+/*
+ * U+FE00 - U+FE0F : Variation Selectors
+ */
+
+GRAPH 0xfe00 - 0xfe0f
+PRINT 0xfe00 - 0xfe0f
+SWIDTH1 0xfe00 - 0xfe0f
+
+
+/*
+ * U+FE20 - U+FE2F : Combining Half Marks
+ */
+
+GRAPH 0xfe20 - 0xfe23
+PRINT 0xfe20 - 0xfe23
+SWIDTH1 0xfe20 - 0xfe23
+
+
+/*
+ * U+FE30 - U+FE4F : CJK Compatibility Forms
+ */
+
+GRAPH 0xfe30 - 0xfe46 0xfe49 - 0xfe4f
+PUNCT 0xfe30 - 0xfe46 0xfe49 - 0xfe4f
+PRINT 0xfe30 - 0xfe46 0xfe49 - 0xfe4f
+SWIDTH2 0xfe30 - 0xfe46 0xfe49 - 0xfe4f
+
+
+/*
+ * U+FE50 - U+FE6F : Small Form Variants
+ */
+
+GRAPH 0xfe50 - 0xfe52 0xfe54 - 0xfe66 0xfe68 - 0xfe6b
+PUNCT 0xfe50 - 0xfe52 0xfe54 - 0xfe66 0xfe68 - 0xfe6b
+PRINT 0xfe50 - 0xfe52 0xfe54 - 0xfe66 0xfe68 - 0xfe6b
+SWIDTH2 0xfe50 - 0xfe52 0xfe54 - 0xfe66 0xfe68 - 0xfe6b
+
+
+/*
+ * U+FE70 - U+FEFF : Arabic Presentation Forms-B
+ */
+
+CONTROL 0xfeff
+GRAPH 0xfe70 - 0xfe74 0xfe76 - 0xfefc
+PRINT 0xfe70 - 0xfe74 0xfe76 - 0xfefc
+SWIDTH1 0xfe70 - 0xfe74 0xfe76 - 0xfefc
+
+
+/*
+ * U+FF00 - U+FFEF : Halfwidth and Fullwidth Forms
+ */
+
+ALPHA 0xff21 - 0xff3a 0xff41 - 0xff5a
+GRAPH 0xff01 - 0xffbe 0xffc2 - 0xffc7 0xffca - 0xffcf 0xffd2 - 0xffd7
+GRAPH 0xffda - 0xffdc 0xffe0 - 0xffe6 0xffe8 - 0xffee
+LOWER 0xff41 - 0xff5a
+PUNCT 0xff01 - 0xff0f 0xff1a - 0xff20 0xff3b - 0xff40 0xff5b - 0xff65
+PUNCT 0xffe0 - 0xffe6 0xffe8 - 0xffee
+UPPER 0xff21 - 0xff3a
+PRINT 0xff01 - 0xffbe 0xffc2 - 0xffc7 0xffca - 0xffcf 0xffd2 - 0xffd7
+PRINT 0xffda - 0xffdc 0xffe0 - 0xffe6 0xffe8 - 0xffee
+PHONOGRAM 0xff66 - 0xff6f 0xff71 - 0xff9d 0xffa1 - 0xffbe 0xffc2 - 0xffc7
+PHONOGRAM 0xffca - 0xffcf 0xffd2 - 0xffd7 0xffda - 0xffdc
+SWIDTH1 0xff61 - 0xffbe 0xffc2 - 0xffc7 0xffca - 0xffcf 0xffd2 - 0xffd7
+SWIDTH1 0xffda - 0xffdc 0xffe8 - 0xffee
+SWIDTH2 0xff01 - 0xff60 0xffe0 - 0xffe6
+
+MAPUPPER < 0xff41 - 0xff5a : 0xff21 >
+MAPLOWER < 0xff21 - 0xff3a : 0xff41 >
+
+
+/*
+ * U+FFF0 - U+FFFF : Specials
+ */
+
+CONTROL 0xfff9 - 0xfffb
+GRAPH 0xfffc 0xfffd
+PUNCT 0xfffc 0xfffd
+PRINT 0xfffc 0xfffd
+SWIDTH1 0xfffc 0xfffd
+
+
+/*
+ * U+10300 - U+1032F : Old Italic
+ */
+
+GRAPH 0x10300 - 0x1031e 0x10320 - 0x10323
+PRINT 0x10300 - 0x1031e 0x10320 - 0x10323
+SPECIAL 0x10320 - 0x10323
+SWIDTH1 0x10300 - 0x1031e 0x10320 - 0x10323
+
+
+/*
+ * U+10330 - U+1034F : Gothic
+ */
+
+GRAPH 0x10330 - 0x1034a
+PRINT 0x10330 - 0x1034a
+SPECIAL 0x1034a
+SWIDTH1 0x10330 - 0x1034a
+
+
+/*
+ * U+10400 - U+1044F : Deseret
+ */
+
+ALPHA 0x10400 - 0x10425 0x10428 - 0x1044d
+GRAPH 0x10400 - 0x10425 0x10428 - 0x1044d
+LOWER 0x10428 - 0x1044d
+UPPER 0x10400 - 0x10425
+PRINT 0x10400 - 0x10425 0x10428 - 0x1044d
+SWIDTH1 0x10400 - 0x10425 0x10428 - 0x1044d
+
+MAPUPPER < 0x10428 - 0x1044d : 0x10400 >
+MAPLOWER < 0x10400 - 0x10425 : 0x10428 >
+
+
+/*
+ * U+1D000 - U+1D0FF : Byzantine Musical Symbols
+ */
+
+GRAPH 0x1d000 - 0x1d0f5
+PUNCT 0x1d000 - 0x1d0f5
+PRINT 0x1d000 - 0x1d0f5
+SWIDTH1 0x1d000 - 0x1d0f5
+
+
+/*
+ * U+1D100 - U+1D1FF : Musical Symbols
+ */
+
+CONTROL 0x1d173 - 0x1d17a
+GRAPH 0x1d100 - 0x1d126 0x1d12a - 0x1d172 0x1d17b - 0x1d1dd
+PUNCT 0x1d100 - 0x1d126 0x1d12a - 0x1d164 0x1d16a - 0x1d16c
+PUNCT 0x1d183 0x1d184 0x1d18c - 0x1d1a9 0x1d1ae - 0x1d1dd
+PRINT 0x1d100 - 0x1d126 0x1d12a - 0x1d172 0x1d17b - 0x1d1dd
+SWIDTH1 0x1d100 - 0x1d126 0x1d12a - 0x1d172 0x1d17b - 0x1d1dd
+
+
+/*
+ * U+1D400 - U+1D7FF : Mathematical Alphanumeric Symbols
+ */
+
+ALPHA 0x1d400 - 0x1d454 0x1d456 - 0x1d49c 0x1d49e 0x1d49f
+ALPHA 0x1d4a2 0x1d4a5 0x1d4a6 0x1d4a9 - 0x1d4ac 0x1d4ae - 0x1d4b9
+ALPHA 0x1d4bb 0x1d4bd - 0x1d4c0 0x1d4c2 0x1d4c3 0x1d4c5 - 0x1d505
+ALPHA 0x1d507 - 0x1d50a 0x1d50d - 0x1d514 0x1d516 - 0x1d51c
+ALPHA 0x1d51e - 0x1d539 0x1d53b - 0x1d53e 0x1d540 - 0x1d544
+ALPHA 0x1d546 0x1d54a - 0x1d550 0x1d552 - 0x1d6a3 0x1d6a8 - 0x1d6c0
+ALPHA 0x1d6c2 - 0x1d6da 0x1d6dc - 0x1d6fa 0x1d6fc - 0x1d714
+ALPHA 0x1d716 - 0x1d734 0x1d736 - 0x1d74e 0x1d750 - 0x1d76e
+ALPHA 0x1d770 - 0x1d788 0x1d78a - 0x1d7a8 0x1d7aa - 0x1d7c2
+ALPHA 0x1d7c4 - 0x1d7c9
+GRAPH 0x1d400 - 0x1d454 0x1d456 - 0x1d49c 0x1d49e 0x1d49f
+GRAPH 0x1d4a2 0x1d4a5 0x1d4a6 0x1d4a9 - 0x1d4ac 0x1d4ae - 0x1d4b9
+GRAPH 0x1d4bb 0x1d4bd - 0x1d4c0 0x1d4c2 0x1d4c3 0x1d4c5 - 0x1d505
+GRAPH 0x1d507 - 0x1d50a 0x1d50d - 0x1d514 0x1d516 - 0x1d51c
+GRAPH 0x1d51e - 0x1d539 0x1d53b - 0x1d53e 0x1d540 - 0x1d544
+GRAPH 0x1d546 0x1d54a - 0x1d550 0x1d552 - 0x1d6a3 0x1d6a8 - 0x1d7c9
+GRAPH 0x1d7ce - 0x1d7ff
+LOWER 0x1d41a - 0x1d433 0x1d44e - 0x1d454 0x1d456 - 0x1d467
+LOWER 0x1d482 - 0x1d49b 0x1d4b6 - 0x1d4b9 0x1d4bb 0x1d4bd - 0x1d4c0
+LOWER 0x1d4c2 0x1d4c3 0x1d4c5 - 0x1d4cf 0x1d4ea - 0x1d503
+LOWER 0x1d51e - 0x1d537 0x1d552 - 0x1d56b 0x1d586 - 0x1d59f
+LOWER 0x1d5ba - 0x1d5d3 0x1d5ee - 0x1d607 0x1d622 - 0x1d63b
+LOWER 0x1d656 - 0x1d66f 0x1d68a - 0x1d6a3 0x1d6c2 - 0x1d6da
+LOWER 0x1d6dc - 0x1d6e1 0x1d6fc - 0x1d714 0x1d716 - 0x1d71b
+LOWER 0x1d736 - 0x1d74e 0x1d750 - 0x1d755 0x1d770 - 0x1d788
+LOWER 0x1d78a - 0x1d78f 0x1d7aa - 0x1d7c2 0x1d7c4 - 0x1d7c9
+PUNCT 0x1d6c1 0x1d6db 0x1d6fb 0x1d715 0x1d735 0x1d74f
+PUNCT 0x1d76f 0x1d789 0x1d7a9 0x1d7c3
+UPPER 0x1d400 - 0x1d419 0x1d434 - 0x1d44d 0x1d468 - 0x1d481
+UPPER 0x1d49c 0x1d49e 0x1d49f 0x1d4a2 0x1d4a5 0x1d4a6
+UPPER 0x1d4a9 - 0x1d4ac 0x1d4ae - 0x1d4b5 0x1d4d0 - 0x1d4e9
+UPPER 0x1d504 0x1d505 0x1d507 - 0x1d50a 0x1d50d - 0x1d514
+UPPER 0x1d516 - 0x1d51c 0x1d538 0x1d539 0x1d53b - 0x1d53e
+UPPER 0x1d540 - 0x1d544 0x1d546 0x1d54a - 0x1d550 0x1d56c - 0x1d585
+UPPER 0x1d5a0 - 0x1d5b9 0x1d5d4 - 0x1d5ed 0x1d608 - 0x1d621
+UPPER 0x1d63c - 0x1d655 0x1d670 - 0x1d689 0x1d6a8 - 0x1d6c0
+UPPER 0x1d6e2 - 0x1d6fa 0x1d71c - 0x1d734 0x1d756 - 0x1d76e
+UPPER 0x1d790 - 0x1d7a8
+PRINT 0x1d400 - 0x1d454 0x1d456 - 0x1d49c 0x1d49e 0x1d49f
+PRINT 0x1d4a2 0x1d4a5 0x1d4a6 0x1d4a9 - 0x1d4ac 0x1d4ae - 0x1d4b9
+PRINT 0x1d4bb 0x1d4bd - 0x1d4c0 0x1d4c2 0x1d4c3 0x1d4c5 - 0x1d505
+PRINT 0x1d507 - 0x1d50a 0x1d50d - 0x1d514 0x1d516 - 0x1d51c
+PRINT 0x1d51e - 0x1d539 0x1d53b - 0x1d53e 0x1d540 - 0x1d544
+PRINT 0x1d546 0x1d54a - 0x1d550 0x1d552 - 0x1d6a3 0x1d6a8 - 0x1d7c9
+PRINT 0x1d7ce - 0x1d7ff
+SWIDTH1 0x1d400 - 0x1d454 0x1d456 - 0x1d49c 0x1d49e 0x1d49f
+SWIDTH1 0x1d4a2 0x1d4a5 0x1d4a6 0x1d4a9 - 0x1d4ac 0x1d4ae - 0x1d4b9
+SWIDTH1 0x1d4bb 0x1d4bd - 0x1d4c0 0x1d4c2 0x1d4c3 0x1d4c5 - 0x1d505
+SWIDTH1 0x1d507 - 0x1d50a 0x1d50d - 0x1d514 0x1d516 - 0x1d51c
+SWIDTH1 0x1d51e - 0x1d539 0x1d53b - 0x1d53e 0x1d540 - 0x1d544
+SWIDTH1 0x1d546 0x1d54a - 0x1d550 0x1d552 - 0x1d6a3 0x1d6a8 - 0x1d7c9
+SWIDTH1 0x1d7ce - 0x1d7ff
+
+
+/*
+ * U+20000 - U+2A6DF : CJK Unified Ideographs Extension B
+ */
+
+GRAPH 0x20000 - 0x2a6d6
+PRINT 0x20000 - 0x2a6d6
+IDEOGRAM 0x20000 - 0x2a6d6
+SWIDTH2 0x20000 - 0x2a6d6
+
+
+/*
+ * U+2F800 - U+2FA1F : CJK Compatibility Ideographs Supplement
+ */
+
+GRAPH 0x2f800 - 0x2fa1d
+PRINT 0x2f800 - 0x2fa1d
+IDEOGRAM 0x2f800 - 0x2fa1d
+SWIDTH2 0x2f800 - 0x2fa1d
+
+
+/*
+ * U+E0000 - U+E007F : Tags
+ */
+
+CONTROL 0xe0001 0xe0020 - 0xe007f
+
+
+/*
+ * U+F0000 - U+FFFFF : Supplementary Private Use Area-A
+ */
+
+GRAPH 0xf0000 - 0xffffd
+PRINT 0xf0000 - 0xffffd
+SWIDTH1 0xf0000 - 0xffffd
+
+
+/*
+ * U+100000 - U+10FFFF : Supplementary Private Use Area-B
+ */
+
+GRAPH 0x100000 - 0x10fffd
+PRINT 0x100000 - 0x10fffd
+SWIDTH1 0x100000 - 0x10fffd
diff --git a/share/monetdef/Makefile b/share/monetdef/Makefile
index 623580f..f6552d3 100644
--- a/share/monetdef/Makefile
+++ b/share/monetdef/Makefile
@@ -8,9 +8,12 @@ LOCALES= af_ZA.ISO8859-1 \
be_BY.CP1131 \
be_BY.CP1251 \
be_BY.ISO8859-5 \
+ be_BY.UTF-8 \
bg_BG.CP1251 \
+ bg_BG.UTF-8 \
ca_ES.ISO8859-1 \
cs_CZ.ISO8859-2 \
+ cs_CZ.UTF-8 \
da_DK.ISO8859-1 \
de_AT.ISO8859-1 \
de_CH.ISO8859-1 \
@@ -19,6 +22,8 @@ LOCALES= af_ZA.ISO8859-1 \
en_AU.ISO8859-1 \
en_CA.ISO8859-1 \
en_GB.ISO8859-1 \
+ en_GB.UTF-8 \
+ en_IE.UTF-8 \
en_NZ.ISO8859-1 \
en_US.ISO8859-1 \
es_ES.ISO8859-1 \
@@ -31,16 +36,19 @@ LOCALES= af_ZA.ISO8859-1 \
hr_HR.ISO8859-2 \
hu_HU.ISO8859-2 \
hy_AM.ARMSCII-8 \
+ hy_AM.UTF-8 \
is_IS.ISO8859-1 \
it_IT.ISO8859-1 \
ja_JP.eucJP \
kk_KZ.PT154 \
+ kk_KZ.UTF-8 \
ko_KR.eucKR \
lt_LT.ISO8859-13 \
nl_BE.ISO8859-1 \
nl_NL.ISO8859-1 \
no_NO.ISO8859-1 \
pl_PL.ISO8859-2 \
+ pl_PL.UTF-8 \
pt_BR.ISO8859-1 \
pt_PT.ISO8859-1 \
ro_RO.ISO8859-2 \
@@ -48,17 +56,22 @@ LOCALES= af_ZA.ISO8859-1 \
ru_RU.CP866 \
ru_RU.ISO8859-5 \
ru_RU.KOI8-R \
+ ru_RU.UTF-8 \
sk_SK.ISO8859-2 \
sl_SI.ISO8859-2 \
sr_YU.ISO8859-2 \
sr_YU.ISO8859-5 \
+ sr_YU.UTF-8 \
sv_SE.ISO8859-1 \
tr_TR.ISO8859-9 \
uk_UA.ISO8859-5 \
uk_UA.KOI8-U \
+ uk_UA.UTF-8 \
zh_CN.eucCN \
zh_CN.GB18030 \
zh_CN.GB2312 \
+ zh_CN.UTF-8 \
+ zh_HK.UTF-8 \
zh_TW.Big5
LOCALEDIR= ${DESTDIR}/usr/share/locale
@@ -68,6 +81,15 @@ LATIN15LINKS= af_ZA ca_ES da_DK de_AT de_CH de_DE en_AU en_CA en_GB en_NZ \
en_US es_ES fi_FI fr_BE fr_CA fr_CH fr_FR is_IS is_IS it_IT \
it_CH nl_BE nl_NL no_NO pt_PT sv_SE
+UTF8_LATIN1LINKS= af_ZA ca_ES da_DK de_AT de_CH de_DE en_AU en_CA en_NZ \
+ en_US es_ES fi_FI fr_BE fr_CA fr_FR is_IS it_IT nl_BE \
+ nl_NL no_NO pt_BR pt_PT sv_SE
+UTF8_LATIN2LINKS= hr_HR hu_HU ro_RO sk_SK sl_SI sr_YU
+UTF8_LATIN7LINKS= el_GR
+UTF8_LATIN9LINKS= tr_TR
+UTF8_LATIN13LINKS= lt_LT
+UTF8_LATIN15LINKS= et_EE
+
CH_SRC= de_CH
CH_LINKS= fr_CH it_CH
@@ -101,4 +123,39 @@ afterinstall:
${LOCALEDIR}/ko_KR.CP949/LC_MONETARY
ln -sf ../zh_CN.GB2312/LC_MONETARY \
${LOCALEDIR}/zh_CN.GBK/LC_MONETARY
+.for link in ${UTF8_LATIN1LINKS}
+ ln -sf ../${link}.ISO8859-1/LC_MONETARY \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MONETARY
+.endfor
+.for link in ${UTF8_LATIN2LINKS}
+ ln -sf ../${link}.ISO8859-2/LC_MONETARY \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MONETARY
+.endfor
+.for link in ${UTF8_LATIN7LINKS}
+ ln -sf ../${link}.ISO8859-7/LC_MONETARY \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MONETARY
+.endfor
+.for link in ${UTF8_LATIN9LINKS}
+ ln -sf ../${link}.ISO8859-9/LC_MONETARY \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MONETARY
+.endfor
+.for link in ${UTF8_LATIN13LINKS}
+ ln -sf ../${link}.ISO8859-13/LC_MONETARY \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MONETARY
+.endfor
+.for link in ${UTF8_LATIN15LINKS}
+ ln -sf ../${link}.ISO8859-15/LC_MONETARY \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MONETARY
+.endfor
+.for link in ${CH_LINKS}
+ ln -sf ../${CH_SRC}.UTF-8/LC_MONETARY \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MONETARY
+.endfor
+ ln -sf ../ja_JP.eucJP/LC_MONETARY \
+ ${LOCALEDIR}/ja_JP.UTF-8/LC_MONETARY
+ ln -sf ../ko_KR.eucKR/LC_MONETARY \
+ ${LOCALEDIR}/ko_KR.UTF-8/LC_MONETARY
+ ln -sf ../zh_TW.Big5/LC_MONETARY \
+ ${LOCALEDIR}/zh_TW.UTF-8/LC_MONETARY
+
.include <bsd.prog.mk>
diff --git a/share/monetdef/be_BY.UTF-8.src b/share/monetdef/be_BY.UTF-8.src
new file mode 100644
index 0000000..a103547
--- /dev/null
+++ b/share/monetdef/be_BY.UTF-8.src
@@ -0,0 +1,35 @@
+# $FreeBSD$
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# int_curr_symbol (last character always SPACE)
+BYR
+# currency_symbol
+руб.
+# mon_decimal_point
+,
+# mon_thousands_sep
+
+# mon_grouping
+3;3
+# positive_sign
+
+# negative_sign
+-
+# int_frac_digits
+2
+# frac_digits
+2
+# p_cs_precedes
+0
+# p_sep_by_space
+1
+# n_cs_precedes
+0
+# n_sep_by_space
+1
+# p_sign_posn
+1
+# n_sign_posn
+1
+# EOF
diff --git a/share/monetdef/bg_BG.UTF-8.src b/share/monetdef/bg_BG.UTF-8.src
new file mode 100644
index 0000000..be1d688
--- /dev/null
+++ b/share/monetdef/bg_BG.UTF-8.src
@@ -0,0 +1,36 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# int_curr_symbol (last character always SPACE)
+BGN
+# currency_symbol
+лв.
+# mon_decimal_point
+,
+# mon_thousands_sep
+
+# mon_grouping
+3;3
+# positive_sign
+
+# negative_sign
+-
+# int_frac_digits
+2
+# frac_digits
+2
+# p_cs_precedes
+0
+# p_sep_by_space
+1
+# n_cs_precedes
+0
+# n_sep_by_space
+1
+# p_sign_posn
+1
+# n_sign_posn
+1
+# EOF
diff --git a/share/monetdef/cs_CZ.UTF-8.src b/share/monetdef/cs_CZ.UTF-8.src
new file mode 100644
index 0000000..cc10a62
--- /dev/null
+++ b/share/monetdef/cs_CZ.UTF-8.src
@@ -0,0 +1,36 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# int_curr_symbol (last character always SPACE)
+CZK
+# currency_symbol
+Kč
+# mon_decimal_point
+,
+# mon_thousands_sep
+
+# mon_grouping
+3;3
+# positive_sign
+
+# negative_sign
+-
+# int_frac_digits
+2
+# frac_digits
+2
+# p_cs_precedes
+0
+# p_sep_by_space
+1
+# n_cs_precedes
+0
+# n_sep_by_space
+1
+# p_sign_posn
+1
+# n_sign_posn
+1
+# EOF
diff --git a/share/monetdef/en_GB.UTF-8.src b/share/monetdef/en_GB.UTF-8.src
new file mode 100644
index 0000000..e187d8c
--- /dev/null
+++ b/share/monetdef/en_GB.UTF-8.src
@@ -0,0 +1,36 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# int_curr_symbol (last character always SPACE)
+GBP
+# currency_symbol
+# mon_decimal_point
+.
+# mon_thousands_sep
+,
+# mon_grouping, separated by ;
+3;3
+# positive_sign
+
+# negative_sign
+-
+# int_frac_digits
+2
+# frac_digits
+2
+# p_cs_precedes
+1
+# p_sep_by_space
+0
+# n_cs_precedes
+1
+# n_sep_by_space
+0
+# p_sign_posn
+1
+# n_sign_posn
+1
+# EOF
diff --git a/share/monetdef/en_IE.UTF-8.src b/share/monetdef/en_IE.UTF-8.src
new file mode 100644
index 0000000..1ddcc5c
--- /dev/null
+++ b/share/monetdef/en_IE.UTF-8.src
@@ -0,0 +1,36 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# int_curr_symbol (last character always SPACE)
+EUR
+# currency_symbol
+€
+# mon_decimal_point
+.
+# mon_thousands_sep
+,
+# mon_grouping, separated by ;
+3;3
+# positive_sign
+
+# negative_sign
+-
+# int_frac_digits
+2
+# frac_digits
+2
+# p_cs_precedes
+1
+# p_sep_by_space
+0
+# n_cs_precedes
+1
+# n_sep_by_space
+0
+# p_sign_posn
+1
+# n_sign_posn
+1
+# EOF
diff --git a/share/monetdef/hy_AM.UTF-8.src b/share/monetdef/hy_AM.UTF-8.src
new file mode 100644
index 0000000..80396b1
--- /dev/null
+++ b/share/monetdef/hy_AM.UTF-8.src
@@ -0,0 +1,39 @@
+# $FreeBSD$
+#
+# LC_MONETARY source for ARMSCII-8 locale for FreeBSD
+# Made available by Vahe Khachikyan <vahe@khachikyan.de>
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# int_curr_symbol (last character always SPACE)
+AMD
+# currency_symbol
+ԴՐ
+# mon_decimal_point
+.
+# mon_thousands_sep
+,
+# mon_grouping, separated by ;
+3;3
+# positive_sign
+
+# negative_sign
+-
+# int_frac_digits
+2
+# frac_digits
+2
+# p_cs_precedes
+0
+# p_sep_by_space
+1
+# n_cs_precedes
+0
+# n_sep_by_space
+1
+# p_sign_posn
+1
+# n_sign_posn
+1
+# EOF
diff --git a/share/monetdef/kk_KZ.UTF-8.src b/share/monetdef/kk_KZ.UTF-8.src
new file mode 100644
index 0000000..ddf0353
--- /dev/null
+++ b/share/monetdef/kk_KZ.UTF-8.src
@@ -0,0 +1,36 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# int_curr_symbol (last character always SPACE)
+KZT
+# currency_symbol
+тг.
+# mon_decimal_point
+,
+# mon_thousands_sep
+
+# mon_grouping, separated by ;
+3;3
+# positive_sign
+
+# negative_sign
+-
+# int_frac_digits
+2
+# frac_digits
+2
+# p_cs_precedes
+0
+# p_sep_by_space
+1
+# n_cs_precedes
+0
+# n_sep_by_space
+1
+# p_sign_posn
+1
+# n_sign_posn
+1
+# EOF
diff --git a/share/monetdef/pl_PL.UTF-8.src b/share/monetdef/pl_PL.UTF-8.src
new file mode 100644
index 0000000..5138186
--- /dev/null
+++ b/share/monetdef/pl_PL.UTF-8.src
@@ -0,0 +1,36 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# int_curr_symbol (last character always SPACE)
+PLN
+# currency_symbol
+zł
+# mon_decimal_point
+,
+# mon_thousands_sep
+
+# mon_grouping
+3;3
+# positive_sign
+
+# negative_sign
+-
+# int_frac_digits
+2
+# frac_digits
+2
+# p_cs_precedes
+1
+# p_sep_by_space
+2
+# n_cs_precedes
+1
+# n_sep_by_space
+2
+# p_sign_posn
+4
+# n_sign_posn
+4
+# EOF
diff --git a/share/monetdef/ru_RU.UTF-8.src b/share/monetdef/ru_RU.UTF-8.src
new file mode 100644
index 0000000..cab01da
--- /dev/null
+++ b/share/monetdef/ru_RU.UTF-8.src
@@ -0,0 +1,36 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# int_curr_symbol (last character always SPACE)
+RUR
+# currency_symbol
+руб.
+# mon_decimal_point
+,
+# mon_thousands_sep
+
+# mon_grouping, separated by ;
+3;3
+# positive_sign
+
+# negative_sign
+-
+# int_frac_digits
+2
+# frac_digits
+2
+# p_cs_precedes
+0
+# p_sep_by_space
+1
+# n_cs_precedes
+0
+# n_sep_by_space
+1
+# p_sign_posn
+1
+# n_sign_posn
+1
+# EOF
diff --git a/share/monetdef/sr_YU.UTF-8.src b/share/monetdef/sr_YU.UTF-8.src
new file mode 100644
index 0000000..6e8b013
--- /dev/null
+++ b/share/monetdef/sr_YU.UTF-8.src
@@ -0,0 +1,36 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# int_curr_symbol (last character always SPACE)
+YUD
+# currency_symbol
+дин
+# mon_decimal_point
+,
+# mon_thousands_sep
+
+# mon_grouping, separated by ;
+3;3
+# positive_sign
+
+# negative_sign
+-
+# int_frac_digits
+2
+# frac_digits
+2
+# p_cs_precedes
+0
+# p_sep_by_space
+1
+# n_cs_precedes
+0
+# n_sep_by_space
+1
+# p_sign_posn
+1
+# n_sign_posn
+1
+# EOF
diff --git a/share/monetdef/uk_UA.UTF-8.src b/share/monetdef/uk_UA.UTF-8.src
new file mode 100644
index 0000000..842c02f
--- /dev/null
+++ b/share/monetdef/uk_UA.UTF-8.src
@@ -0,0 +1,36 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# int_curr_symbol (last character always SPACE)
+UAH
+# currency_symbol
+грн.
+# mon_decimal_point
+,
+# mon_thousands_sep
+
+# mon_grouping, separated by ;
+3;3
+# positive_sign
+
+# negative_sign
+-
+# int_frac_digits
+2
+# frac_digits
+2
+# p_cs_precedes
+0
+# p_sep_by_space
+1
+# n_cs_precedes
+0
+# n_sep_by_space
+1
+# p_sign_posn
+1
+# n_sign_posn
+1
+# EOF
diff --git a/share/monetdef/zh_CN.UTF-8.src b/share/monetdef/zh_CN.UTF-8.src
new file mode 100644
index 0000000..136d66c
--- /dev/null
+++ b/share/monetdef/zh_CN.UTF-8.src
@@ -0,0 +1,36 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# int_curr_symbol (last character always SPACE)
+CNY
+# currency_symbol
+¥
+# mon_decimal_point
+.
+# mon_thousands_sep
+,
+# mon_grouping, separated by ;
+3;3
+# positive_sign
+
+# negative_sign
+-
+# int_frac_digits
+0
+# frac_digits
+0
+# p_cs_precedes
+1
+# p_sep_by_space
+0
+# n_cs_precedes
+1
+# n_sep_by_space
+0
+# p_sign_posn
+1
+# n_sign_posn
+4
+# EOF
diff --git a/share/monetdef/zh_HK.UTF-8.src b/share/monetdef/zh_HK.UTF-8.src
new file mode 100644
index 0000000..64921a9
--- /dev/null
+++ b/share/monetdef/zh_HK.UTF-8.src
@@ -0,0 +1,36 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# int_curr_symbol (last character always SPACE)
+HKD
+# currency_symbol
+HK$
+# mon_decimal_point
+.
+# mon_thousands_sep
+,
+# mon_grouping, separated by ;
+3;3
+# positive_sign
+
+# negative_sign
+-
+# int_frac_digits
+2
+# frac_digits
+2
+# p_cs_precedes
+1
+# p_sep_by_space
+0
+# n_cs_precedes
+1
+# n_sep_by_space
+0
+# p_sign_posn
+1
+# n_sign_posn
+0
+# EOF
diff --git a/share/msgdef/Makefile b/share/msgdef/Makefile
index 531ba64..6a52512 100644
--- a/share/msgdef/Makefile
+++ b/share/msgdef/Makefile
@@ -8,12 +8,15 @@ LOCALES= af_ZA.ISO8859-1 \
be_BY.CP1131 \
be_BY.CP1251 \
be_BY.ISO8859-5 \
+ be_BY.UTF-8 \
bg_BG.CP1251 \
+ bg_BG.UTF-8 \
ca_ES.ISO8859-1 \
cs_CZ.ISO8859-2 \
da_DK.ISO8859-1 \
de_DE.ISO8859-1 \
el_GR.ISO8859-7 \
+ el_GR.UTF-8 \
en_CA.ISO8859-1 \
en_GB.ISO8859-1 \
en_US.ISO8859-1 \
@@ -27,9 +30,11 @@ LOCALES= af_ZA.ISO8859-1 \
hr_HR.ISO8859-2 \
hu_HU.ISO8859-2 \
hy_AM.ARMSCII-8 \
+ hy_AM.UTF-8 \
is_IS.ISO8859-1 \
it_IT.ISO8859-1 \
kk_KZ.PT154 \
+ kk_KZ.UTF-8 \
lt_LT.ISO8859-13 \
nl_NL.ISO8859-1 \
no_NO.ISO8859-1 \
@@ -40,20 +45,26 @@ LOCALES= af_ZA.ISO8859-1 \
ru_RU.CP866 \
ru_RU.ISO8859-5 \
ru_RU.KOI8-R \
+ ru_RU.UTF-8 \
sl_SI.ISO8859-2 \
sr_YU.ISO8859-2 \
sr_YU.ISO8859-5 \
+ sr_YU.UTF-8 \
sv_SE.ISO8859-1 \
tr_TR.ISO8859-9 \
uk_UA.ISO8859-5 \
uk_UA.KOI8-U \
+ uk_UA.UTF-8 \
ko_KR.eucKR \
ja_JP.eucJP \
ja_JP.SJIS \
+ ja_JP.UTF-8 \
zh_CN.eucCN \
zh_CN.GB18030 \
zh_CN.GB2312 \
- zh_TW.Big5
+ zh_CN.UTF-8 \
+ zh_TW.Big5 \
+ zh_TW.UTF-8
LOCALEDIR= ${DESTDIR}/usr/share/locale
@@ -61,6 +72,13 @@ ASCIILINKS= en_CA en_GB en_US
LATIN15LINKS= af_ZA ca_ES da_DK de_DE en_CA en_GB en_US es_ES fi_FI fr_BE \
fr_CH fr_FR is_IS it_IT nl_NL no_NO pt_PT sv_SE
+UTF8_LATIN1LINKS= af_ZA ca_ES da_DK de_DE en_CA en_GB en_US es_ES fi_FI \
+ fr_BE fr_CH fr_FR is_IS it_IT nl_NL no_NO pt_PT sv_SE
+UTF8_LATIN2LINKS= cs_CZ hr_HR hu_HU pl_PL ro_RO sl_SI
+UTF8_LATIN9LINKS= tr_TR
+UTF8_LATIN13LINKS= lt_LT
+UTF8_LATIN15LINKS= et_EE
+
GB_LINKS= en_AU en_NZ
FR_LINKS= fr_CA
DE_LINKS= de_AT de_CH
@@ -135,5 +153,59 @@ afterinstall:
${LOCALEDIR}/ko_KR.CP949/LC_MESSAGES
ln -sf ../zh_CN.GB2312/LC_MESSAGES \
${LOCALEDIR}/zh_CN.GBK/LC_MESSAGES
+.for link in ${UTF8_LATIN1LINKS}
+ ln -sf ../${link}.ISO8859-1/LC_MESSAGES \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MESSAGES
+.endfor
+.for link in ${UTF8_LATIN2LINKS}
+ ln -sf ../${link}.ISO8859-2/LC_MESSAGES \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MESSAGES
+.endfor
+.for link in ${UTF8_LATIN9LINKS}
+ ln -sf ../${link}.ISO8859-9/LC_MESSAGES \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MESSAGES
+.endfor
+.for link in ${UTF8_LATIN13LINKS}
+ ln -sf ../${link}.ISO8859-13/LC_MESSAGES \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MESSAGES
+.endfor
+.for link in ${UTF8_LATIN15LINKS}
+ ln -sf ../${link}.ISO8859-15/LC_MESSAGES \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MESSAGES
+.endfor
+.for link in ${GB_LINKS}
+ ln -sf ../en_GB.UTF-8/LC_MESSAGES \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MESSAGES
+.endfor
+ ln -sf ../en_GB.UTF-8/LC_MESSAGES \
+ ${LOCALEDIR}/en_IE.UTF-8/LC_MESSAGES
+.for link in ${FR_LINKS}
+ ln -sf ../fr_FR.UTF-8/LC_MESSAGES \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MESSAGES
+.endfor
+.for link in ${DE_LINKS}
+ ln -sf ../de_DE.UTF-8/LC_MESSAGES \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MESSAGES
+.endfor
+.for link in ${IT_LINKS}
+ ln -sf ../it_IT.UTF-8/LC_MESSAGES \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MESSAGES
+.endfor
+.for link in ${NL_LINKS}
+ ln -sf ../nl_NL.UTF-8/LC_MESSAGES \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MESSAGES
+.endfor
+.for link in ${CZ_LINKS}
+ ln -sf ../cs_CZ.UTF-8/LC_MESSAGES \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MESSAGES
+.endfor
+.for link in ${PT_LINKS}
+ ln -sf ../pt_PT.UTF-8/LC_MESSAGES \
+ ${LOCALEDIR}/${link}.UTF-8/LC_MESSAGES
+.endfor
+ ln -sf ../ko_KR.eucKR/LC_MESSAGES \
+ ${LOCALEDIR}/ko_KR.UTF-8/LC_MESSAGES
+ ln -sf ../zh_TW.UTF-8/LC_MESSAGES \
+ ${LOCALEDIR}/zh_HK.UTF-8/LC_MESSAGES
.include <bsd.prog.mk>
diff --git a/share/msgdef/be_BY.UTF-8.src b/share/msgdef/be_BY.UTF-8.src
new file mode 100644
index 0000000..8d23237
--- /dev/null
+++ b/share/msgdef/be_BY.UTF-8.src
@@ -0,0 +1,13 @@
+# $FreeBSD$
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# yesexpr
+^[тТyY].*
+# noexpr
+^[нНnN].*
+# yesstr
+так
+# nostr
+не
+# EOF
diff --git a/share/msgdef/bg_BG.UTF-8.src b/share/msgdef/bg_BG.UTF-8.src
new file mode 100644
index 0000000..72dca12
--- /dev/null
+++ b/share/msgdef/bg_BG.UTF-8.src
@@ -0,0 +1,14 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# yesexpr
+^[дДyY].*
+# noexpr
+^[нНnN].*
+# yesstr
+да
+# nostr
+не
+# EOF
diff --git a/share/msgdef/el_GR.UTF-8.src b/share/msgdef/el_GR.UTF-8.src
new file mode 100644
index 0000000..560675e
--- /dev/null
+++ b/share/msgdef/el_GR.UTF-8.src
@@ -0,0 +1,14 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# yesexpr
+^[νΝyY].*
+# noexpr
+^[οΟnN].*
+# yesstr
+ΝΑΙ
+# nostr
+ΟΧΙ
+# EOF
diff --git a/share/msgdef/hy_AM.UTF-8.src b/share/msgdef/hy_AM.UTF-8.src
new file mode 100644
index 0000000..749637d
--- /dev/null
+++ b/share/msgdef/hy_AM.UTF-8.src
@@ -0,0 +1,17 @@
+# $FreeBSD$
+#
+# msgdef source for ARMSCII-8 locale for FreeBSD
+# Made available by Vahe Khachikyan <vahe@khachikyan.de>
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# yesexpr
+^[աԱyY].*
+# noexpr
+^[ոՈnN].*
+# yesstr
+Այո
+# nostr
+Ոչ
+# EOF
diff --git a/share/msgdef/ja_JP.UTF-8.src b/share/msgdef/ja_JP.UTF-8.src
new file mode 100644
index 0000000..476ef44
--- /dev/null
+++ b/share/msgdef/ja_JP.UTF-8.src
@@ -0,0 +1,10 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# yesexpr
+^[yYyYはハ].*
+# noexpr
+^[nNnNいイ].*
+# EOF
diff --git a/share/msgdef/kk_KZ.UTF-8.src b/share/msgdef/kk_KZ.UTF-8.src
new file mode 100644
index 0000000..23cd9cb
--- /dev/null
+++ b/share/msgdef/kk_KZ.UTF-8.src
@@ -0,0 +1,14 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# yesexpr
+^[иИyY].*
+# noexpr
+^[жЖnN].*
+# yesstr
+ия
+# nostr
+жок
+# EOF
diff --git a/share/msgdef/ru_RU.UTF-8.src b/share/msgdef/ru_RU.UTF-8.src
new file mode 100644
index 0000000..a6a2b17
--- /dev/null
+++ b/share/msgdef/ru_RU.UTF-8.src
@@ -0,0 +1,14 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# yesexpr
+^[дДyY].*
+# noexpr
+^[нНnN].*
+# yesstr
+да
+# nostr
+н╜т
+# EOF
diff --git a/share/msgdef/sr_YU.UTF-8.src b/share/msgdef/sr_YU.UTF-8.src
new file mode 100644
index 0000000..72dca12
--- /dev/null
+++ b/share/msgdef/sr_YU.UTF-8.src
@@ -0,0 +1,14 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# yesexpr
+^[дДyY].*
+# noexpr
+^[нНnN].*
+# yesstr
+да
+# nostr
+не
+# EOF
diff --git a/share/msgdef/uk_UA.UTF-8.src b/share/msgdef/uk_UA.UTF-8.src
new file mode 100644
index 0000000..cfc5a2e
--- /dev/null
+++ b/share/msgdef/uk_UA.UTF-8.src
@@ -0,0 +1,14 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# yesexpr
+^[тТyY].*
+# noexpr
+^[нНnN].*
+# yesstr
+так
+# nostr
+ні
+# EOF
diff --git a/share/msgdef/zh_CN.UTF-8.src b/share/msgdef/zh_CN.UTF-8.src
new file mode 100644
index 0000000..975134e
--- /dev/null
+++ b/share/msgdef/zh_CN.UTF-8.src
@@ -0,0 +1,14 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# yesexpr
+^[yYyY是].*
+# noexpr
+^[nNnN不否].*
+# yesstr
+是
+# nostr
+否
+# EOF
diff --git a/share/msgdef/zh_TW.UTF-8.src b/share/msgdef/zh_TW.UTF-8.src
new file mode 100644
index 0000000..975134e
--- /dev/null
+++ b/share/msgdef/zh_TW.UTF-8.src
@@ -0,0 +1,14 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# yesexpr
+^[yYyY是].*
+# noexpr
+^[nNnN不否].*
+# yesstr
+是
+# nostr
+否
+# EOF
diff --git a/share/numericdef/Makefile b/share/numericdef/Makefile
index c9635a5..df4e4a4 100644
--- a/share/numericdef/Makefile
+++ b/share/numericdef/Makefile
@@ -50,6 +50,16 @@ ASCIILINKS= en_US
LATIN15LINKS= af_ZA ca_ES da_DK de_DE en_US es_ES fi_FI fr_BE fr_FR is_IS \
it_CH it_IT nl_NL no_NO pt_PT sv_SE
+UTF8_LATIN1LINKS= af_ZA ca_ES da_DK de_DE en_US es_ES fi_FI fr_BE fr_FR \
+ is_IS it_IT nl_NL no_NO pt_BR pt_PT sv_SE
+UTF8_LATIN2LINKS= cs_CZ hr_HR hu_HU pl_PL ro_RO sk_SK sl_SI
+UTF8_LATIN5LINKS= sr_YU uk_UA
+UTF8_LATIN7LINKS= el_GR
+UTF8_LATIN9LINKS= tr_TR
+UTF8_LATIN13LINKS= lt_LT
+UTF8_LATIN15LINKS= et_EE
+UTF8_ARMSCII8LINKS= hy_AM
+
US_LINKS= en_CA en_GB
GB_LINKS= en_AU en_NZ
FR_LINKS= fr_CA fr_CH
@@ -141,5 +151,81 @@ afterinstall:
${LOCALEDIR}/ja_JP.SJIS/LC_NUMERIC
ln -sf ../ko_KR.eucKR/LC_NUMERIC \
${LOCALEDIR}/ko_KR.CP949/LC_NUMERIC
+.for link in ${UTF8_LATIN1LINKS}
+ ln -sf ../${link}.ISO8859-1/LC_NUMERIC \
+ ${LOCALEDIR}/${link}.UTF-8/LC_NUMERIC
+.endfor
+.for link in ${UTF8_LATIN2LINKS}
+ ln -sf ../${link}.ISO8859-2/LC_NUMERIC \
+ ${LOCALEDIR}/${link}.UTF-8/LC_NUMERIC
+.endfor
+.for link in ${UTF8_LATIN5LINKS}
+ ln -sf ../${link}.ISO8859-5/LC_NUMERIC \
+ ${LOCALEDIR}/${link}.UTF-8/LC_NUMERIC
+.endfor
+.for link in ${UTF8_LATIN7LINKS}
+ ln -sf ../${link}.ISO8859-7/LC_NUMERIC \
+ ${LOCALEDIR}/${link}.UTF-8/LC_NUMERIC
+.endfor
+.for link in ${UTF8_LATIN9LINKS}
+ ln -sf ../${link}.ISO8859-9/LC_NUMERIC \
+ ${LOCALEDIR}/${link}.UTF-8/LC_NUMERIC
+.endfor
+.for link in ${UTF8_LATIN13LINKS}
+ ln -sf ../${link}.ISO8859-13/LC_NUMERIC \
+ ${LOCALEDIR}/${link}.UTF-8/LC_NUMERIC
+.endfor
+.for link in ${UTF8_LATIN15LINKS}
+ ln -sf ../${link}.ISO8859-15/LC_NUMERIC \
+ ${LOCALEDIR}/${link}.UTF-8/LC_NUMERIC
+.endfor
+.for link in ${UTF8_ARMSCII8LINKS}
+ ln -sf ../${link}.ARMSCII-8/LC_NUMERIC \
+ ${LOCALEDIR}/${link}.UTF-8/LC_NUMERIC
+.endfor
+.for link in ${US_LINKS}
+ ln -sf ../en_US.UTF-8/LC_NUMERIC \
+ ${LOCALEDIR}/${link}.UTF-8/LC_NUMERIC
+.endfor
+.for link in ${GB_LINKS}
+ ln -sf ../en_GB.UTF-8/LC_NUMERIC \
+ ${LOCALEDIR}/${link}.UTF-8/LC_NUMERIC
+.endfor
+ ln -sf ../en_GB.UTF-8/LC_NUMERIC \
+ ${LOCALEDIR}/en_IE.UTF-8/LC_NUMERIC
+.for link in ${FR_LINKS}
+ ln -sf ../fr_FR.UTF-8/LC_NUMERIC \
+ ${LOCALEDIR}/${link}.UTF-8/LC_NUMERIC
+.endfor
+.for link in ${DE_LINKS}
+ ln -sf ../de_DE.UTF-8/LC_NUMERIC \
+ ${LOCALEDIR}/${link}.UTF-8/LC_NUMERIC
+.endfor
+.for link in ${IT_LINKS}
+ ln -sf ../it_IT.UTF-8/LC_NUMERIC \
+ ${LOCALEDIR}/${link}.UTF-8/LC_NUMERIC
+.endfor
+.for link in ${BE_LINKS}
+ ln -sf ../fr_BE.UTF-8/LC_NUMERIC \
+ ${LOCALEDIR}/${link}.UTF-8/LC_NUMERIC
+.endfor
+ ln -sf ../be_BY.CP1251/LC_NUMERIC \
+ ${LOCALEDIR}/be_BY.UTF-8/LC_NUMERIC
+ ln -sf ../bg_BG.CP1251/LC_NUMERIC \
+ ${LOCALEDIR}/bg_BG.UTF-8/LC_NUMERIC
+ ln -sf ../ja_JP.eucJP/LC_NUMERIC \
+ ${LOCALEDIR}/ja_JP.UTF-8/LC_NUMERIC
+ ln -sf ../kk_KZ.PT154/LC_NUMERIC \
+ ${LOCALEDIR}/kk_KZ.UTF-8/LC_NUMERIC
+ ln -sf ../ko_KR.eucKR/LC_NUMERIC \
+ ${LOCALEDIR}/ko_KR.UTF-8/LC_NUMERIC
+ ln -sf ../ru_RU.CP866/LC_NUMERIC \
+ ${LOCALEDIR}/ru_RU.UTF-8/LC_NUMERIC
+ ln -sf ../zh_CN.eucCN/LC_NUMERIC \
+ ${LOCALEDIR}/zh_CN.UTF-8/LC_NUMERIC
+ ln -sf ../zh_TW.Big5/LC_NUMERIC \
+ ${LOCALEDIR}/zh_HK.UTF-8/LC_NUMERIC
+ ln -sf ../zh_TW.Big5/LC_NUMERIC \
+ ${LOCALEDIR}/zh_TW.UTF-8/LC_NUMERIC
.include <bsd.prog.mk>
diff --git a/share/timedef/Makefile b/share/timedef/Makefile
index 0cb27f5..6ee5b48 100644
--- a/share/timedef/Makefile
+++ b/share/timedef/Makefile
@@ -7,57 +7,94 @@ LOCALES= am_ET.UTF-8 \
be_BY.CP1131 \
be_BY.CP1251 \
be_BY.ISO8859-5 \
+ be_BY.UTF-8 \
bg_BG.CP1251 \
+ bg_BG.UTF-8 \
ca_ES.ISO8859-1 \
+ ca_ES.UTF-8 \
cs_CZ.ISO8859-2 \
+ cs_CZ.UTF-8 \
da_DK.ISO8859-1 \
+ da_DK.UTF-8 \
de_AT.ISO8859-1 \
+ de_AT.UTF-8 \
de_DE.ISO8859-1 \
+ de_DE.UTF-8 \
el_GR.ISO8859-7 \
+ el_GR.UTF-8 \
en_GB.ISO8859-1 \
en_US.ISO8859-1 \
es_ES.ISO8859-1 \
+ es_ES.UTF-8 \
et_EE.ISO8859-15 \
+ et_EE.UTF-8 \
fi_FI.ISO8859-1 \
+ fi_FI.UTF-8 \
fr_FR.ISO8859-1 \
+ fr_FR.UTF-8 \
hi_IN.ISCII-DEV \
hr_HR.ISO8859-2 \
+ hr_HR.UTF-8 \
hu_HU.ISO8859-2 \
+ hu_HU.UTF-8 \
hy_AM.ARMSCII-8 \
+ hy_AM.UTF-8 \
is_IS.ISO8859-1 \
+ is_IS.UTF-8 \
ja_JP.eucJP \
ja_JP.SJIS \
+ ja_JP.UTF-8 \
it_IT.ISO8859-1 \
+ it_IT.UTF-8 \
kk_KZ.PT154 \
+ kk_KZ.UTF-8 \
ko_KR.eucKR \
+ ko_KR.UTF-8 \
la_LN.ISO8859-1 \
lt_LT.ISO8859-4 \
lt_LT.ISO8859-13 \
+ lt_LT.UTF-8 \
nl_NL.ISO8859-1 \
no_NO.ISO8859-1 \
+ no_NO.UTF-8 \
pl_PL.ISO8859-2 \
+ pl_PL.UTF-8 \
pt_BR.ISO8859-1 \
+ pt_BR.UTF-8 \
pt_PT.ISO8859-1 \
+ pt_PT.UTF-8 \
ro_RO.ISO8859-2 \
+ ro_RO.UTF-8 \
ru_RU.CP1251 \
ru_RU.CP866 \
ru_RU.ISO8859-5 \
ru_RU.KOI8-R \
+ ru_RU.UTF-8 \
sk_SK.ISO8859-2 \
+ sk_SK.UTF-8 \
sl_SI.ISO8859-2 \
+ sl_SI.UTF-8 \
sr_YU.ISO8859-2 \
sr_YU.ISO8859-5 \
+ sr_YU.UTF-8 \
sv_SE.ISO8859-1 \
+ sv_SE.UTF-8 \
tr_TR.ISO8859-9 \
+ tr_TR.UTF-8 \
uk_UA.ISO8859-5 \
uk_UA.KOI8-U \
+ uk_UA.UTF-8 \
zh_CN.eucCN \
zh_CN.GB18030 \
zh_CN.GB2312 \
- zh_TW.Big5
+ zh_CN.UTF-8 \
+ zh_TW.Big5 \
+ zh_TW.UTF-8
LOCALEDIR= ${DESTDIR}/usr/share/locale
+UTF8_LATIN1LINKS= en_GB en_US nl_NL
+
LATIN15LINKS= ca_ES da_DK de_AT de_DE en_GB en_US es_ES fi_FI fr_FR is_IS \
it_IT la_LN nl_NL no_NO pt_PT sv_SE
DE_LINKS= de_CH
@@ -140,4 +177,39 @@ afterinstall:
${LOCALEDIR}/ko_KR.CP949/LC_TIME
ln -fs ../zh_CN.GB2312/LC_TIME \
${LOCALEDIR}/zh_CN.GBK/LC_TIME
+ for l in ${UTF8_LATIN1LINKS}; do \
+ ln -fs ../$$l.ISO8859-1/LC_TIME \
+ ${LOCALEDIR}/$$l.UTF-8/LC_TIME; \
+ done
+ for l in ${DE_LINKS}; do \
+ ln -fs ../de_DE.UTF-8/LC_TIME \
+ ${LOCALEDIR}/$$l.UTF-8/LC_TIME; \
+ done
+ for l in ${IT_LINKS}; do \
+ ln -fs ../it_IT.UTF-8/LC_TIME \
+ ${LOCALEDIR}/$$l.UTF-8/LC_TIME; \
+ done
+ for l in ${FR_LINKS}; do \
+ ln -fs ../fr_FR.UTF-8/LC_TIME \
+ ${LOCALEDIR}/$$l.UTF-8/LC_TIME; \
+ done
+ for l in ${NL_LINKS}; do \
+ ln -fs ../nl_NL.UTF-8/LC_TIME \
+ ${LOCALEDIR}/$$l.UTF-8/LC_TIME; \
+ done
+ for l in ${US_LINKS}; do \
+ ln -fs ../en_US.UTF-8/LC_TIME \
+ ${LOCALEDIR}/$$l.UTF-8/LC_TIME; \
+ done
+ for l in ${GB_LINKS}; do \
+ ln -fs ../en_GB.UTF-8/LC_TIME \
+ ${LOCALEDIR}/$$l.UTF-8/LC_TIME; \
+ done
+ ln -fs ../en_GB.UTF-8/LC_TIME \
+ ${LOCALEDIR}/en_IE.UTF-8/LC_TIME
+ ln -fs ../en_US.UTF-8/LC_TIME \
+ ${LOCALEDIR}/af_ZA.UTF-8/LC_TIME
+ ln -fs ../zh_TW.UTF-8/LC_TIME \
+ ${LOCALEDIR}/zh_HK.UTF-8/LC_TIME
+
.include <bsd.prog.mk>
diff --git a/share/timedef/be_BY.UTF-8.src b/share/timedef/be_BY.UTF-8.src
new file mode 100644
index 0000000..33ec00a
--- /dev/null
+++ b/share/timedef/be_BY.UTF-8.src
@@ -0,0 +1,100 @@
+# $FreeBSD$
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+сту
+лют
+сак
+кра
+тра
+чэр
+ліп
+жні
+вер
+кас
+ліс
+сне
+#
+# Long months names
+#
+студзеня
+лютага
+сакавіка
+красавіка
+траўня
+чэрвеня
+ліпеня
+жніўня
+верасня
+кастрычніка
+лістапада
+снежня
+#
+# Short weekdays names
+# (padded with a space to conform with other languages)
+нд
+пн
+аў
+ср
+чц
+пт
+сб
+#
+# Long weekdays names
+#
+нядзеля
+панядзелак
+аўторак
+серада
+чацвер
+пятніца
+субота
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+am
+#
+# pm
+#
+pm
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long months names (alternative)
+#
+студзень
+люты
+сакавік
+красавік
+травень
+чэрвень
+ліпень
+жнівень
+верасень
+кастрычнік
+лістапад
+снежань
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/bg_BG.UTF-8.src b/share/timedef/bg_BG.UTF-8.src
new file mode 100644
index 0000000..ded9240
--- /dev/null
+++ b/share/timedef/bg_BG.UTF-8.src
@@ -0,0 +1,101 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+Яну
+Фев
+Мар
+Апр
+Май
+Юни
+Юли
+Авг
+Сеп
+Окт
+Нов
+Дек
+#
+# Long months names
+#
+Януари
+Февруари
+Март
+Април
+Май
+Юни
+Юли
+Август
+Септември
+Октомври
+Ноември
+Декември
+#
+# Short weekdays names
+# (padded with a space to conform with other languages)
+Нд
+Пн
+Вт
+Ср
+Чт
+Пт
+Сб
+#
+# Long weekdays names
+#
+Неделя
+Понеделник
+Вторник
+Сряда
+Четвъртък
+Петък
+Събота
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+am
+#
+# pm
+#
+pm
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long months names (alternative)
+#
+Януари
+Февруари
+Март
+Април
+Май
+Юни
+Юли
+Август
+Септември
+Октомври
+Ноември
+Декември
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/ca_ES.UTF-8.src b/share/timedef/ca_ES.UTF-8.src
new file mode 100644
index 0000000..2a3f85b
--- /dev/null
+++ b/share/timedef/ca_ES.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+gen
+feb
+mar
+abr
+mai
+jun
+jul
+ago
+set
+oct
+nov
+des
+#
+# Long months names
+#
+gener
+febrer
+març
+abril
+maig
+juny
+juliol
+agost
+setembre
+octubre
+novembre
+desembre
+#
+# Short weekdays names
+#
+diu
+dil
+dim
+dmc
+dij
+div
+dis
+#
+# Long weekdays names
+#
+diumenge
+dilluns
+dimarts
+dimecres
+dijous
+divendres
+dissabte
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d/%m/%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+AM
+#
+# pm
+#
+PM
+#
+# date_fmt
+#
+%A, %e de %B de %Y, %X %Z
+#
+# Long months names (alternative)
+#
+gener
+febrer
+març
+abril
+maig
+juny
+juliol
+agost
+setembre
+octubre
+novembre
+desembre
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/cs_CZ.UTF-8.src b/share/timedef/cs_CZ.UTF-8.src
new file mode 100644
index 0000000..a34501a5
--- /dev/null
+++ b/share/timedef/cs_CZ.UTF-8.src
@@ -0,0 +1,105 @@
+# Czech month and day names
+# by Rudolf Cejka <cejkar@dcse.fee.vutbr.cz>
+#
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+led
+úno
+bře
+dub
+kvě
+črv
+čvc
+srp
+zář
+říj
+lis
+pro
+#
+# Long months names
+#
+ledna
+února
+března
+dubna
+května
+června
+července
+srpna
+září
+října
+listopadu
+prosince
+#
+# Short weekdays names
+#
+ne
+po
+út
+st
+čt
+pá
+so
+#
+# Long weekdays names
+#
+neděle
+pondělí
+úterý
+středa
+čtvrtek
+pátek
+sobota
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%Y/%m/%d
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+dp
+#
+# pm
+#
+od
+#
+# date_fmt
+#
+%a %e. %B %Y %X %Z
+#
+# Long month names in alternative form
+#
+leden
+únor
+březen
+duben
+květen
+červen
+červenec
+srpen
+září
+říjen
+listopad
+prosinec
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/da_DK.UTF-8.src b/share/timedef/da_DK.UTF-8.src
new file mode 100644
index 0000000..5776822
--- /dev/null
+++ b/share/timedef/da_DK.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+Jan
+Feb
+Mar
+Apr
+Maj
+Jun
+Jul
+Aug
+Sep
+Okt
+Nov
+Dec
+#
+# Long months names
+#
+Januar
+Februar
+Marts
+April
+Maj
+Juni
+Juli
+August
+September
+Oktober
+November
+December
+#
+# Short weekdays names
+#
+Søn
+Man
+Tir
+Ons
+Tor
+Fre
+Lør
+#
+# Long weekdays names
+#
+Søndag
+Mandag
+Tirsdag
+Onsdag
+Torsdag
+Fredag
+Lørdag
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+am
+#
+# pm
+#
+pm
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long months names (alternative)
+#
+Januar
+Februar
+Marts
+April
+Maj
+Juni
+Juli
+August
+September
+Oktober
+November
+December
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/de_AT.UTF-8.src b/share/timedef/de_AT.UTF-8.src
new file mode 100644
index 0000000..4b78c04
--- /dev/null
+++ b/share/timedef/de_AT.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+Jan
+Feb
+Mär
+Apr
+Mai
+Jun
+Jul
+Aug
+Sep
+Okt
+Nov
+Dez
+#
+# Long months names
+#
+Jänner
+Februar
+März
+April
+Mai
+Juni
+Juli
+August
+September
+Oktober
+November
+Dezember
+#
+# Short weekdays names
+#
+So
+Mo
+Di
+Mi
+Do
+Fr
+Sa
+#
+# Long weekdays names
+#
+Sonntag
+Montag
+Dienstag
+Mittwoch
+Donnerstag
+Freitag
+Samstag
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+am
+#
+# pm
+#
+pm
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long months names (alternative)
+#
+Jänner
+Februar
+März
+April
+Mai
+Juni
+Juli
+August
+September
+Oktober
+November
+Dezember
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/de_DE.UTF-8.src b/share/timedef/de_DE.UTF-8.src
new file mode 100644
index 0000000..535d8dd
--- /dev/null
+++ b/share/timedef/de_DE.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+Jan
+Feb
+Mär
+Apr
+Mai
+Jun
+Jul
+Aug
+Sep
+Okt
+Nov
+Dez
+#
+# Long months names
+#
+Januar
+Februar
+März
+April
+Mai
+Juni
+Juli
+August
+September
+Oktober
+November
+Dezember
+#
+# Short weekdays names
+#
+So
+Mo
+Di
+Mi
+Do
+Fr
+Sa
+#
+# Long weekdays names
+#
+Sonntag
+Montag
+Dienstag
+Mittwoch
+Donnerstag
+Freitag
+Samstag
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+am
+#
+# pm
+#
+pm
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long months names (alternative)
+#
+Januar
+Februar
+März
+April
+Mai
+Juni
+Juli
+August
+September
+Oktober
+November
+Dezember
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/el_GR.UTF-8.src b/share/timedef/el_GR.UTF-8.src
new file mode 100644
index 0000000..3125320
--- /dev/null
+++ b/share/timedef/el_GR.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short month names
+#
+Ιαν
+Φεβ
+Μαρ
+Απρ
+Μαϊ
+Ιον
+Ιολ
+Αυγ
+Σεπ
+Οκτ
+Νοε
+Δεκ
+#
+# Long month names
+#
+Ιανουαρίου
+Φεβρουαρίου
+Μαρτίου
+Απριλίου
+Μαΐου
+Ιουνίου
+Ιουλίου
+Αυγούστου
+Σεπτεμβρίου
+Οκτωβρίου
+Νοεμβρίου
+Δεκεμβρίου
+#
+# Short weekday names
+#
+Κυρ
+Δευ
+Τρι
+Τετ
+Πεμ
+Παρ
+Σαβ
+#
+# Long weekday names
+#
+Κυριακή
+Δευτέρα
+Τρίτη
+Τετάρτη
+Πέμπτη
+Παρασκευή
+Σάββατο
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d/%m/%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+πμ
+#
+# pm
+#
+μμ
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long months names (alternative)
+#
+Ιανουάριος
+Φεβρουάριος
+Μάρτιος
+Απρίλιος
+Μάϊος
+Ιούνιος
+Ιούλιος
+Αύγουστος
+Σεπτέμβριος
+Οκτώβριος
+Νοέμβριος
+Δεκέμβριος
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/es_ES.UTF-8.src b/share/timedef/es_ES.UTF-8.src
new file mode 100644
index 0000000..fb7d7f7
--- /dev/null
+++ b/share/timedef/es_ES.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+ene
+feb
+mar
+abr
+may
+jun
+jul
+ago
+sep
+oct
+nov
+dic
+#
+# Long months names
+#
+enero
+febrero
+marzo
+abril
+mayo
+junio
+julio
+agosto
+septiembre
+octubre
+noviembre
+diciembre
+#
+# Short weekdays names
+#
+dom
+lun
+mar
+mié
+jue
+vie
+sáb
+#
+# Long weekdays names
+#
+domingo
+lunes
+martes
+miércoles
+jueves
+viernes
+sábado
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d/%m/%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+AM
+#
+# pm
+#
+PM
+#
+# date_fmt
+#
+%A, %e de %B de %Y, %X %Z
+#
+# Long months names (alternative)
+#
+enero
+febrero
+marzo
+abril
+mayo
+junio
+julio
+agosto
+septiembre
+octubre
+noviembre
+diciembre
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/et_EE.UTF-8.src b/share/timedef/et_EE.UTF-8.src
new file mode 100644
index 0000000..d0a97e6
--- /dev/null
+++ b/share/timedef/et_EE.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short month names
+#
+jaan
+veebr
+märts
+apr
+mai
+juuni
+juuli
+aug
+sept
+okt
+nov
+dets
+#
+# Long month names
+#
+jaanuar
+veebruar
+märts
+aprill
+mai
+juuni
+juuli
+august
+september
+oktoober
+november
+detsember
+#
+# Short weekday names
+#
+P
+E
+T
+K
+N
+R
+L
+#
+# Long weekday names
+#
+pühapäev
+esmaspäev
+teisipäev
+kolmapäev
+neljapäev
+reede
+laupäev
+#
+# t_fmt
+#
+%H:%M:%S
+#
+# d_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a, %d. %b %Y. %T
+#
+# am
+#
+
+#
+# pm
+#
+
+#
+# d_t_fmt
+#
+%A, %d. %B %Y. %T %Z
+#
+# Long months names (alternative)
+#
+jaanuar
+veebruar
+märts
+aprill
+mai
+juuni
+juuli
+august
+september
+oktoober
+november
+detsember
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+
+# EOF
diff --git a/share/timedef/fi_FI.UTF-8.src b/share/timedef/fi_FI.UTF-8.src
new file mode 100644
index 0000000..bd16a09
--- /dev/null
+++ b/share/timedef/fi_FI.UTF-8.src
@@ -0,0 +1,101 @@
+# $FreeBSD$
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short month names
+#
+Tam
+Hel
+Maa
+Huh
+Tou
+Kes
+Hei
+Elo
+Syy
+Lok
+Mar
+Jou
+#
+# Long month names
+#
+Tammikuu
+Helmikuu
+Maaliskuu
+Huhtikuu
+Toukokuu
+Kesäkuu
+Heinäkuu
+Elokuu
+Syyskuu
+Lokakuu
+Marraskuu
+Joulukuu
+#
+# Short weekday names
+#
+Su
+Ma
+Ti
+Ke
+To
+Pe
+La
+#
+# Long weekday names
+#
+Sunnuntai
+Maanantai
+Tiistai
+Keskiviikko
+Torstai
+Perjantai
+Lauantai
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+am
+#
+# pm
+#
+pm
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long months names (alternative)
+#
+Tammikuu
+Helmikuu
+Maaliskuu
+Huhtikuu
+Toukokuu
+Kesäkuu
+Heinäkuu
+Elokuu
+Syyskuu
+Lokakuu
+Marraskuu
+Joulukuu
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/fr_FR.UTF-8.src b/share/timedef/fr_FR.UTF-8.src
new file mode 100644
index 0000000..4a98ab4
--- /dev/null
+++ b/share/timedef/fr_FR.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+jan
+fév
+mar
+avr
+mai
+jui
+jul
+aoû
+sep
+oct
+nov
+déc
+#
+# Long months names
+#
+janvier
+février
+mars
+avril
+mai
+juin
+juillet
+août
+septembre
+octobre
+novembre
+décembre
+#
+# Short weekdays names
+#
+Dim
+Lun
+Mar
+Mer
+Jeu
+Ven
+Sam
+#
+# Long weekdays names
+#
+Dimanche
+Lundi
+Mardi
+Mercredi
+Jeudi
+Vendredi
+Samedi
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+
+#
+# pm
+#
+
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long months names (alternative)
+#
+janvier
+février
+mars
+avril
+mai
+juin
+juillet
+août
+septembre
+octobre
+novembre
+décembre
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+
+# EOF
diff --git a/share/timedef/hr_HR.UTF-8.src b/share/timedef/hr_HR.UTF-8.src
new file mode 100644
index 0000000..1d952a7
--- /dev/null
+++ b/share/timedef/hr_HR.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+Sij
+Vel
+Ožu
+Tra
+Svi
+Lip
+Srp
+Kol
+Ruj
+Lis
+Stu
+Pro
+#
+# Long months names
+#
+Siječanj
+Veljača
+Ožujak
+Travanj
+Svibanj
+Lipanj
+Srpanj
+Kolovoz
+Rujan
+Listopad
+Studeni
+Prosinac
+#
+# Short weekdays names
+#
+Ne
+Po
+Ut
+Sr
+Če
+Pe
+Su
+#
+# Long weekdays names
+#
+Nedjelja
+Ponedjeljak
+Utorak
+Srijeda
+Četvrtak
+Petak
+Subota
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+am
+#
+# pm
+#
+pm
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long months names (alternative)
+#
+Siječanj
+Veljača
+Ožujak
+Travanj
+Svibanj
+Lipanj
+Srpanj
+Kolovoz
+Rujan
+Listopad
+Studeni
+Prosinac
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/hu_HU.UTF-8.src b/share/timedef/hu_HU.UTF-8.src
new file mode 100644
index 0000000..62d891c
--- /dev/null
+++ b/share/timedef/hu_HU.UTF-8.src
@@ -0,0 +1,101 @@
+# This is a Hungarian LC_TIME file for ISO 8859-2 code-table
+# Made by Gabor Zahemszky <zgabor@CoDe.hu>
+# $FreeBSD$
+#
+# Short month names
+#
+Jan
+Feb
+Már
+Ápr
+Máj
+Jún
+Júl
+Aug
+Sze
+Okt
+Nov
+Dec
+#
+# Long month names
+#
+Január
+Február
+Március
+Április
+Május
+Június
+Július
+Augusztus
+Szeptember
+Október
+November
+December
+#
+# Short weekday names
+#
+Vas
+Hét
+Ked
+Sze
+Csü
+Pén
+Szo
+#
+# Long weekday names
+#
+Vasárnap
+Hétfő
+Kedd
+Szerda
+Csütörtök
+Péntek
+Szombat
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%Y/%m/%d
+#
+# c_fmt
+#
+%a %b %e %X %Y
+#
+# am
+#
+de
+#
+# pm
+#
+du
+#
+# date_fmt
+#
+%Y %b %e %a %X %Z
+#
+# Long months names (alternative)
+#
+Január
+Február
+Március
+Április
+Május
+Június
+Július
+Augusztus
+Szeptember
+Október
+November
+December
+#
+# md_order
+#
+md
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/hy_AM.UTF-8.src b/share/timedef/hy_AM.UTF-8.src
new file mode 100644
index 0000000..b8ec946
--- /dev/null
+++ b/share/timedef/hy_AM.UTF-8.src
@@ -0,0 +1,105 @@
+# $FreeBSD$
+#
+# LC_TIME source for ARMSCII-8 locale for FreeBSD
+# Made available by Vahe Khachikyan <vahe@khachikyan.de>
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+Հնվ
+Փտր
+Մրտ
+Ապր
+Մյս
+Հնս
+Հլս
+Օգս
+Սպտ
+Հկտ
+Նյմ
+Դկտ
+#
+# Long months names
+#
+Հունվար
+Փետրվար
+Մարտ
+Ապրիլ
+Մայիս
+Հունիս
+Հուլիս
+Օգոստոս
+Սեպտեմբեր
+Հոկտեմբեր
+Նոյեմբեր
+Դեկտեմբեր
+#
+# Short weekdays names
+#
+Կրկ
+Երկ
+Երք
+Չրք
+Հնգ
+Ուր
+Շբթ
+#
+# Long weekdays names
+#
+Կիրակի
+Երկուշաբթի
+Երեքշաբթի
+Չորեքշաբթի
+Հինգշաբթի
+Ուրբաթ
+Շաբաթ
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%A, %e %B %Y ի. %X
+#
+# am
+#
+
+#
+# pm
+#
+
+#
+# date_fmt
+#
+%A, %e %B %Y թ. %X (%Z)
+#
+# Long month names in alternative form
+#
+Հունվար
+Փետրվար
+Մարտ
+Ապրիլ
+Մայիս
+Հունիս
+Հուլիս
+Օգոստոս
+Սեպտեմբեր
+Հոկտեմբեր
+Նոյեմբեր
+Դեկտեմբեր
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+
+# EOF
diff --git a/share/timedef/is_IS.UTF-8.src b/share/timedef/is_IS.UTF-8.src
new file mode 100644
index 0000000..be04488
--- /dev/null
+++ b/share/timedef/is_IS.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short month names
+#
+jan
+feb
+mar
+apr
+maí
+jún
+júl
+ágú
+sep
+okt
+nóv
+des
+#
+# Long month names
+#
+janúar
+febrúar
+mars
+apríl
+maí
+júní
+júlí
+ágúst
+september
+október
+nóvember
+desember
+#
+# Short weekday names
+#
+sun
+mán
+þri
+mið
+fim
+fös
+lau
+#
+# Long weekday names
+#
+sunnudagur
+mánudagur
+þriðjudagur
+miðvikudagur
+fimmtudagur
+föstudagur
+laugardagur
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+fh
+#
+# pm
+#
+eh
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long months names (alternative)
+#
+janúar
+febrúar
+mars
+apríl
+maí
+júní
+júlí
+ágúst
+september
+október
+nóvember
+desember
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/it_IT.UTF-8.src b/share/timedef/it_IT.UTF-8.src
new file mode 100644
index 0000000..3ffe030
--- /dev/null
+++ b/share/timedef/it_IT.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short month names
+#
+Gen
+Feb
+Mar
+Apr
+Mag
+Giu
+Lug
+Ago
+Set
+Ott
+Nov
+Dic
+#
+# Long month names
+#
+Gennaio
+Febbraio
+Marzo
+Aprile
+Maggio
+Giugno
+Luglio
+Agosto
+Settembre
+Ottobre
+Novembre
+Dicembre
+#
+# Short weekday names
+#
+Dom
+Lun
+Mar
+Mer
+Gio
+Ven
+Sab
+#
+# Long weekday names
+#
+Domenica
+Lunedì
+Martedì
+Mercoledì
+Giovedì
+Venerdì
+Sabato
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+am
+#
+# pm
+#
+pm
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long months names (alternative)
+#
+Gennaio
+Febbraio
+Marzo
+Aprile
+Maggio
+Giugno
+Luglio
+Agosto
+Settembre
+Ottobre
+Novembre
+Dicembre
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/ja_JP.UTF-8.src b/share/timedef/ja_JP.UTF-8.src
new file mode 100644
index 0000000..b3431da
--- /dev/null
+++ b/share/timedef/ja_JP.UTF-8.src
@@ -0,0 +1,105 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short month names
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+#
+# Long month names
+#
+1月
+2月
+3月
+4月
+5月
+6月
+7月
+8月
+9月
+10月
+11月
+12月
+#
+# Short weekday names
+#
+日
+月
+火
+水
+木
+金
+土
+#
+# Long weekday names
+#
+日曜日
+月曜日
+火曜日
+水曜日
+木曜日
+金曜日
+土曜日
+#
+# X_fmt
+#
+%H時%M分%S秒
+#
+# x_fmt
+#
+%Y/%m/%d
+#
+# c_fmt
+#
+# just following tradition...
+# %a %b %e %H:%M:%S %Y
+%a %b/%e %T %Y
+#
+# am
+#
+#午前
+AM
+#
+# pm
+#
+#午後
+PM
+#
+# date_fmt
+#
+%Y年 %B%e日 %A %X %Z
+#
+# Long months names (alternative)
+#
+1月
+2月
+3月
+4月
+5月
+6月
+7月
+8月
+9月
+10月
+11月
+12月
+#
+# md_order
+#
+md
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/kk_KZ.UTF-8.src b/share/timedef/kk_KZ.UTF-8.src
new file mode 100644
index 0000000..5c1f59f
--- /dev/null
+++ b/share/timedef/kk_KZ.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+қаң
+ақп
+нау
+сәу
+мам
+мау
+шіл
+там
+қыр
+қаз
+қар
+жел
+#
+# Long months names
+#
+қаңтар
+ақпан
+наурыз
+сәуір
+мамыр
+маусым
+шілде
+тамыз
+қыркүйек
+қазан
+қараша
+желтоқсан
+#
+# Short weekdays names
+#
+жк
+дс
+сс
+ср
+бс
+жм
+сн
+#
+# Long weekdays names
+#
+жексенбі
+дүйсенбі
+сейсенбі
+сәрсенбі
+бейсенбі
+жұма
+сенбі
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%A, %e %B %Y ж. %X
+#
+# am
+#
+
+#
+# pm
+#
+
+#
+# date_fmt
+#
+%A, %e %B %Y ж. %X (%Z)
+#
+# Long month names in alternative form
+#
+қантар
+ақпан
+наурыз
+сәуір
+мамыр
+маусым
+шілде
+тамыз
+қыркүйек
+қазан
+қараша
+желтоқсан
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+
+# EOF
diff --git a/share/timedef/ko_KR.UTF-8.src b/share/timedef/ko_KR.UTF-8.src
new file mode 100644
index 0000000..e7bf058
--- /dev/null
+++ b/share/timedef/ko_KR.UTF-8.src
@@ -0,0 +1,108 @@
+# $FreeBSD$
+#
+# Originally by CHOI Junho <cjh@FreeBSD.org>
+# 27 Mar 1997
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short month names
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+#
+# Long month names
+#
+1월
+2월
+3월
+4월
+5월
+6월
+7월
+8월
+9월
+10월
+11월
+12월
+#
+# Short weekday names
+#
+일
+월
+화
+수
+목
+금
+토
+#
+# Long weekday names
+#
+일요일
+월요일
+화요일
+수요일
+목요일
+금요일
+토요일
+#
+# X_fmt
+#
+%H시 %M분 %S초
+#
+# x_fmt
+#
+%Y/%m/%d
+#
+# c_fmt
+#
+# just following tradition...
+# %Y년 %b월 %e일 %a요일 %X
+%a %b/%e %H:%M:%S %Y
+#
+# am
+#
+#오전
+AM
+#
+# pm
+#
+#오후
+PM
+#
+# date_fmt
+#
+%Y년 %B %e일 %A %X %Z
+#
+# Long months names (alternative)
+#
+1월
+2월
+3월
+4월
+5월
+6월
+7월
+8월
+9월
+10월
+11월
+12월
+#
+# md_order
+#
+md
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/lt_LT.UTF-8.src b/share/timedef/lt_LT.UTF-8.src
new file mode 100644
index 0000000..cc332de
--- /dev/null
+++ b/share/timedef/lt_LT.UTF-8.src
@@ -0,0 +1,101 @@
+# $FreeBSD$
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short month names
+#
+Sau
+Vas
+Kov
+Bal
+Geg
+Bir
+Lie
+Rgp
+Rgs
+Spa
+Lap
+Grd
+#
+# Long month names
+#
+sausio
+vasario
+kovo
+balandžio
+gegužės
+birželio
+liepos
+rugpjūčio
+rugsėjo
+spalio
+lapkričio
+gruodžio
+#
+# Short weekday names
+#
+Sk
+Pr
+An
+Tr
+Kt
+Pn
+Št
+#
+# Long weekday names
+#
+Sekmadienis
+Pirmadienis
+Antradienis
+Trečiadienis
+Ketvirtadienis
+Penktadienis
+Šeštadienis
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%Y.%m.%d
+#
+# c_fmt
+# %A, %Y m. %B %e d. %T
+%a %b %e %X %Y
+#
+# am
+#
+
+#
+# pm
+#
+
+#
+# date_fmt
+#
+%A, %Y m. %B %e d. %T %Z
+#
+# Long month names in alternative form
+#
+sausis
+vasaris
+kovas
+balandis
+gegužė
+birželis
+liepa
+rugpjūtis
+rugsėjis
+spalis
+lapkritis
+gruodis
+#
+# md_order
+#
+md
+#
+# ampm_fmt
+#
+
+# EOF
diff --git a/share/timedef/no_NO.UTF-8.src b/share/timedef/no_NO.UTF-8.src
new file mode 100644
index 0000000..f352023
--- /dev/null
+++ b/share/timedef/no_NO.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+jan
+feb
+mar
+apr
+mai
+jun
+jul
+aug
+sep
+okt
+nov
+des
+#
+# Long months names
+#
+januar
+februar
+mars
+april
+mai
+juni
+juli
+august
+september
+oktober
+november
+desember
+#
+# Short weekdays names
+#
+søn
+man
+tir
+ons
+tor
+fre
+lør
+#
+# Long weekdays names
+#
+søndag
+mandag
+tirsdag
+onsdag
+torsdag
+fredag
+lørdag
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+am
+#
+# pm
+#
+pm
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long months names (alternative)
+#
+januar
+februar
+mars
+april
+mai
+juni
+juli
+august
+september
+oktober
+november
+desember
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/pl_PL.UTF-8.src b/share/timedef/pl_PL.UTF-8.src
new file mode 100644
index 0000000..76d25d4
--- /dev/null
+++ b/share/timedef/pl_PL.UTF-8.src
@@ -0,0 +1,99 @@
+# $FreeBSD$
+#
+# Short month names
+#
+Sty
+Lut
+Mar
+Kwi
+Maj
+Cze
+Lip
+Sie
+Wrz
+Paz
+Lis
+Gru
+#
+# Long month names
+#
+Styczeń
+Luty
+Marzec
+Kwiecień
+Maj
+Czerwiec
+Lipiec
+Sierpień
+Wrzesień
+Październik
+Listopad
+Grudzień
+#
+# Short weekday names
+#
+Ndz
+Pon
+Wto
+Śro
+Czw
+Pią
+Sob
+#
+# Long weekday names
+#
+Niedziela
+Poniedziałek
+Wtorek
+Środa
+Czwartek
+Piątek
+Sobota
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%Y.%m.%d
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+
+#
+# pm
+#
+
+#
+# date_fmt
+#
+%a %e %b %X %Y %Z
+#
+# Long months names (alternative)
+#
+Styczeń
+Luty
+Marzec
+Kwiecień
+Maj
+Czerwiec
+Lipiec
+Sierpień
+Wrzesień
+Październik
+Listopad
+Grudzień
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+
+# EOF
diff --git a/share/timedef/pt_BR.UTF-8.src b/share/timedef/pt_BR.UTF-8.src
new file mode 100644
index 0000000..66c49a3
--- /dev/null
+++ b/share/timedef/pt_BR.UTF-8.src
@@ -0,0 +1,103 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+# In Portugal we don't use the 12 + am/pm but the 24h format
+#
+# Short months names
+#
+Jan
+Fev
+Mar
+Abr
+Mai
+Jun
+Jul
+Ago
+Set
+Out
+Nov
+Dez
+#
+# Long months names
+#
+Janeiro
+Fevereiro
+Março
+Abril
+Maio
+Junho
+Julho
+Agosto
+Setembro
+Outubro
+Novembro
+Dezembro
+#
+# Short weekdays names
+#
+Dom
+Seg
+Ter
+Qua
+Qui
+Sex
+Sáb
+#
+# Long weekdays names
+#
+Domingo
+Segunda Feira
+Terça Feira
+Quarta Feira
+Quinta Feira
+Sexta Feira
+Sábado
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d/%m/%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+
+#
+# pm
+#
+
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long months names (alternative)
+#
+Janeiro
+Fevereiro
+Março
+Abril
+Maio
+Junho
+Julho
+Agosto
+Setembro
+Outubro
+Novembro
+Dezembro
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+
+# EOF
diff --git a/share/timedef/pt_PT.UTF-8.src b/share/timedef/pt_PT.UTF-8.src
new file mode 100644
index 0000000..b24d9cb
--- /dev/null
+++ b/share/timedef/pt_PT.UTF-8.src
@@ -0,0 +1,103 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+# In Portugal we don't use the 12 + am/pm but the 24h format
+#
+# Short months names
+#
+Jan
+Fev
+Mar
+Abr
+Mai
+Jun
+Jul
+Ago
+Set
+Out
+Nov
+Dez
+#
+# Long months names
+#
+Janeiro
+Fevereiro
+Março
+Abril
+Maio
+Junho
+Julho
+Agosto
+Setembro
+Outubro
+Novembro
+Dezembro
+#
+# Short weekdays names
+#
+Dom
+Seg
+Ter
+Qua
+Qui
+Sex
+Sáb
+#
+# Long weekdays names
+#
+Domingo
+Segunda Feira
+Terça Feira
+Quarta Feira
+Quinta Feira
+Sexta Feira
+Sábado
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+
+#
+# pm
+#
+
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long months names (alternative)
+#
+Janeiro
+Fevereiro
+Março
+Abril
+Maio
+Junho
+Julho
+Agosto
+Setembro
+Outubro
+Novembro
+Dezembro
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+
+# EOF
diff --git a/share/timedef/ro_RO.UTF-8.src b/share/timedef/ro_RO.UTF-8.src
new file mode 100644
index 0000000..5f7db7a
--- /dev/null
+++ b/share/timedef/ro_RO.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short month names
+#
+Ian
+Feb
+Mar
+Apr
+Mai
+Iun
+Iul
+Aug
+Sep
+Oct
+Noi
+Dec
+#
+# Long month names
+#
+Ianuarie
+Februarie
+Martie
+Aprilie
+Mai
+Iunie
+Iulie
+August
+Septembrie
+Octombrie
+Noiembrie
+Decembrie
+#
+# Short weekday names
+#
+Dum
+Lun
+Mar
+Mie
+Joi
+Vin
+Sâm
+#
+# Long weekday names
+#
+Duminică
+Luni
+Marţi
+Miercuri
+Joi
+Vineri
+Sâmbătă
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a %e %b %Y %X
+#
+# am
+#
+am
+#
+# pm
+#
+pm
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long months names (alternative)
+#
+Ianuarie
+Februarie
+Martie
+Aprilie
+Mai
+Iunie
+Iulie
+August
+Septembrie
+Octombrie
+Noiembrie
+Decembrie
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/ru_RU.UTF-8.src b/share/timedef/ru_RU.UTF-8.src
new file mode 100644
index 0000000..4660c22
--- /dev/null
+++ b/share/timedef/ru_RU.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+янв
+фев
+мар
+апр
+май
+июн
+июл
+авг
+сен
+окт
+ноя
+дек
+#
+# Long months names
+#
+января
+февраля
+марта
+апреля
+мая
+июня
+июля
+августа
+сентября
+октября
+ноября
+декабря
+#
+# Short weekdays names
+#
+вс
+пн
+вт
+ср
+чт
+пт
+сб
+#
+# Long weekdays names
+#
+воскресенье
+понедельник
+вторник
+среда
+четверг
+пятница
+суббота
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%A, %e %B %Y г. %X
+#
+# am
+#
+
+#
+# pm
+#
+
+#
+# date_fmt
+#
+%A, %e %B %Y г. %X (%Z)
+#
+# Long month names in alternative form
+#
+январь
+февраль
+март
+апрель
+май
+июнь
+июль
+август
+сентябрь
+октябрь
+ноябрь
+декабрь
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+
+# EOF
diff --git a/share/timedef/sk_SK.UTF-8.src b/share/timedef/sk_SK.UTF-8.src
new file mode 100644
index 0000000..652b3b2
--- /dev/null
+++ b/share/timedef/sk_SK.UTF-8.src
@@ -0,0 +1,105 @@
+# Slovak month and day names
+# by Juraj Bednar <juraj@bednar.sk>
+#
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+jan
+feb
+mar
+apr
+máj
+jún
+júl
+aug
+sep
+okt
+nov
+dec
+#
+# Long months names
+#
+január
+február
+marec
+apríl
+máj
+jún
+júl
+august
+september
+október
+november
+december
+#
+# Short weekdays names
+#
+ne
+po
+ut
+st
+št
+pi
+so
+#
+# Long weekdays names
+#
+nedeľa
+pondelok
+utorok
+streda
+štvrtok
+piatok
+sobota
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+
+#
+# pm
+#
+
+#
+# date_fmt
+#
+%a %e. %B %Y %X %Z
+#
+# Long month names in alternative form
+#
+január
+február
+marec
+apríl
+máj
+jún
+júl
+august
+september
+október
+november
+december
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+
+# EOF
diff --git a/share/timedef/sl_SI.UTF-8.src b/share/timedef/sl_SI.UTF-8.src
new file mode 100644
index 0000000..d152bf0
--- /dev/null
+++ b/share/timedef/sl_SI.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+Jan
+Feb
+Mar
+Apr
+Maj
+Jun
+Jul
+Avg
+Sep
+Okt
+Nov
+Dec
+#
+# Long months names
+#
+Januar
+Februar
+Marec
+April
+Maj
+Junij
+Julij
+Avgust
+September
+Oktober
+November
+December
+#
+# Short weekdays names
+#
+Ned
+Pon
+Tor
+Sre
+Čet
+Pet
+Sob
+#
+# Long weekdays names
+#
+Nedelja
+Ponedeljek
+Torek
+Sreda
+Četrtek
+Petek
+Sobota
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+am
+#
+# pm
+#
+pm
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long months names (alternative)
+#
+Januar
+Februar
+Marec
+April
+Maj
+Junij
+Julij
+Avgust
+September
+Oktober
+November
+December
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/sr_YU.UTF-8.src b/share/timedef/sr_YU.UTF-8.src
new file mode 100644
index 0000000..845b372
--- /dev/null
+++ b/share/timedef/sr_YU.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+јан
+феб
+мар
+апр
+мај
+јун
+јул
+авг
+сеп
+окт
+нов
+дец
+#
+# Long months names
+#
+јануaр
+фебруар
+март
+април
+мај
+јуни
+јули
+август
+септембар
+октобар
+новембар
+децембар
+#
+# Short weekdays names
+#
+нед
+пон
+уто
+сре
+чет
+пет
+суб
+#
+# Long weekdays names
+#
+недеља
+понедељак
+уторак
+среда
+четвртак
+петак
+субота
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+
+#
+# pm
+#
+
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long month names in alternative form
+#
+јануaр
+фебруар
+март
+април
+мај
+јуни
+јули
+август
+септембар
+октобар
+новембар
+децембар
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+
+# EOF
diff --git a/share/timedef/sv_SE.UTF-8.src b/share/timedef/sv_SE.UTF-8.src
new file mode 100644
index 0000000..dac8e3b
--- /dev/null
+++ b/share/timedef/sv_SE.UTF-8.src
@@ -0,0 +1,101 @@
+# $FreeBSD$
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short month names
+#
+Jan
+Feb
+Mar
+Apr
+Maj
+Jun
+Jul
+Aug
+Sep
+Okt
+Nov
+Dec
+#
+# Long month names
+#
+Januari
+Februari
+Mars
+April
+Maj
+Juni
+Juli
+Augusti
+September
+Oktober
+November
+December
+#
+# Short weekday names
+#
+Sön
+Mån
+Tis
+Ons
+Tor
+Fre
+Lör
+#
+# Long weekday names
+#
+Söndag
+Måndag
+Tisdag
+Onsdag
+Torsdag
+Fredag
+Lördag
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+am
+#
+# pm
+#
+pm
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long month names (alternative)
+#
+Januari
+Februari
+Mars
+April
+Maj
+Juni
+Juli
+Augusti
+September
+Oktober
+November
+December
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/tr_TR.UTF-8.src b/share/timedef/tr_TR.UTF-8.src
new file mode 100644
index 0000000..0a1eff9
--- /dev/null
+++ b/share/timedef/tr_TR.UTF-8.src
@@ -0,0 +1,104 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Evren Yurtesen <yurtesen@ispro.net.tr>
+#
+# Short month names
+#
+Oca
+Şub
+Mar
+Nis
+May
+Haz
+Tem
+Ağu
+Eyl
+Eki
+Kas
+Ara
+#
+# Long month names
+#
+Ocak
+Şubat
+Mart
+Nisan
+Mayıs
+Haziran
+Temmuz
+Ağustos
+Eylül
+Ekim
+Kasım
+Aralık
+#
+# Short weekday names
+#
+Paz
+Pts
+Sal
+Çar
+Per
+Cum
+Cts
+#
+# Long weekday names
+#
+Pazar
+Pazartesi
+Salı
+Çarşamba
+Perşembe
+Cuma
+Cumartesi
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d/%m/%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+AM
+#
+# pm
+#
+PM
+#
+# date_fmt
+#
+%e %b %Y %a %Z %X
+#
+# Long months names (alternative)
+#
+Ocak
+Subat
+Mart
+Nisan
+Mayis
+Haziran
+Temmuz
+Agustos
+Eylul
+Ekim
+Kasim
+Aralik
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/uk_UA.UTF-8.src b/share/timedef/uk_UA.UTF-8.src
new file mode 100644
index 0000000..1962c13
--- /dev/null
+++ b/share/timedef/uk_UA.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short months names
+#
+січ
+лют
+бер
+кві
+тра
+чер
+лип
+сер
+вер
+жов
+лис
+гру
+#
+# Long months names
+#
+січня
+лютого
+березня
+квітня
+травня
+червня
+липня
+серпня
+вересня
+жовтня
+листопада
+грудня
+#
+# Short weekdays names
+#
+нд
+пн
+вт
+ср
+чт
+пт
+сб
+#
+# Long weekdays names
+#
+неділя
+понеділок
+вівторок
+середа
+четвер
+п'ятниця
+субота
+#
+# X_fmt
+#
+%H:%M:%S
+#
+# x_fmt
+#
+%d.%m.%Y
+#
+# c_fmt
+#
+%a %e %b %X %Y
+#
+# am
+#
+
+#
+# pm
+#
+
+#
+# date_fmt
+#
+%a %e %b %Y %X %Z
+#
+# Long month names in alternative form
+#
+січень
+лютий
+березень
+квітень
+травень
+червень
+липень
+серпень
+вересень
+жовтень
+листопад
+грудень
+#
+# md_order
+#
+dm
+#
+# ampm_fmt
+#
+
+# EOF
diff --git a/share/timedef/zh_CN.UTF-8.src b/share/timedef/zh_CN.UTF-8.src
new file mode 100644
index 0000000..b1527b2
--- /dev/null
+++ b/share/timedef/zh_CN.UTF-8.src
@@ -0,0 +1,102 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short month names
+#
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+#
+# Long month names
+#
+一月
+二月
+三月
+四月
+五月
+六月
+七月
+八月
+九月
+十月
+十一月
+十二月
+#
+# Short weekday names
+#
+日
+一
+二
+三
+四
+五
+六
+#
+# Long weekday names
+#
+星期日
+星期一
+星期二
+星期三
+星期四
+星期五
+星期六
+#
+# X_fmt
+#
+%H时%M分%S秒
+#
+# x_fmt
+#
+%Y/%m/%d
+#
+# c_fmt
+#
+%a %b/%e %T %Y
+#
+# am
+#
+上午
+#
+# pm
+#
+下午
+#
+# date_fmt
+#
+%Y年%b月%e日 %A %X %Z
+#
+# Long month names (alternative)
+#
+一月
+二月
+三月
+四月
+五月
+六月
+七月
+八月
+九月
+十月
+十一月
+十二月
+#
+# md_order
+#
+md
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
diff --git a/share/timedef/zh_TW.UTF-8.src b/share/timedef/zh_TW.UTF-8.src
new file mode 100644
index 0000000..27b74dd
--- /dev/null
+++ b/share/timedef/zh_TW.UTF-8.src
@@ -0,0 +1,101 @@
+# $FreeBSD$
+#
+# WARNING: spaces may be essential at the end of lines
+# WARNING: empty lines are essential too
+#
+# Short month names
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+#
+# Long month names
+#
+1月
+2月
+3月
+4月
+5月
+6月
+7月
+8月
+9月
+10月
+11月
+12月
+#
+# Short weekday names
+#
+日
+一
+二
+三
+四
+五
+六
+#
+# Long weekday names
+#
+周日
+周一
+周二
+周三
+周四
+周五
+周六
+#
+# X_fmt
+#
+%H時%M分%S秒
+#
+# x_fmt
+#
+%Y/%m/%d
+#
+# c_fmt
+#
+%a %b/%e %T %Y
+#
+# am
+#
+上午
+#
+# pm
+#
+下午
+#
+# date_fmt
+#
+%Y年%b月%e日 %A %X %Z
+#
+# Long month names (alternative)
+#
+1月
+2月
+3月
+4月
+5月
+6月
+7月
+8月
+9月
+10月
+11月
+12月
+#
+# md_order
+#
+md
+#
+# ampm_fmt
+#
+%I:%M:%S %p
+# EOF
OpenPOWER on IntegriCloud